1 #LyX 2.2 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
60 \default_output_format pdf2
62 \bibtex_command default
63 \index_command default
67 \pdf_title "LyX Configuration Manual"
68 \pdf_author "LyX Team"
69 \pdf_subject "LyX-documentation Customization"
70 \pdf_keywords "LyX, documentation, customization"
72 \pdf_bookmarksnumbered true
73 \pdf_bookmarksopen true
74 \pdf_bookmarksopenlevel 1
79 \pdf_pdfusetitle false
80 \pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue,pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false"
83 \use_package amsmath 0
84 \use_package amssymb 0
87 \use_package mathdots 1
88 \use_package mathtools 0
90 \use_package stackrel 0
91 \use_package stmaryrd 0
92 \use_package undertilde 0
94 \cite_engine_type default
98 \paperorientation portrait
102 \notefontcolor #0000ff
114 \paragraph_separation indent
115 \paragraph_indentation default
116 \quotes_language english
119 \paperpagestyle headings
120 \tracking_changes true
121 \output_changes false
125 \author 1414654397 "Richard Heck"
131 Customizing \SpecialChar LyX
132 : Features for the Advanced User
136 by the \SpecialChar LyX
141 \begin_layout Plain Layout
143 If you have comments or error corrections, please send them to the \SpecialChar LyX
146 \begin_inset CommandInset href
148 target "lyx-docs@lists.lyx.org"
155 \begin_inset Quotes eld
159 \begin_inset Quotes erd
162 in the subject header, and please cc the current maintainer of this file,
163 Richard Heck <rgheck@comcast.net>.
169 \begin_inset Newline newline
173 \begin_inset Newline newline
179 \begin_layout Standard
180 \begin_inset CommandInset toc
181 LatexCommand tableofcontents
188 \begin_layout Standard
189 \begin_inset Note Note
192 \begin_layout Plain Layout
193 Please use change tracking when modifying this document.
194 This makes it easier for our translators to recognize things that have
195 been changed, and it helps the maintainer keep up-to-date with what's been
204 \begin_layout Chapter
208 \begin_layout Standard
209 This manual covers the customization features present in \SpecialChar LyX
211 In it, we discuss issues like keyboard shortcuts, screen previewing options,
212 printer options, sending commands to \SpecialChar LyX
213 via the \SpecialChar LyX
214 Server, internationalization,
215 installing new \SpecialChar LaTeX
216 classes and \SpecialChar LyX
218 We can't possibly hope to touch on everything you can change—our developers
219 add new features faster than we can document them—but we will explain the
220 most common customizations and hopefully point you in the right direction
221 for some of the more obscure ones.
224 \begin_layout Standard
225 \begin_inset Branch OutDated
228 \begin_layout Standard
229 Information from previous versions of this document that now seems to be
230 outdated is contained in the OutDated branch of this document.
231 By default, this information will not appear in the \SpecialChar LaTeX
240 \begin_layout Chapter
245 \begin_layout Standard
246 This chapter aims to help you to find your way through the \SpecialChar LyX
249 Before continuing to read this chapter, you should find out where your
251 library and user directories are by using
252 \begin_inset Flex Noun
255 \begin_layout Plain Layout
256 Help\SpecialChar menuseparator
267 The library directory is the place where \SpecialChar LyX
268 places its system-wide configuration
269 files; the user directory is where you can place your modified versions.
270 We will call the former
271 \begin_inset Flex Code
274 \begin_layout Plain Layout
281 \begin_inset Flex Noun
284 \begin_layout Plain Layout
290 in the remainder of this document.
294 \begin_layout Section
296 \begin_inset Flex Code
299 \begin_layout Plain Layout
308 \begin_layout Standard
309 \begin_inset Flex Code
312 \begin_layout Plain Layout
318 and its sub-directories contain a number of files and that can be used
319 to customize \SpecialChar LyX
321 You can change many of these files from within \SpecialChar LyX
323 \begin_inset Flex Noun
326 \begin_layout Plain Layout
327 Tools\SpecialChar menuseparator
334 Most customization that you will want to do in \SpecialChar LyX
335 is possible through this
337 However, many other inner aspects of \SpecialChar LyX
338 can be customized by modifying the
340 \begin_inset Flex Code
343 \begin_layout Plain Layout
350 These files fall in different categories, described in the following subsection
354 \begin_layout Subsection
355 Automatically generated files
358 \begin_layout Standard
359 The files, which are to be found in
360 \begin_inset Flex Noun
363 \begin_layout Plain Layout
369 , are generated when you configure \SpecialChar LyX
371 They contain various default values that are guessed by inspection.
372 In general, it is not a good idea to modify them, since they might be overwritt
376 \begin_layout Labeling
377 \labelwidthstring 00.00.0000
378 \begin_inset Flex Code
381 \begin_layout Plain Layout
387 contains defaults for various commands.
390 \begin_layout Labeling
391 \labelwidthstring 00.00.0000
392 \begin_inset Flex Code
395 \begin_layout Plain Layout
401 contains the list of packages that have been recognized by \SpecialChar LyX
403 It is currently unused by the \SpecialChar LyX
404 program itself, but the information extracted,
405 and more, is made available with
406 \begin_inset Flex Noun
409 \begin_layout Plain Layout
410 Help\SpecialChar menuseparator
424 \begin_layout Labeling
425 \labelwidthstring 00.00.0000
426 \begin_inset Flex Code
429 \begin_layout Plain Layout
435 the list of text classes that have been found in your
436 \begin_inset Flex Code
439 \begin_layout Plain Layout
445 directories, along with the associated \SpecialChar LaTeX
446 document class and their description.
449 \begin_layout Labeling
450 \labelwidthstring 00.00.0000
451 \begin_inset Flex Code
454 \begin_layout Plain Layout
460 the list of layout modules found in your
461 \begin_inset Flex Code
464 \begin_layout Plain Layout
473 \begin_layout Labeling
474 \labelwidthstring 00.00.0000
475 \begin_inset Flex Code
478 \begin_layout Plain Layout
484 lists of various sorts of \SpecialChar LaTeX
485 -related files found on your system
488 \begin_layout Labeling
489 \labelwidthstring 00.00.0000
490 \begin_inset Flex Code
493 \begin_layout Plain Layout
494 doc/\SpecialChar LaTeX
500 is automatically generated during configuration from the file
501 \begin_inset Flex Code
504 \begin_layout Plain Layout
512 It contains information on your \SpecialChar LaTeX
516 \begin_layout Subsection
520 \begin_layout Standard
521 These directories are duplicated between
522 \begin_inset Flex Code
525 \begin_layout Plain Layout
532 \begin_inset Flex Code
535 \begin_layout Plain Layout
542 If a particular files exists in both places, the one in
543 \begin_inset Flex Code
546 \begin_layout Plain Layout
555 \begin_layout Labeling
556 \labelwidthstring 00.00.0000
557 \begin_inset Flex Code
560 \begin_layout Plain Layout
566 this directory contains files with the extension
567 \begin_inset Flex Code
570 \begin_layout Plain Layout
576 that define the keybindings used in \SpecialChar LyX
578 If there exists an internationalized version of the bind file named
579 \begin_inset Flex Code
582 \begin_layout Plain Layout
588 , that will be used first.
591 \begin_layout Labeling
592 \labelwidthstring 00.00.0000
593 \begin_inset Flex Code
596 \begin_layout Plain Layout
602 contains graphics files that can be included in documents.
606 \begin_layout Labeling
607 \labelwidthstring 00.00.0000
608 \begin_inset Flex Code
611 \begin_layout Plain Layout
617 contains \SpecialChar LyX
618 documentation files (including the one you are currently reading).
620 \begin_inset Flex Code
623 \begin_layout Plain Layout
630 deserves special attention, as noted above.
631 The internationalized help docs are in subdirectories
632 \begin_inset Flex Code
635 \begin_layout Plain Layout
642 \begin_inset Quotes eld
646 \begin_inset Quotes erd
649 is the ISO language code.
651 \begin_inset CommandInset ref
653 reference "cha:Internationalizing-LyX"
660 \begin_layout Labeling
661 \labelwidthstring 00.00.0000
662 \begin_inset Flex Code
665 \begin_layout Plain Layout
671 contains example files that explain how to use some features.
672 In the file browser, press the
673 \begin_inset Flex Noun
676 \begin_layout Plain Layout
685 \begin_layout Labeling
686 \labelwidthstring 00.00.0000
687 \begin_inset Flex Code
690 \begin_layout Plain Layout
696 contains image files that are used by the
697 \begin_inset Flex Noun
700 \begin_layout Plain Layout
707 In addition, it also contains the individual icons used in the toolbar
708 and the banners that can be shown when \SpecialChar LyX
712 \begin_layout Labeling
713 \labelwidthstring 00.00.0000
714 \begin_inset Flex Code
717 \begin_layout Plain Layout
723 contains keyboard keymapping files.
725 \begin_inset CommandInset ref
727 reference "sec:International-Keymap-Stuff"
734 \begin_layout Labeling
735 \labelwidthstring 00.00.0000
736 \begin_inset Flex Code
739 \begin_layout Plain Layout
745 contains the text class and module files described in
746 \begin_inset CommandInset ref
748 reference "cha:Installing-New-Document"
755 \begin_layout Labeling
756 \labelwidthstring 00.00.0000
757 \begin_inset Flex Code
760 \begin_layout Plain Layout
767 \begin_inset Flex Code
770 \begin_layout Plain Layout
776 Python scripts used to convert between \SpecialChar LyX
778 These can be run from the command line if, say, you want to batch-convert
782 \begin_layout Labeling
783 \labelwidthstring 00.00.0000
784 \begin_inset Flex Code
787 \begin_layout Plain Layout
793 contains some files that demonstrate the capabilities of the
794 \begin_inset Flex Noun
797 \begin_layout Plain Layout
808 Also contains some scripts used by \SpecialChar LyX
812 \begin_layout Labeling
813 \labelwidthstring 00.00.0000
814 \begin_inset Flex Code
817 \begin_layout Plain Layout
823 contains the standard \SpecialChar LyX
824 template files described in
825 \begin_inset CommandInset ref
827 reference "subsec:Creating-Templates"
834 \begin_layout Labeling
835 \labelwidthstring 00.00.0000
836 \begin_inset Flex Code
839 \begin_layout Plain Layout
845 contains files with the extension
846 \begin_inset Flex Code
849 \begin_layout Plain Layout
855 that define the user interface to \SpecialChar LyX
857 That is, the files define which items appear in which menus and the items
858 appearing on the toolbar.
861 \begin_layout Subsection
862 Files you don't want to modify
865 \begin_layout Standard
866 These files are used internally by \SpecialChar LyX
867 and you generally do not need to modify
868 them unless you are a developer.
871 \begin_layout Labeling
872 \labelwidthstring 00.00.0000
873 \begin_inset Flex Code
876 \begin_layout Plain Layout
882 this file contains the list of \SpecialChar LyX
884 The contents are displayed with the menu entry
885 \begin_inset Flex Noun
888 \begin_layout Plain Layout
889 Help\SpecialChar menuseparator
902 \begin_layout Labeling
903 \labelwidthstring 00.00.0000
904 \begin_inset Flex Code
907 \begin_layout Plain Layout
913 this is a \SpecialChar LaTeX
914 script used during the configuration process.
918 \begin_layout Labeling
919 \labelwidthstring 00.00.0000
920 \begin_inset Flex Code
923 \begin_layout Plain Layout
929 this is a Python script that is used to re-configure \SpecialChar LyX
931 It creates configuration files in the directory it was run from.
934 \begin_layout Subsection
935 Other files needing a line or two
938 \begin_layout Labeling
939 \labelwidthstring 00.00.0000
940 \begin_inset Flex Code
943 \begin_layout Plain Layout
949 this contains tables describing how different character encodings can be
953 \begin_layout Labeling
954 \labelwidthstring 00.00.0000
955 \begin_inset Flex Code
958 \begin_layout Plain Layout
964 this file contains the templates available to the new
965 \begin_inset Flex Noun
968 \begin_layout Plain Layout
979 \begin_inset CommandInset ref
981 reference "chap:Including-External-Material"
988 \begin_layout Labeling
989 \labelwidthstring 00.00.0000
990 \begin_inset Flex Code
993 \begin_layout Plain Layout
999 this file contains a list of all the languages currently supported by \SpecialChar LyX
1003 \begin_layout Labeling
1004 \labelwidthstring 00.00.0000
1005 \begin_inset Flex Code
1008 \begin_layout Plain Layout
1014 contains information about the supported fonts.
1017 \begin_layout Labeling
1018 \labelwidthstring 00.00.0000
1019 \begin_inset Flex Code
1022 \begin_layout Plain Layout
1028 this file contains translations for internationalized paragraph styles
1030 \begin_inset CommandInset ref
1032 reference "subsec:I18n"
1039 \begin_layout Labeling
1040 \labelwidthstring 00.00.0000
1041 \begin_inset Flex Code
1044 \begin_layout Plain Layout
1050 this file contains information about unicode-encoded glyphs and the way
1051 they are supported by \SpecialChar LyX
1052 via \SpecialChar LaTeX
1056 \begin_layout Section
1057 Your local configuration directory
1060 \begin_layout Standard
1061 Even if you are using \SpecialChar LyX
1062 as an unprivileged user, you might want to change
1064 configuration for your own use.
1066 \begin_inset Flex Code
1069 \begin_layout Plain Layout
1075 directory contains all your personal configuration files.
1076 This is the directory described as
1077 \begin_inset Quotes eld
1081 \begin_inset Quotes erd
1085 \begin_inset Flex Noun
1088 \begin_layout Plain Layout
1089 Help\SpecialChar menuseparator
1091 \begin_inset space ~
1100 This directory is used as a mirror of
1101 \begin_inset Flex Code
1104 \begin_layout Plain Layout
1110 , which means that every file in
1111 \begin_inset Flex Code
1114 \begin_layout Plain Layout
1120 is a replacement for the corresponding file in
1121 \begin_inset Flex Code
1124 \begin_layout Plain Layout
1131 Any configuration file described in the above sections can be placed either
1132 in the system-wide directory, in which case it will affect all users, or
1133 in your local directory for your own use.
1136 \begin_layout Standard
1137 To make things clearer, let's provide a few examples:
1140 \begin_layout Itemize
1141 The preferences set in the
1142 \begin_inset Flex Noun
1145 \begin_layout Plain Layout
1146 Tools\SpecialChar menuseparator
1152 dialog are saved to a file
1153 \begin_inset Flex Code
1156 \begin_layout Plain Layout
1163 \begin_inset Flex Code
1166 \begin_layout Plain Layout
1175 \begin_layout Itemize
1176 When you reconfigure using
1177 \begin_inset Flex Noun
1180 \begin_layout Plain Layout
1181 Tools\SpecialChar menuseparator
1189 \begin_inset Flex Code
1192 \begin_layout Plain Layout
1198 script, and the resulting files are written in your local configuration
1200 This means that any additional text class file that you might have added
1202 \begin_inset Flex Code
1205 \begin_layout Plain Layout
1211 will be added to the list of classes in the
1212 \begin_inset Flex Noun
1215 \begin_layout Plain Layout
1216 Document\SpecialChar menuseparator
1225 \begin_layout Itemize
1226 If you get some updated documentation from \SpecialChar LyX
1227 ftp site and cannot install
1228 it because you do not have sysadmin rights on your system, you can just
1230 \begin_inset Flex Code
1233 \begin_layout Plain Layout
1239 and the items in the
1240 \begin_inset Flex Noun
1243 \begin_layout Plain Layout
1249 menu will open them!
1252 \begin_layout Section
1253 Running \SpecialChar LyX
1254 with multiple configurations
1257 \begin_layout Standard
1258 The configuration freedom of the local configuration directory may not suffice
1259 if you want to have more than one configuration at your disposal.
1260 For example, you may want to be use different key bindings or printer settings
1262 You can achieve this by having several such directories.
1263 You then specify which directory to use at run-time.
1266 \begin_layout Standard
1267 Invoking \SpecialChar LyX
1268 with the command line switch
1269 \begin_inset Flex Code
1272 \begin_layout Plain Layout
1282 instructs the program to read the configuration from that directory, and
1283 not from the default directory.
1284 (You can determine the default directory by running \SpecialChar LyX
1286 \begin_inset Flex Code
1289 \begin_layout Plain Layout
1295 switch.) If the specified directory does not exist, \SpecialChar LyX
1297 for you, just like it does for the default directory on the first time
1298 you run the program.
1299 You can modify the configuration options in this additional user directory
1300 exactly as you would for the default directory.
1301 These directories are completely independent (but read on).
1302 Note that setting the environment variable
1303 \begin_inset Flex Code
1306 \begin_layout Plain Layout
1312 to some value has exactly the same effect.
1315 \begin_layout Standard
1316 Having several configurations also requires more maintenance: if you want
1317 to add a new layout to
1318 \begin_inset Flex Code
1321 \begin_layout Plain Layout
1327 which you want available from all your configurations, you must add it
1328 to each directory separately.
1329 You can avoid this with the following trick: after \SpecialChar LyX
1330 creates the additional
1331 directory, most of the subdirectories (see above) are empty.
1332 If you want the new configuration to mirror an existing one, replace the
1333 empty subdirectory with a symbolic link to the matching subdirectory in
1334 the existing configuration.
1336 \begin_inset Flex Code
1339 \begin_layout Plain Layout
1345 subdirectory, however, since it contains a file written by the configuration
1346 script (also accessible through
1347 \begin_inset Flex Noun
1350 \begin_layout Plain Layout
1351 Tools\SpecialChar menuseparator
1357 ) which is configuration-specific.
1360 \begin_layout Chapter
1361 The Preferences dialog
1364 \begin_layout Standard
1365 All options of the preferences dialog are described in the Appendix
1367 The Preferences Dialog
1374 For some options you might find here more details.
1377 \begin_layout Section
1379 \begin_inset CommandInset label
1388 \begin_layout Standard
1389 The first step is to define your file formats if they are not already defined.
1391 \begin_inset Flex Noun
1394 \begin_layout Plain Layout
1395 Tools\SpecialChar menuseparator
1403 \begin_inset Flex Noun
1406 \begin_layout Plain Layout
1407 File Handling\SpecialChar menuseparator
1414 \begin_inset Flex Noun
1417 \begin_layout Plain Layout
1423 button to define your new format.
1425 \begin_inset Flex Noun
1428 \begin_layout Plain Layout
1434 field contains the name used to identify the format in the GUI.
1436 \begin_inset Flex Noun
1439 \begin_layout Plain Layout
1445 is used to identify the format internally.
1446 You will also need to enter a file extension.
1447 These are all required.
1449 \begin_inset Flex Noun
1452 \begin_layout Plain Layout
1458 field is used to provide a keyboard shortcut on the menus.
1459 (For example, pressing
1460 \begin_inset Flex Noun
1463 \begin_layout Plain Layout
1470 \begin_inset Flex Noun
1473 \begin_layout Plain Layout
1474 Document\SpecialChar menuseparator
1475 View (Other Formats)\SpecialChar menuseparator
1484 \begin_layout Standard
1486 \begin_inset Flex Noun
1489 \begin_layout Plain Layout
1496 \begin_inset Flex Noun
1499 \begin_layout Plain Layout
1506 For example, you might want to use
1507 \begin_inset Flex Noun
1510 \begin_layout Plain Layout
1516 to view PostScript files.
1517 You can enter the command needed to start the program in the corresponding
1519 In defining this command, you can use the four variables listed in the
1521 The viewer is launched when you view an image in \SpecialChar LyX
1523 \begin_inset Flex Noun
1526 \begin_layout Plain Layout
1527 Document\SpecialChar menuseparator
1534 The editor is for example launched when you right-click on an image and
1536 \begin_inset Flex Noun
1539 \begin_layout Plain Layout
1545 in the appearing context menu.
1548 \begin_layout Standard
1550 \begin_inset Flex Noun
1553 \begin_layout Plain Layout
1559 type of a format is optional, but if it is specified, it must be unique
1561 It is used to detect files of this format from the file contents.
1562 For some important file formats there is no MIME type officially registered
1564 \begin_inset CommandInset href
1567 target "http://www.iana.org/assignments/media-types/"
1572 Therefore \SpecialChar LyX
1573 uses the extended list of MIME types as specified by
1574 \begin_inset CommandInset href
1576 name "freedesktop.org"
1577 target "http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec"
1584 \begin_layout Standard
1586 \begin_inset Flex Noun
1589 \begin_layout Plain Layout
1595 option tells \SpecialChar LyX
1596 that a format is suitable for document export.
1597 If this is set and if a suitable conversion route exists (see
1598 \begin_inset CommandInset ref
1600 reference "sec:Converters"
1604 ), the format will appear in the
1605 \begin_inset Flex Noun
1608 \begin_layout Plain Layout
1609 File\SpecialChar menuseparator
1616 The format will also appear in the
1617 \begin_inset Flex Noun
1620 \begin_layout Plain Layout
1621 Document\SpecialChar menuseparator
1627 menu if a viewer is specified for the format.
1628 Pure image formats, such as
1629 \begin_inset Flex Code
1632 \begin_layout Plain Layout
1638 , should not use this option.
1639 Formats that can both represent vector graphics and documents like
1640 \begin_inset Flex Code
1643 \begin_layout Plain Layout
1652 \begin_layout Standard
1654 \begin_inset Flex Noun
1657 \begin_layout Plain Layout
1658 Vector graphics format
1663 tells \SpecialChar LyX
1664 that a format can contain vector graphics.
1665 This information is used to determine the target format of included graphics
1667 \begin_inset Flex Noun
1670 \begin_layout Plain Layout
1677 Included graphics may need to be converted to either
1678 \begin_inset Flex Noun
1681 \begin_layout Plain Layout
1688 \begin_inset Flex Noun
1691 \begin_layout Plain Layout
1698 \begin_inset Flex Noun
1701 \begin_layout Plain Layout
1708 \begin_inset Flex Noun
1711 \begin_layout Plain Layout
1717 cannot handle other image formats.
1718 If an included graphic is not already in
1719 \begin_inset Flex Noun
1722 \begin_layout Plain Layout
1729 \begin_inset Flex Noun
1732 \begin_layout Plain Layout
1739 \begin_inset Flex Noun
1742 \begin_layout Plain Layout
1748 format, it is converted to
1749 \begin_inset Flex Noun
1752 \begin_layout Plain Layout
1758 if the vector format option is set, and otherwise to
1759 \begin_inset Flex Noun
1762 \begin_layout Plain Layout
1771 \begin_layout Section
1775 \begin_layout Standard
1776 Since all conversions from one format to another take place in \SpecialChar LyX
1778 directory, it is sometimes necessary to modify a file before copying it
1779 to the temporary directory in order that the conversion may be performed.
1783 \begin_layout Plain Layout
1784 For example, the file may refer to other files—images, for example—using
1785 relative file names, and these may become invalid when the file is copied
1786 to the temporary directory.
1791 This is done by a Copier: It copies a file to (or from) the temporary directory
1792 and may modify it in the process.
1795 \begin_layout Standard
1796 The definitions of the copiers may use eight variables:
1799 \begin_layout Labeling
1800 \labelwidthstring 00.00.0000
1801 \begin_inset Flex Code
1804 \begin_layout Plain Layout
1810 The \SpecialChar LyX
1811 system directory (e.
1812 \begin_inset space \thinspace{}
1816 \begin_inset space \space{}
1820 \begin_inset Flex Noun
1823 \begin_layout Plain Layout
1832 \begin_layout Labeling
1833 \labelwidthstring 00.00.0000
1834 \begin_inset Flex Code
1837 \begin_layout Plain Layout
1846 \begin_layout Labeling
1847 \labelwidthstring 00.00.0000
1848 \begin_inset Flex Code
1851 \begin_layout Plain Layout
1860 \begin_layout Labeling
1861 \labelwidthstring 00.00.0000
1862 \begin_inset Flex Code
1865 \begin_layout Plain Layout
1871 The base name (without filename extension) in the \SpecialChar LyX
1875 \begin_layout Labeling
1876 \labelwidthstring 00.00.0000
1877 \begin_inset Flex Code
1880 \begin_layout Plain Layout
1886 The full directory path of the \SpecialChar LyX
1890 \begin_layout Labeling
1891 \labelwidthstring 00.00.0000
1892 \begin_inset Flex Code
1895 \begin_layout Plain Layout
1901 The full pathname to the original \SpecialChar LyX
1902 file being processed
1905 \begin_layout Labeling
1906 \labelwidthstring 00.00.0000
1907 \begin_inset Flex Code
1910 \begin_layout Plain Layout
1916 The filename (without any directory path) of the \SpecialChar LyX
1920 \begin_layout Labeling
1921 \labelwidthstring 00.00.0000
1922 \begin_inset Flex Code
1925 \begin_layout Plain Layout
1931 The `\SpecialChar LaTeX
1935 \begin_layout Standard
1936 The latter should be the filename as it would be used in a \SpecialChar LaTeX
1944 It is relevant only when exporting files suitable for such inclusion.
1947 \begin_layout Standard
1948 Copiers can be used to do almost anything with output files.
1949 For example, suppose you want generated pdf files to be copied to a special
1951 \begin_inset Flex Code
1954 \begin_layout Plain Layout
1961 Then you could write a shell script such as this one:
1964 \begin_layout Standard
1965 \begin_inset listings
1969 \begin_layout Plain Layout
1974 \begin_layout Plain Layout
1979 \begin_layout Plain Layout
1981 TOFILE=`basename $2`
1984 \begin_layout Plain Layout
1986 cp $FROMFILE /home/you/pdf/$TOFILE
1991 Save it in your local \SpecialChar LyX
1993 \begin_inset Flex Code
1996 \begin_layout Plain Layout
1997 /home/you/.lyx/scripts/pdfcopier.sh
2002 —and make it executable, if you need to do so on your platform.
2004 \begin_inset Flex Noun
2007 \begin_layout Plain Layout
2008 Tools\SpecialChar menuseparator
2014 dialog, select under
2015 \begin_inset Flex Noun
2018 \begin_layout Plain Layout
2019 File Handling\SpecialChar menuseparator
2026 \begin_inset Flex Noun
2029 \begin_layout Plain Layout
2035 format—or one of the other pdf formats—and enter
2036 \begin_inset Flex Code
2039 \begin_layout Plain Layout
2040 pdfcopier.sh $$i $$o
2046 \begin_inset Flex Noun
2049 \begin_layout Plain Layout
2059 \begin_layout Standard
2060 Copiers are used by \SpecialChar LyX
2061 in various of its own conversions.
2062 For example, if appropriate programs are found, \SpecialChar LyX
2063 will automatically install
2065 \begin_inset Flex Noun
2068 \begin_layout Plain Layout
2075 \begin_inset Flex Noun
2078 \begin_layout Plain Layout
2080 \begin_inset space ~
2089 When these formats are exported, the copier sees that not just the main
2090 HTML file but various associated files (style files, images, etc.) are also
2092 All these files are written to a subdirectory of the directory in which
2093 the original \SpecialChar LyX
2098 \begin_layout Plain Layout
2099 This copier can be customized.
2101 \begin_inset Quotes eld
2105 \begin_inset Quotes erd
2108 argument takes a comma-separated list of extensions to be copied; if it
2109 is omitted, all files will be copied.
2111 \begin_inset Quotes eld
2115 \begin_inset Quotes erd
2118 argument determines the extension added to the generated directory.
2120 \begin_inset Quotes eld
2124 \begin_inset Flex Noun
2127 \begin_layout Plain Layout
2134 \begin_inset Quotes erd
2137 , so HTML generated from
2138 \begin_inset Flex Noun
2141 \begin_layout Plain Layout
2142 /path/to/filename.lyx
2148 \begin_inset Flex Noun
2151 \begin_layout Plain Layout
2152 /path/to/filename.html.LyXconv
2166 \begin_layout Section
2168 \begin_inset CommandInset label
2170 name "sec:Converters"
2177 \begin_layout Standard
2178 You can define your own Converters to convert files between different formats.
2180 \begin_inset Flex Noun
2183 \begin_layout Plain Layout
2184 Tools\SpecialChar menuseparator
2185 Preferences\SpecialChar menuseparator
2186 File Handling\SpecialChar menuseparator
2195 \begin_layout Standard
2196 To define a new converter, select the
2197 \begin_inset Flex Noun
2200 \begin_layout Plain Layout
2202 \begin_inset space ~
2211 \begin_inset Flex Noun
2214 \begin_layout Plain Layout
2216 \begin_inset space ~
2224 from the drop-down lists, enter the command needed for the conversion,
2226 \begin_inset Flex Noun
2229 \begin_layout Plain Layout
2236 Several variables can be used in the definition of converters:
2239 \begin_layout Labeling
2240 \labelwidthstring 00.00.0000
2241 \begin_inset Flex Code
2244 \begin_layout Plain Layout
2250 The \SpecialChar LyX
2254 \begin_layout Labeling
2255 \labelwidthstring 00.00.0000
2256 \begin_inset Flex Code
2259 \begin_layout Plain Layout
2268 \begin_layout Labeling
2269 \labelwidthstring 00.00.0000
2270 \begin_inset Flex Code
2273 \begin_layout Plain Layout
2282 \begin_layout Labeling
2283 \labelwidthstring 00.00.0000
2284 \begin_inset Flex Code
2287 \begin_layout Plain Layout
2293 The base filename of the input file (i.
2294 \begin_inset space \thinspace{}
2297 g., without the extension)
2300 \begin_layout Labeling
2301 \labelwidthstring 00.00.0000
2302 \begin_inset Flex Code
2305 \begin_layout Plain Layout
2311 The path to the input file
2314 \begin_layout Labeling
2315 \labelwidthstring 00.00.0000
2316 \begin_inset Flex Code
2319 \begin_layout Plain Layout
2325 The path to the original input file (this is different from $$p when a
2326 chain of converters is called)
2329 \begin_layout Labeling
2330 \labelwidthstring 00.00.0000
2331 \begin_inset Flex Code
2334 \begin_layout Plain Layout
2340 The iconv name for the encoding of the document.
2343 \begin_layout Standard
2345 \begin_inset Flex Noun
2348 \begin_layout Plain Layout
2350 \begin_inset space ~
2358 field you can enter the following flags, separated by commas:
2361 \begin_layout Labeling
2362 \labelwidthstring 00.00.0000
2363 \begin_inset Flex Code
2366 \begin_layout Plain Layout
2372 This converter runs some form of \SpecialChar LaTeX
2374 This will make \SpecialChar LyX
2375 's \SpecialChar LaTeX
2376 error logs available.
2379 \begin_layout Labeling
2380 \labelwidthstring 00.00.0000
2381 \begin_inset Flex Code
2384 \begin_layout Plain Layout
2390 Needs the \SpecialChar LaTeX
2392 \begin_inset Flex Noun
2395 \begin_layout Plain Layout
2401 file for the conversion.
2404 \begin_layout Labeling
2405 \labelwidthstring 00.00.0000
2406 \begin_inset Flex Code
2409 \begin_layout Plain Layout
2416 \begin_inset Quotes eld
2420 \begin_inset Quotes erd
2423 file from the backend, which in practice means a \SpecialChar LaTeX
2424 file like the one we
2425 would export, without
2426 \begin_inset Flex Code
2429 \begin_layout Plain Layout
2438 \begin_layout Labeling
2439 \labelwidthstring 00.00.0000
2440 \begin_inset Flex Code
2443 \begin_layout Plain Layout
2452 \begin_layout Standard
2453 The following three flags are not really flags at all because they take
2455 \begin_inset Flex Noun
2458 \begin_layout Plain Layout
2460 \begin_inset space ~
2464 \begin_inset space ~
2475 \begin_layout Labeling
2476 \labelwidthstring 00.00.0000
2477 \begin_inset Flex Code
2480 \begin_layout Plain Layout
2486 If set, the converter's standard error will be redirected to a file
2487 \begin_inset Flex Code
2490 \begin_layout Plain Layout
2496 , and the script given as argument will be run as:
2497 \begin_inset Flex Code
2500 \begin_layout Plain Layout
2501 script < infile.out > infile.log
2507 The argument may contain
2508 \begin_inset Flex Code
2511 \begin_layout Plain Layout
2520 \begin_layout Labeling
2521 \labelwidthstring 00.00.0000
2522 \begin_inset Flex Code
2525 \begin_layout Plain Layout
2531 The name of the directory in which the converter will dump the generated
2534 will not create this directory, and it does not copy anything into it,
2535 though it will copy this directory to the destination.
2536 The argument may contain
2537 \begin_inset Flex Code
2540 \begin_layout Plain Layout
2546 , which will be replaced by the base name of the input and output files,
2547 respectively, when the directory is copied.
2548 \begin_inset Newline newline
2551 Note that resultdir and usetempdir make no sense together.
2552 The latter will be ignored if the former is given.
2555 \begin_layout Labeling
2556 \labelwidthstring 00.00.0000
2557 \begin_inset Flex Code
2560 \begin_layout Plain Layout
2566 Determines the output file name and may, contain
2567 \begin_inset Flex Code
2570 \begin_layout Plain Layout
2577 Sensible only with resultdir and optional even then; if not given, it defaults
2581 \begin_layout Standard
2582 None of these last three are presently used in any of the converters that
2583 are installed with \SpecialChar LyX
2588 \begin_layout Standard
2589 You do not have to define converters for all formats between which you want
2591 For example, you will note that there is no `\SpecialChar LyX
2592 to PostScript' converter,
2593 but \SpecialChar LyX
2594 will export PostScript.
2595 It does so by first creating a \SpecialChar LaTeX
2596 file (no converter needs to be defined
2597 for this) which is then converted to DVI using the `\SpecialChar LaTeX
2599 and finally converting the resulting DVI file to PostScript.
2601 finds such `chains' of converters automatically, and it will always choose
2602 the shortest possible chain.
2603 You can, though, still define multiple conversion methods between file
2605 For example, the standard \SpecialChar LyX
2606 configuration provides five ways to convert
2611 \begin_layout Enumerate
2613 \begin_inset Flex Noun
2616 \begin_layout Plain Layout
2625 \begin_layout Enumerate
2626 via (DVI and) PostScript, using
2627 \begin_inset Flex Noun
2630 \begin_layout Plain Layout
2639 \begin_layout Enumerate
2641 \begin_inset Flex Noun
2644 \begin_layout Plain Layout
2653 \begin_layout Enumerate
2655 \begin_inset Flex Noun
2658 \begin_layout Plain Layout
2668 \begin_layout Enumerate
2670 \begin_inset Flex Noun
2673 \begin_layout Plain Layout
2683 \begin_layout Standard
2684 To define such alternate chains, you must define multiple target `file formats',
2686 \begin_inset CommandInset ref
2688 reference "sec:Formats"
2693 For example, in the standard configuration, the formats named
2694 \begin_inset Flex Noun
2697 \begin_layout Plain Layout
2704 \begin_inset Flex Noun
2707 \begin_layout Plain Layout
2714 \begin_inset Flex Noun
2717 \begin_layout Plain Layout
2724 \begin_inset Flex Noun
2727 \begin_layout Plain Layout
2734 \begin_inset Flex Noun
2737 \begin_layout Plain Layout
2744 \begin_inset Flex Noun
2747 \begin_layout Plain Layout
2754 \begin_inset Flex Noun
2757 \begin_layout Plain Layout
2764 \begin_inset Flex Noun
2767 \begin_layout Plain Layout
2775 \begin_inset Flex Noun
2778 \begin_layout Plain Layout
2785 \begin_inset Flex Noun
2788 \begin_layout Plain Layout
2795 ) are defined, all of which share the extension
2796 \begin_inset Flex Noun
2799 \begin_layout Plain Layout
2805 , and which correspond to the conversion methods just mentioned.
2808 \begin_layout Chapter
2809 Internationalizing \SpecialChar LyX
2811 \begin_inset CommandInset label
2813 name "cha:Internationalizing-LyX"
2820 \begin_layout Standard
2822 supports using a translated interface.
2823 Last time we checked, \SpecialChar LyX
2824 provided text in thirty languages.
2825 The language of choice is called your
2830 (For further reading on locale settings, see also the documentation for
2831 locale that comes with your operating system.
2832 For Linux, the manual page for
2833 \begin_inset Flex Code
2836 \begin_layout Plain Layout
2842 could be a good place to start).
2845 \begin_layout Standard
2846 Notice that these translations will work, but do contain a few flaws.
2847 In particular, all dialogs have been designed with the English text in
2848 mind, which means that some of the translated text will be too large to
2849 fit within the space allocated.
2850 This is only a display problem and will not cause any harm.
2851 Also, you will find that some of the translations do not define shortcut
2852 keys for everything.
2853 Sometimes, there are simply not enough free letters to do it.
2854 Other times, the translator just hasn't got around to doing it yet.
2855 Our localization team, which you may wish to join,
2859 \begin_layout Plain Layout
2860 If you are a fluent speaker of a language other than English, joining these
2861 teams is a great way to give back to the \SpecialChar LyX
2867 will of course try to fix these shortcomings in future versions of \SpecialChar LyX
2871 \begin_layout Section
2872 Translating \SpecialChar LyX
2876 \begin_layout Subsection
2877 Translating the graphical user interface (text messages).
2880 \begin_layout Standard
2883 \begin_inset Flex Code
2886 \begin_layout Plain Layout
2892 library to handle the internationalization of the interface.
2893 To have \SpecialChar LyX
2894 speak your favorite language in all menus and dialogs, you need
2896 \begin_inset Flex Code
2899 \begin_layout Plain Layout
2905 -file for that language.
2906 When this is available, you'll have to generate a
2907 \begin_inset Flex Code
2910 \begin_layout Plain Layout
2916 -file from it and install the
2917 \begin_inset Flex Code
2920 \begin_layout Plain Layout
2927 The process of doing all of this is explained in the documentation for
2929 \begin_inset Flex Code
2932 \begin_layout Plain Layout
2939 It is possible to do this just for yourself, but if you're going to do
2940 it, you might as well share the results of your labors with the rest of
2941 the \SpecialChar LyX
2943 Send a message to the \SpecialChar LyX
2944 developers' list for more information about how
2948 \begin_layout Standard
2949 In short, this is what you should do (xx denotes the language code):
2952 \begin_layout Itemize
2953 Check out the \SpecialChar LyX
2956 \begin_inset CommandInset href
2958 name "information on the web"
2959 target "http://www.lyx.org/HowToUseGIT"
2966 \begin_layout Itemize
2968 \begin_inset Flex Code
2971 \begin_layout Plain Layout
2977 to the folder of the
2978 \begin_inset Flex Code
2981 \begin_layout Plain Layout
2989 \begin_inset Flex Code
2992 \begin_layout Plain Layout
3000 \begin_inset Flex Code
3003 \begin_layout Plain Layout
3009 doesn't exist anywhere, it can be remade with the console command
3010 \begin_inset Flex Code
3013 \begin_layout Plain Layout
3019 in that directory, or you can use an existing po-file for some other language
3023 \begin_layout Itemize
3025 \begin_inset Flex Code
3028 \begin_layout Plain Layout
3038 \begin_layout Plain Layout
3039 This is just a text file, so it can be edited in any text editor.
3040 But there are also specialized programs that support such editing, such
3045 (for all platforms) or
3054 contains a `mode' for editing
3055 \begin_inset Flex Code
3058 \begin_layout Plain Layout
3065 \begin_inset Flex URL
3068 \begin_layout Plain Layout
3070 https://www.gnu.org/software/gettext/manual/html_node/PO-Mode.html
3082 For some menu- and widget-labels, there are also shortcut keys that should
3084 Those keys are marked after a `|', and should be translated according to
3085 the words and phrases of the language.
3086 You should also fill also out the information at the beginning of the new
3088 \begin_inset Flex Code
3091 \begin_layout Plain Layout
3097 -file with your email-address, etc., so people know where to reach you with
3098 suggestions and entertaining flames.
3101 \begin_layout Standard
3102 If you are just doing this on your own, then:
3105 \begin_layout Itemize
3107 \begin_inset Flex Code
3110 \begin_layout Plain Layout
3117 This can be done with
3118 \begin_inset Flex Code
3121 \begin_layout Plain Layout
3122 msgfmt -o xx.mo < xx.po
3130 \begin_layout Itemize
3132 \begin_inset Flex Code
3135 \begin_layout Plain Layout
3141 -file to your locale-tree, at the correct directory for application messages
3146 xx, and under the name
3147 \begin_inset Flex Code
3150 \begin_layout Plain Layout
3157 \begin_inset space \thinspace{}
3161 \begin_inset space \space{}
3165 \begin_inset Flex Code
3168 \begin_layout Plain Layout
3169 /usr/local/share/locale/xx/LC_MESSAGES/lyx.mo
3179 \begin_layout Standard
3180 As said, however, it would be best if the new
3181 \begin_inset Flex Code
3184 \begin_layout Plain Layout
3190 file could be added to the \SpecialChar LyX
3191 distribution, so others can use it.
3192 Adding it involves making additional changes to \SpecialChar LyX
3194 So send an email to the developers' mailing list if you're interested in
3198 \begin_layout Subsubsection
3202 \begin_layout Standard
3203 Sometimes it turns out that one English message needs to be translated into
3204 different messages in the target language.
3205 One example is the message
3206 \begin_inset Flex Code
3209 \begin_layout Plain Layout
3215 which has the German translation
3223 , depending upon exactly what the English
3224 \begin_inset Quotes eld
3228 \begin_inset Quotes erd
3233 \begin_inset Flex Code
3236 \begin_layout Plain Layout
3242 does not handle such ambiguous translations.
3243 Therefore you have to add some context information to the message: Instead
3245 \begin_inset Flex Code
3248 \begin_layout Plain Layout
3255 \begin_inset Flex Code
3258 \begin_layout Plain Layout
3259 To[[as in 'From format x to format y']]
3265 \begin_inset Flex Code
3268 \begin_layout Plain Layout
3269 To[[as in 'From page x to page y']].
3274 Now the two occurrences of
3275 \begin_inset Flex Code
3278 \begin_layout Plain Layout
3285 \begin_inset Flex Code
3288 \begin_layout Plain Layout
3294 and can be translated correctly to
3305 \begin_layout Standard
3306 Of course the context information needs to be stripped off the original
3307 message when no translation is used.
3308 Therefore you have to put it in double square brackets at the end of the
3309 message (see the example above).
3310 The translation mechanism of \SpecialChar LyX
3311 ensures that everything in double square
3312 brackets at the end of messages is removed before displaying the message.
3315 \begin_layout Subsection
3316 Translating the documentation.
3319 \begin_layout Standard
3320 The online documentation (in the
3321 \begin_inset Flex Noun
3324 \begin_layout Plain Layout
3330 -menu) can (and should!) be translated.
3331 If there are translated versions of the documentation available
3335 \begin_layout Plain Layout
3336 As of March 2008, at least some of the documents have been translated into
3337 fourteen languages, with the Tutorial available in a few more.
3342 and the locale is set accordingly, these will be used automagically by
3346 looks for translated versions as
3347 \begin_inset Flex Code
3350 \begin_layout Plain Layout
3351 LyXDir/doc/xx/DocName.lyx
3357 \begin_inset Flex Code
3360 \begin_layout Plain Layout
3366 is the code for the language currently in use.
3367 If there are no translated documents, the default English versions will
3369 Note that the translated versions must have the same filenames (
3370 \begin_inset Flex Code
3373 \begin_layout Plain Layout
3379 above) as the original.
3380 If you feel up to translating the documentation (an excellent way to proof-read
3381 the original documentation by the way!), there are a few things you should
3385 \begin_layout Itemize
3386 Check out the documentation translation web page at
3387 \begin_inset CommandInset href
3389 name "http://www.lyx.org/Translation"
3390 target "http://www.lyx.org/Translation"
3395 That way, you can find out which (if any) documents have already been translate
3396 d into your language.
3397 You can also find out who (if anyone) is organizing the effort to translate
3398 the documentation into your language.
3399 If no one is organizing the effort, please let us know that you're interested.
3402 \begin_layout Standard
3403 Once you get to actually translating, here's a few hints for you that may
3407 \begin_layout Itemize
3408 Join the documentation team! There is information on how to do that in
3409 \begin_inset Flex Code
3412 \begin_layout Plain Layout
3419 \begin_inset Flex Noun
3422 \begin_layout Plain Layout
3423 Help\SpecialChar menuseparator
3429 ), which by the way is the first document you should translate.
3432 \begin_layout Itemize
3433 Learn the typographic conventions for the language you are translating to.
3434 Typography is an ancient art and over the centuries, a great variety of
3435 conventions have developed throughout different parts of the world.
3436 Also study the professional terminology amongst typographers in your country.
3437 Inventing your own terminology will only confuse the users.
3440 (Warning! Typography is addictive!)
3443 \begin_layout Itemize
3444 Make a copy of the document.
3445 This will be your working copy.
3446 You can use this as your personal translated help-file by placing it in
3448 \begin_inset Flex Code
3451 \begin_layout Plain Layout
3458 \begin_inset Note Greyedout
3461 \begin_layout Plain Layout
3466 For a complex document with external material (images, etc.), if you make
3468 \begin_inset space \thinspace{}
3472 \begin_inset space \space{}
3475 in a temp dir, beware that the links to external material may be broken
3476 when the document is moved to a different place.
3477 The best way is to retrieve the \SpecialChar LyX
3479 \begin_inset Flex URL
3482 \begin_layout Plain Layout
3484 http://www.lyx.org/HowToUseGIT
3489 ) and to edit the doc file in place.
3497 \begin_layout Itemize
3498 Sometimes the original document (from the \SpecialChar LyX
3499 team) will be updated.
3500 Use the source viewer at
3501 \begin_inset CommandInset href
3503 name "http://www.lyx.org/trac/timeline"
3504 target "http://www.lyx.org/trac/timeline"
3508 to see what has been changed.
3509 That way you can easily see which parts of the translated document need
3513 \begin_layout Standard
3514 If you ever find an error in the original document, fix it and notify the
3515 rest of the documentation team of the changes! (You didn't forget to join
3516 the documentation team, did you?)
3519 \begin_layout Standard
3520 \begin_inset Branch OutDated
3523 \begin_layout Section
3524 International Keyboard Support
3527 \begin_layout Standard
3530 [Editor's Note: The following section is by
3538 It needs to be fixed to conform to the new Documentation Style sheet and
3539 to make use of the new v1.0 features.
3540 The whole thing also needs to be merged with the section following it.-jw
3541 It may also be badly out of date.-rh (2008)]
3544 \begin_layout Subsection
3545 Defining Own Keymaps: Keymap File Format
3548 \begin_layout Standard
3549 Let's look at a keyboard definition file a little closer.
3550 It is a plain text file defining
3553 \begin_layout Itemize
3554 key-to-key or key-to-string translations
3557 \begin_layout Itemize
3561 \begin_layout Itemize
3562 dead keys exceptions
3565 \begin_layout Standard
3566 To define key-to-key or key-to-string translation, use this command:
3569 \begin_layout Quotation
3570 \begin_inset Flex Code
3573 \begin_layout Plain Layout
3582 \begin_inset Flex Code
3585 \begin_layout Plain Layout
3594 \begin_layout Standard
3596 \begin_inset Flex Code
3599 \begin_layout Plain Layout
3605 is the key to be translated and
3606 \begin_inset Flex Code
3609 \begin_layout Plain Layout
3615 is the string to be inserted into the document.
3616 To define dead keys, use:
3619 \begin_layout Quotation
3620 \begin_inset Flex Code
3623 \begin_layout Plain Layout
3632 \begin_inset Flex Code
3635 \begin_layout Plain Layout
3644 \begin_layout Standard
3646 \begin_inset Flex Code
3649 \begin_layout Plain Layout
3655 is a keyboard key and
3656 \begin_inset Flex Code
3659 \begin_layout Plain Layout
3666 The following dead keys are supported (shortcut name is in parentheses):
3669 \begin_layout Quotation
3673 \begin_inset space \hfill{}
3679 \begin_layout Quotation
3681 \begin_inset space \hfill{}
3687 \begin_layout Quotation
3689 \begin_inset space \hfill{}
3695 \begin_layout Quotation
3697 \begin_inset space \hfill{}
3703 \begin_layout Quotation
3705 \begin_inset space \hfill{}
3711 \begin_layout Quotation
3713 \begin_inset space \hfill{}
3720 \begin_layout Plain Layout
3732 \begin_layout Quotation
3734 \begin_inset space \hfill{}
3740 \begin_layout Quotation
3742 \begin_inset space \hfill{}
3749 \begin_layout Plain Layout
3761 \begin_layout Quotation
3763 \begin_inset space \hfill{}
3769 \begin_layout Quotation
3771 \begin_inset space \hfill{}
3777 \begin_layout Quotation
3779 \begin_inset space \hfill{}
3786 \begin_layout Plain Layout
3798 \begin_layout Quotation
3800 \begin_inset space \hfill{}
3807 \begin_layout Plain Layout
3819 \begin_layout Quotation
3821 \begin_inset space \hfill{}
3827 \begin_layout Quotation
3828 hungarian umlaut (hug)
3829 \begin_inset space \hfill{}
3835 \begin_layout Quotation
3837 \begin_inset space \hfill{}
3843 \begin_layout Quotation
3845 \begin_inset space \hfill{}
3852 \begin_layout Plain Layout
3864 \begin_layout Standard
3865 Since in many international keyboards there are exceptions to what some
3866 dead keys should do, you can define them using
3869 \begin_layout Quotation
3870 \begin_inset Flex Code
3873 \begin_layout Plain Layout
3881 deadkey key outstring
3884 \begin_layout Standard
3885 For example, on Slovak keyboard, if you enter caron-o, it generates circumflex-o
3889 \begin_layout Quotation
3890 \begin_inset Flex Code
3893 \begin_layout Plain Layout
3906 \begin_layout Standard
3907 to make it work correctly.
3908 Also, you have to define as exceptions dead keys over i and j, to remove
3909 the dot from them before inserting an accent mark.
3910 I will change this when the time comes, but so far I haven't had time.
3913 \begin_layout Standard
3914 Oh, and about characters: backslash is escaped, so to enter it, you'll need
3917 \begin_inset Flex Code
3920 \begin_layout Plain Layout
3926 have different meaning.
3928 \begin_inset Flex Code
3931 \begin_layout Plain Layout
3937 marks comments, quotes start and end \SpecialChar LaTeX
3939 To enter quote, you'll need to use
3940 \begin_inset Flex Code
3943 \begin_layout Plain Layout
3952 \begin_inset Flex Code
3955 \begin_layout Plain Layout
3962 \begin_inset Flex Code
3965 \begin_layout Plain Layout
3976 \begin_layout Standard
3977 If you make a keyboard description file that works for your language, please
3978 mail it to me, so I can include it in the next keymap distribution.
3981 \begin_layout Standard
3982 More keywords will be supported in keymap configuration file in future,
3986 \begin_layout Itemize
3987 \begin_inset Flex Code
3990 \begin_layout Plain Layout
4001 \begin_inset space \hfill{}
4005 \begin_inset Flex Code
4008 \begin_layout Plain Layout
4017 \begin_layout Itemize
4018 \begin_inset Flex Code
4021 \begin_layout Plain Layout
4032 \begin_inset space \hfill{}
4036 \begin_inset Flex Code
4039 \begin_layout Plain Layout
4045 an external keymap translation program
4048 \begin_layout Standard
4049 Also, it should look into
4050 \begin_inset Flex Code
4053 \begin_layout Plain Layout
4059 file for defaults, too (for example, a
4060 \begin_inset Flex Code
4063 \begin_layout Plain Layout
4071 option to include default keyboard).
4079 \begin_layout Section
4080 International Keymap Stuff
4081 \begin_inset CommandInset label
4083 name "sec:International-Keymap-Stuff"
4090 \begin_layout Standard
4091 \begin_inset Note Note
4094 \begin_layout Plain Layout
4095 In doing the revisions on this document in March 2008, I did not look over
4096 this stuff, as I do not understand it.
4097 It would be good if someone else could do so.
4106 \begin_layout Standard
4107 The next two sections describe the
4108 \begin_inset Flex Code
4111 \begin_layout Plain Layout
4120 \begin_inset Flex Code
4123 \begin_layout Plain Layout
4131 file syntax in detail.
4132 These sections should help you design your own key map if the ones provided
4133 do not meet your needs.
4136 \begin_layout Subsection
4140 \begin_layout Standard
4144 \begin_inset Flex Code
4147 \begin_layout Plain Layout
4153 file maps keystrokes to characters or strings.
4154 As the name suggests, it sets a keyboard mapping.
4156 \begin_inset Flex Code
4159 \begin_layout Plain Layout
4170 \begin_inset Flex Code
4173 \begin_layout Plain Layout
4188 \begin_inset Flex Code
4191 \begin_layout Plain Layout
4204 \begin_inset Flex Code
4207 \begin_layout Plain Layout
4216 \begin_inset Flex Code
4219 \begin_layout Plain Layout
4227 are described in this section.
4230 \begin_layout Labeling
4231 \labelwidthstring 00.00.0000
4232 \begin_inset Flex Code
4235 \begin_layout Plain Layout
4243 Map a character to a string
4246 \begin_layout LyX-Code
4261 \begin_layout Standard
4294 the double-quote (")
4311 must be escaped with a preceding backslash (
4322 \begin_layout Standard
4324 \begin_inset Flex Noun
4327 \begin_layout Plain Layout
4335 statement to cause the symbol
4336 \begin_inset Flex Noun
4339 \begin_layout Plain Layout
4347 to be output for the keystroke
4348 \begin_inset Flex Noun
4351 \begin_layout Plain Layout
4362 \begin_layout LyX-Code
4368 \begin_layout Labeling
4369 \labelwidthstring 00.00.0000
4370 \begin_inset Flex Code
4373 \begin_layout Plain Layout
4381 Specify an accent character
4384 \begin_layout LyX-Code
4393 \begin_layout Standard
4394 This will make the cha
4432 This is the dead key
4436 \begin_layout Plain Layout
4443 refers to a key that does not produce a character by itself, but when followed
4444 with another key, produces the desired accent character.
4445 For example, a German characte
4447 r with an umlaut like
4457 can be produced in this manner.
4466 \begin_layout Standard
4479 and then another key not in
4496 followed by the other, not allowed key, as output.
4500 \begin_inset Flex Noun
4503 \begin_layout Plain Layout
4511 cancels a dead key, so if
4522 \begin_inset Flex Noun
4525 \begin_layout Plain Layout
4534 , the cursor will not go one position backwards but will instead cancel
4550 might have had on the next keystroke.
4554 \begin_layout Standard
4555 The following example specifies that the character ' is to be an acute accent,
4556 allowed on the characters a, e, i, o, u, A, E, I, O, and U:
4559 \begin_layout LyX-Code
4562 kmod ' acute aeiouAEIOU
4565 \begin_layout Labeling
4566 \labelwidthstring 00.00.0000
4567 \begin_inset Flex Code
4570 \begin_layout Plain Layout
4576 Specify an exception to the accent character
4579 \begin_layout LyX-Code
4588 \begin_layout Standard
4589 This defines an exce
4630 have been assigned a keystroke with a previous
4633 \begin_inset Flex Code
4636 \begin_layout Plain Layout
4660 must not belong in the
4707 If such a declaration does not exist in
4715 \begin_inset Flex Code
4718 \begin_layout Plain Layout
4752 \begin_inset Flex Code
4755 \begin_layout Plain Layout
4769 \begin_layout Standard
4770 The following command produces causes äi to be produced when you enter acute-i
4774 \begin_layout LyX-Code
4788 \begin_layout Labeling
4789 \labelwidthstring 00.00.0000
4790 \begin_inset Flex Code
4793 \begin_layout Plain Layout
4799 Combine two accent characters
4802 \begin_layout LyX-Code
4808 accent1 accent2 allowed
4811 \begin_layout Standard
4812 This one is getting pretty esoteric.
4813 It allows you to combine the effect
4869 \begin_inset Flex Code
4872 \begin_layout Plain Layout
4900 \begin_layout Standard
4901 Consider this example from the
4902 \begin_inset Flex Code
4905 \begin_layout Plain Layout
4916 \begin_layout LyX-Code
4919 kmod ; acute aeioyvhAEIOYVH
4923 kcomb acute umlaut iyIY
4926 \begin_layout Standard
4927 This allows you to press
4928 \begin_inset Flex Noun
4931 \begin_layout Plain Layout
4939 and get the effect of
4940 \begin_inset Flex Code
4943 \begin_layout Plain Layout
4962 in this case cancels the last dead key, so if you press
4963 \begin_inset Flex Noun
4966 \begin_layout Plain Layout
4975 \begin_inset Flex Code
4978 \begin_layout Plain Layout
4991 \begin_layout Subsection
4995 \begin_layout Standard
4997 \begin_inset Flex Code
5000 \begin_layout Plain Layout
5008 mapping is performed, a
5009 \begin_inset Flex Code
5012 \begin_layout Plain Layout
5022 file maps the strings that the symbols generate to characters in the current
5024 The \SpecialChar LyX
5025 distribution currently includes at least the
5026 \begin_inset Flex Code
5029 \begin_layout Plain Layout
5038 \begin_inset Flex Code
5041 \begin_layout Plain Layout
5052 \begin_layout Standard
5054 \begin_inset Flex Code
5057 \begin_layout Plain Layout
5065 file is a sequence of declarations of the form
5068 \begin_layout LyX-Code
5081 \begin_layout Standard
5082 For example, in order to map
5083 \begin_inset Flex Noun
5086 \begin_layout Plain Layout
5096 to the corresponding character in the iso-8859-1 set (233), the following
5100 \begin_layout LyX-Code
5108 \begin_layout Standard
5110 \begin_inset Flex Code
5113 \begin_layout Plain Layout
5122 \begin_inset Flex Code
5125 \begin_layout Plain Layout
5143 the same character can apply to more than one string.
5145 \begin_inset Flex Code
5148 \begin_layout Plain Layout
5159 \begin_layout LyX-Code
5171 \begin_inset Newline newline
5187 \begin_layout Standard
5189 cannot find a mapping for the string produced by the keystroke or a
5190 deadkey sequence, it will check if it looks like an accented char and try
5191 to draw an accent over the character on screen.
5194 \begin_layout Subsection
5198 \begin_layout Standard
5199 There is a second way to add support for international characters through
5200 so-called dead-keys.
5201 A dead-key works in combination with a letter to produce an accented character.
5202 Here, we'll explain how to create a really simple dead-key to illustrate
5206 \begin_layout Standard
5207 Suppose you happen to need the circumflex character,
5208 \begin_inset Quotes eld
5212 \begin_inset Quotes erd
5217 \begin_inset Flex Noun
5220 \begin_layout Plain Layout
5227 \begin_inset space ~
5231 \begin_inset Flex Noun
5234 \begin_layout Plain Layout
5240 ] to the \SpecialChar LyX
5242 \begin_inset Flex Code
5245 \begin_layout Plain Layout
5252 \begin_inset Flex Code
5255 \begin_layout Plain Layout
5262 Now, whenever you type the
5263 \begin_inset Flex Noun
5266 \begin_layout Plain Layout
5272 -key followed by a letter, that letter will have a circumflex accent on
5274 For example, the sequence
5275 \begin_inset Quotes eld
5279 \begin_inset Flex Noun
5282 \begin_layout Plain Layout
5289 \begin_inset Quotes erd
5292 produces the letter:
5293 \begin_inset Quotes eld
5297 \begin_inset Quotes erd
5301 If you tried to type
5302 \begin_inset Quotes eld
5306 \begin_inset Flex Noun
5309 \begin_layout Plain Layout
5316 \begin_inset Quotes erd
5319 , however, \SpecialChar LyX
5320 will complain with a beep, since a
5321 \begin_inset Quotes eld
5325 \begin_inset Flex Noun
5328 \begin_layout Plain Layout
5335 \begin_inset Quotes erd
5338 never takes a circumflex accent.
5340 \begin_inset Flex Noun
5343 \begin_layout Plain Layout
5349 after a dead-key produces the bare-accent.
5350 Please note this last point! If you bind a key to a dead-key, you'll need
5351 to rebind the character on that key to yet another key.
5353 \begin_inset Flex Noun
5356 \begin_layout Plain Layout
5362 to a cedilla is a bad idea, since you'll only get cedillas instead of commas.
5365 \begin_layout Standard
5366 One common way to bind dead-keys is to use
5367 \begin_inset Flex Noun
5370 \begin_layout Plain Layout
5377 \begin_inset Flex Noun
5380 \begin_layout Plain Layout
5387 \begin_inset Flex Noun
5390 \begin_layout Plain Layout
5396 in combination with an accent, like
5397 \begin_inset Quotes eld
5401 \begin_inset Flex Noun
5404 \begin_layout Plain Layout
5411 \begin_inset Quotes erd
5415 \begin_inset Quotes eld
5419 \begin_inset Flex Noun
5422 \begin_layout Plain Layout
5429 \begin_inset Quotes erd
5433 \begin_inset Quotes eld
5437 \begin_inset Flex Noun
5440 \begin_layout Plain Layout
5447 \begin_inset Quotes erd
5451 Another way involves using
5452 \begin_inset Flex Code
5455 \begin_layout Plain Layout
5462 \begin_inset Flex Code
5465 \begin_layout Plain Layout
5471 to set up the special
5472 \begin_inset Flex Code
5475 \begin_layout Plain Layout
5483 \begin_inset Flex Code
5486 \begin_layout Plain Layout
5492 acts in some ways just like
5493 \begin_inset Flex Noun
5496 \begin_layout Plain Layout
5502 and permits you to bind keys to accented characters.
5503 You can also turn keys into dead-keys by binding them to something like
5505 \begin_inset Flex Code
5508 \begin_layout Plain Layout
5514 and then binding this symbolic key to the corresponding \SpecialChar LyX
5519 \begin_layout Plain Layout
5524 : This is exactly what I do in my
5525 \begin_inset Flex Code
5528 \begin_layout Plain Layout
5535 \begin_inset Flex Code
5538 \begin_layout Plain Layout
5546 \begin_inset Flex Noun
5549 \begin_layout Plain Layout
5551 \begin_inset space ~
5560 \begin_inset Flex Code
5563 \begin_layout Plain Layout
5569 and a bunch of these
5570 \begin_inset Quotes eld
5574 \begin_inset Flex Code
5577 \begin_layout Plain Layout
5584 \begin_inset Quotes erd
5587 symbolic keys bound such things as
5588 \begin_inset Flex Noun
5591 \begin_layout Plain Layout
5593 \begin_inset space ~
5602 \begin_inset Flex Noun
5605 \begin_layout Plain Layout
5607 \begin_inset space ~
5616 This is how I produce my accented characters.
5621 You can make just about anything into the
5622 \begin_inset Flex Code
5625 \begin_layout Plain Layout
5632 \begin_inset Flex Noun
5635 \begin_layout Plain Layout
5641 keys, a spare function key, etc.
5642 As for the \SpecialChar LyX
5643 commands that produce accents, check the entry for
5644 \begin_inset Flex Code
5647 \begin_layout Plain Layout
5658 You'll find the complete list there.
5661 \begin_layout Subsection
5662 Saving your Language Configuration
5665 \begin_layout Standard
5666 You can edit your preferences so that your desired language environment
5667 is automatically configured when \SpecialChar LyX
5669 \begin_inset Flex Noun
5672 \begin_layout Plain Layout
5673 Edit\SpecialChar menuseparator
5682 \begin_layout Chapter
5683 Installing New Document Classes, Layouts, and Templates
5684 \begin_inset CommandInset label
5686 name "cha:Installing-New-Document"
5691 \begin_inset Argument 1
5694 \begin_layout Plain Layout
5695 Installing New Document Classes
5703 \begin_layout Standard
5704 In this chapter, we describe the procedures for creating and installing
5705 new \SpecialChar LyX
5706 layout and template files, as well as offer a refresher on correctly
5707 installing new \SpecialChar LaTeX
5712 \begin_layout Standard
5713 First, let us a say a few words about how one ought to think about the relation
5714 between \SpecialChar LyX
5715 and \SpecialChar LaTeX
5717 The thing to understand is that, in a certain sense, \SpecialChar LyX
5718 doesn't know anything
5719 about \SpecialChar LaTeX
5721 Indeed, from \SpecialChar LyX
5722 's point of view, \SpecialChar LaTeX
5723 is just one of several
5724 \begin_inset Quotes eld
5728 \begin_inset Quotes erd
5731 in which it is capable of producing output.
5732 Other such formats are DocBook, plaintext, and XHTML.
5734 is, of course, a particularly important format, but very little of the
5735 information \SpecialChar LyX
5736 has about \SpecialChar LaTeX
5737 is actually contained in the program itself.
5741 \begin_layout Plain Layout
5742 Some commands are sufficiently complex that they are
5743 \begin_inset Quotes eld
5747 \begin_inset Quotes erd
5750 into \SpecialChar LyX
5752 But the developers generally regard this as a Bad Thing.
5757 Rather, that information, even for the standard classes like
5758 \begin_inset Flex Code
5761 \begin_layout Plain Layout
5767 , is contained in `layout files'.
5768 Similarly, \SpecialChar LyX
5769 itself does not know much about DocBook or XHTML.
5770 What it knows is contained in layout files.
5773 \begin_layout Standard
5774 You can think of the layout file for a given document class as a translation
5775 manual between \SpecialChar LyX
5776 constructs—paragraphs with their corresponding styles,
5777 certain sorts of insets, etc—and the corresponding \SpecialChar LaTeX
5780 Almost everything \SpecialChar LyX
5782 \begin_inset Flex Code
5785 \begin_layout Plain Layout
5791 , for example, is contained in the file
5792 \begin_inset Flex Code
5795 \begin_layout Plain Layout
5801 and in various other files it includes.
5802 For this reason, anyone intending to write layout files should plan to
5803 study the existing files.
5804 A good place to start is with
5805 \begin_inset Flex Code
5808 \begin_layout Plain Layout
5814 , which is included in
5815 \begin_inset Flex Code
5818 \begin_layout Plain Layout
5825 \begin_inset Flex Code
5828 \begin_layout Plain Layout
5834 , and many of the other layout files for document classes.
5835 This file is where sections and the like are defined:
5836 \begin_inset Flex Code
5839 \begin_layout Plain Layout
5845 tells \SpecialChar LyX
5846 how paragraphs that are marked with the Section, Subsection, etc,
5847 styles can be translated into corresponding \SpecialChar LaTeX
5848 , DocBook, and XHTML commands
5851 \begin_inset Flex Code
5854 \begin_layout Plain Layout
5860 file basically just includes several of these
5861 \begin_inset Flex Code
5864 \begin_layout Plain Layout
5873 \begin_layout Standard
5874 Defining the \SpecialChar LyX
5876 correspondence is not the only thing layout files do, though.
5877 Their other job is to define how the \SpecialChar LyX
5878 constructs themselves will appear
5880 The fact that layout files have these two jobs is often a source of confusion,
5881 because they are completely separate.
5882 Telling \SpecialChar LyX
5883 how to translate a certain paragraph style into \SpecialChar LaTeX
5886 how to display it; conversely, telling \SpecialChar LyX
5887 how to display a certain paragraph
5888 style does not tell \SpecialChar LyX
5889 how to translate it into \SpecialChar LaTeX
5890 (let alone tell \SpecialChar LaTeX
5893 So, in general, when you define a new \SpecialChar LyX
5894 construct, you must always do two
5895 quite separate things: (i)
5896 \begin_inset space ~
5899 tell \SpecialChar LyX
5900 how to translate it into \SpecialChar LaTeX
5902 \begin_inset space ~
5905 tell \SpecialChar LyX
5909 \begin_layout Standard
5910 Much the same is true, of course, as regards \SpecialChar LyX
5911 's other backend formats, though
5912 XHTML is in some ways different, because in that case \SpecialChar LyX
5917 able, to some extent, to use information about how it should display a
5918 paragraph on the screen to output information (in the form of CSS) about
5919 how the paragraph should be displayed in a browser.
5920 Even in this case, however, the distinction between what \SpecialChar LyX
5922 and how things are rendered externally remains in force, and the two can
5923 be controlled separately.
5925 \begin_inset CommandInset ref
5927 reference "sec:Tags-for-XHTML"
5934 \begin_layout Section
5935 Installing new \SpecialChar LaTeX
5939 \begin_layout Standard
5940 Some installations may not include a \SpecialChar LaTeX
5941 package or class file that you would
5942 like to use within \SpecialChar LyX
5944 For example, you might need Foil\SpecialChar TeX
5945 , a package for preparing slides for overhead
5947 Modern \SpecialChar LaTeX
5948 distributions like \SpecialChar TeX
5949 Live (2008 or newer) or MiK\SpecialChar TeX
5950 provide a user interface
5951 for installing such packages.
5952 For example, with MiK\SpecialChar TeX
5953 , you start the program
5954 \begin_inset Quotes eld
5958 \begin_inset space ~
5962 \begin_inset Quotes erd
5965 to get a list of available packages.
5966 To install one of them, right click on it or use the corresponding toolbar
5970 \begin_layout Standard
5971 If your \SpecialChar LaTeX
5972 distribution does not provide such a `package manager', or if the
5973 package is not available from your distribution, then follow these steps
5974 to install it manually:
5977 \begin_layout Enumerate
5978 Get the package from
5979 \begin_inset CommandInset href
5982 target "http://www.ctan.org/"
5989 \begin_layout Enumerate
5990 If the package contains a file with the ending
5991 \begin_inset Quotes eld
5995 \begin_inset Flex Code
5998 \begin_layout Plain Layout
6005 \begin_inset Quotes erd
6008 (is the case for Foil\SpecialChar TeX
6009 ) then open a console, change to the folder of this
6010 file and execute the command
6011 \begin_inset Flex Code
6014 \begin_layout Plain Layout
6021 You have now unpacked the package and have all files to install it.
6022 Most \SpecialChar LaTeX
6023 -packages are not packed and you can skip this step.
6026 \begin_layout Enumerate
6027 Now you need to decide if the package should be available for all users
6029 \begin_inset Separator latexpar
6036 \begin_layout Enumerate
6037 On *nix systems (Linux, OSX, etc.), if you want the new package to be available
6038 for all users on your system, then install it in your `local' \SpecialChar TeX
6040 install it in your own `user' \SpecialChar TeX
6042 Where these trees should be created, if they do not already exist, depends
6044 To find this out, look in the file
6045 \begin_inset Flex Code
6048 \begin_layout Plain Layout
6058 \begin_layout Plain Layout
6059 This is usually in the directory
6060 \begin_inset Flex Code
6063 \begin_layout Plain Layout
6069 , though you can execute the command
6070 \begin_inset Flex Code
6073 \begin_layout Plain Layout
6084 The location of the `local' \SpecialChar TeX
6085 tree is defined by the
6086 \begin_inset Flex Code
6089 \begin_layout Plain Layout
6095 variable; this is usually somewhere like
6096 \begin_inset Flex Code
6099 \begin_layout Plain Layout
6100 /usr/local/share/texmf
6105 or /usr/local/texlive/XXXX where XXXX is the year of the installed \SpecialChar TeX
6108 The location of the `user' \SpecialChar TeX
6110 \begin_inset Flex Code
6113 \begin_layout Plain Layout
6120 \begin_inset Flex Code
6123 \begin_layout Plain Layout
6130 \begin_inset Flex Code
6133 \begin_layout Plain Layout
6143 (If these variables are not predefined, you have to define them.) You'll
6144 probably need root permissions to create or modify the `local' tree, but
6145 not for your `user' tree.
6146 \begin_inset Newline newline
6149 In general, it is recommended to install in the user tree because your user
6150 will not be modified or even overwritten when you upgrade your system.
6151 It will typically also be backed up together with everything else when
6152 you backup your home directory (which, of course, you do on a regular basis).
6155 \begin_layout Enumerate
6156 On Windows, if you want the new package to be available for all users on
6157 your system, change to the folder where \SpecialChar LaTeX
6158 is installed and then change to
6160 \begin_inset Flex Code
6163 \begin_layout Plain Layout
6174 (For MiK\SpecialChar TeX
6175 , this would be by default the folder
6176 \begin_inset Flex Code
6179 \begin_layout Plain Layout
6197 \begin_layout Plain Layout
6198 Note that this will be the correct path only on English installations.
6199 On a German one, it would be
6200 \begin_inset Flex Code
6203 \begin_layout Plain Layout
6217 , and similarly for other languages.
6222 Create there a new folder
6223 \begin_inset Flex Code
6226 \begin_layout Plain Layout
6232 and copy all files of the package into it.
6234 \begin_inset Newline newline
6237 If the package should only available for you or you don't have admin permissions
6238 , do the same, but in the local \SpecialChar LaTeX
6241 \begin_inset space \thinspace{}
6244 g., for MiK\SpecialChar TeX
6246 \begin_inset space ~
6249 2.8 under Windows XP, this would be the folder:
6250 \begin_inset Newline newline
6256 \begin_inset Flex Code
6259 \begin_layout Plain Layout
6262 Documents and Settings
6274 \begin_inset Newline newline
6280 \begin_inset Phantom HPhantom
6283 \begin_layout Plain Layout
6294 \begin_inset Flex Code
6297 \begin_layout Plain Layout
6310 \begin_inset Newline newline
6313 On Vista, it would be:
6314 \begin_inset Newline newline
6318 \begin_inset Flex Code
6321 \begin_layout Plain Layout
6347 \begin_layout Enumerate
6348 Now one only need to tell \SpecialChar LaTeX
6349 that there are new files.
6350 This depends on the used \SpecialChar LaTeX
6352 \begin_inset Separator latexpar
6359 \begin_layout Enumerate
6360 For \SpecialChar TeX
6361 Live execute the command
6362 \begin_inset Flex Code
6365 \begin_layout Plain Layout
6372 If you installed the package for all users, then you will probably need
6373 to have root permissions for that.
6376 \begin_layout Enumerate
6377 For MiK\SpecialChar TeX
6378 , if you have installed the package for all users, start the program
6380 \begin_inset Quotes eld
6384 \begin_inset space ~
6388 \begin_inset Quotes erd
6391 and press the button marked
6392 \begin_inset Quotes eld
6396 \begin_inset Quotes erd
6400 Otherwise start the program
6401 \begin_inset Quotes eld
6405 \begin_inset Quotes erd
6412 \begin_layout Enumerate
6413 Finally, you need to tell \SpecialChar LyX
6414 that there are new packages available.
6415 So, in \SpecialChar LyX
6417 \begin_inset Flex Noun
6420 \begin_layout Plain Layout
6423 \SpecialChar menuseparator
6429 and then restart \SpecialChar LyX
6433 \begin_layout Standard
6434 Now the package is installed.
6435 In our example, the document class
6436 \begin_inset Flex Code
6439 \begin_layout Plain Layout
6441 \begin_inset space ~
6449 will now be available under
6450 \begin_inset Flex Noun
6453 \begin_layout Plain Layout
6454 Document\SpecialChar menuseparator
6455 Settings\SpecialChar menuseparator
6465 \begin_layout Standard
6466 If you would like to use a \SpecialChar LaTeX
6467 document class that is not even listed in the
6469 \begin_inset Flex Noun
6472 \begin_layout Plain Layout
6473 Document\SpecialChar menuseparator
6474 Settings\SpecialChar menuseparator
6480 , then you need to create a `layout' file for it.
6481 That is the topic of the next section.
6484 \begin_layout Section
6485 Types of layout files
6488 \begin_layout Standard
6489 This section describes the various sorts of \SpecialChar LyX
6490 files that contain layout informati
6492 These files describe various paragraph and character styles, determining
6493 how \SpecialChar LyX
6494 should display them and how they should be translated into \SpecialChar LaTeX
6496 XHTML, or whatever output format is being used.
6500 \begin_layout Standard
6501 We shall try to provide a thorough description of the process of writing
6503 However, there are so many different types of documents supported even
6504 by just \SpecialChar LaTeX
6505 that we can't hope to cover every different possibility or problem
6506 you might encounter.
6507 The \SpecialChar LyX
6508 users' list is frequented by people with lots of experience with layout
6509 design who are willing to share what they've learned, so please feel free
6510 to ask questions there.
6513 \begin_layout Standard
6514 As you prepare to write a new layout, it is extremely helpful to look at
6515 the layouts distributed with \SpecialChar LyX
6517 If you write a \SpecialChar LyX
6518 layout for a \SpecialChar LaTeX
6519 document class that might also be used by
6520 others, or write a module that might be useful to others, then you should
6521 consider posting your layout to the
6522 \begin_inset CommandInset href
6524 name "layout section on the LyX wiki"
6525 target "http://wiki.lyx.org/Layouts/Layouts"
6529 or even to the \SpecialChar LyX
6530 developers' list, so that it might be included in \SpecialChar LyX
6535 \begin_layout Plain Layout
6536 Note that \SpecialChar LyX
6537 is licensed under the General Public License, so any material
6538 that is contributed to \SpecialChar LyX
6539 must be similarly licensed.
6547 \begin_layout Subsection
6549 \begin_inset CommandInset label
6551 name "subsec:Layout-modules"
6558 \begin_layout Standard
6559 We have spoken to this point about `layout files'.
6560 But there are different sorts of files that contain layout information.
6561 Layout files, strictly so called, have the
6562 \begin_inset Flex Code
6565 \begin_layout Plain Layout
6571 extension and provide \SpecialChar LyX
6572 with information about document classes.
6573 Since \SpecialChar LyX
6574 1.6 layout information can also be contained in layout
6579 \begin_inset Flex Code
6582 \begin_layout Plain Layout
6589 Modules are to \SpecialChar LaTeX
6590 packages much as layouts are to \SpecialChar LaTeX
6591 classes, and some modules—such
6593 \begin_inset Flex Code
6596 \begin_layout Plain Layout
6602 module—specifically provide support for one package.
6603 In a sense, layout modules are similar to included
6607 \begin_layout Plain Layout
6608 These can have any extension, but by convention have the
6609 \begin_inset Flex Code
6612 \begin_layout Plain Layout
6624 \begin_inset Flex Code
6627 \begin_layout Plain Layout
6633 —in that modules are not specific to a given document class but may be used
6634 with many different classes.
6635 The difference is that using an included file with
6636 \begin_inset Flex Code
6639 \begin_layout Plain Layout
6645 requires editing that file.
6646 Modules, by contrast, are selected in the
6647 \begin_inset Flex Noun
6650 \begin_layout Plain Layout
6651 Document\SpecialChar menuseparator
6660 \begin_layout Standard
6661 Building modules is the easiest way to get started with layout editing,
6662 since it can be as simple as adding a single new paragraph style or flex
6664 But modules may, in principle, contain anything a layout file can contain.
6667 \begin_layout Standard
6668 After creating a new module and copying it to the
6669 \begin_inset Flex Code
6672 \begin_layout Plain Layout
6678 folder, you will need to reconfigure and then restart \SpecialChar LyX
6681 However, changes you make to the module will be seen immediately, if you
6683 \begin_inset Flex Noun
6686 \begin_layout Plain Layout
6687 Document\SpecialChar menuseparator
6693 , highlight something, and then hit
6694 \begin_inset Quotes eld
6698 \begin_inset Quotes erd
6704 It is strongly recommended that you save your work before doing this
6709 it is strongly recommended that you not attempt to edit modules while simultaneo
6710 usly working on actual documents
6713 Though of course the developers strive to keep \SpecialChar LyX
6714 stable in such situations,
6715 syntax errors and the like in your module file could cause strange behavior.
6718 \begin_layout Subsubsection
6722 \begin_layout Standard
6723 Modules are to \SpecialChar LyX
6724 as packages are to \SpecialChar LaTeX
6726 Sometimes, however, you find yourself wanting a specific inset or character
6727 style just for one document and writing a module that will also be available
6728 to other documents makes little sense.
6729 What you need is \SpecialChar LyX
6731 \begin_inset Quotes eld
6735 \begin_inset Quotes erd
6741 \begin_layout Standard
6742 You will find it under
6744 Document\SpecialChar menuseparator
6745 Settings\SpecialChar menuseparator
6749 The large text box allows you to enter anything that you might enter in
6750 a layout file or module.
6751 You can think of a document's local layout, in fact, as a module that belongs
6753 So, in particular, you must enter a
6754 \begin_inset Flex Code
6757 \begin_layout Plain Layout
6764 Any format is acceptable, but one would normally use the format current
6766 (In \SpecialChar LyX
6767 2.1, the current layout format is 48.) You should be aware that local
6768 layout is not supported by versions of \SpecialChar LyX
6769 prior to 1.6, so you should not
6770 use it if you want to be able to export your document to \SpecialChar LyX
6772 (without, that is, losing the local layout information).
6773 If you wish to be able to export to 1.6—local layout is supported in 1.6,
6774 though there is no UI for it—then you should use format 11 and, of course,
6775 use only layout constructs that were available in \SpecialChar LyX
6779 \begin_layout Standard
6780 When you have entered something in the
6781 \begin_inset Flex Code
6784 \begin_layout Plain Layout
6790 pane, \SpecialChar LyX
6792 \begin_inset Quotes eld
6796 \begin_inset Quotes erd
6799 button at the bottom.
6800 Clicking this button will cause \SpecialChar LyX
6801 to determine whether what you have entered
6802 is valid layout information for the chosen format.
6804 will report the result but, unfortunately, will not tell you what errors
6805 there might have been.
6806 These will be written to the terminal, however, if \SpecialChar LyX
6807 is started from a terminal.
6808 You will not be permitted to save your local layout until you have entered
6812 \begin_layout Standard
6813 The warnings at the end of the previous section apply here, too.
6814 Do not play with local layout while you are actually working, especially
6815 if you have not saved your document.
6816 That said, using local layout with a test document can be a very convenient
6817 way to try out layout ideas, or even to start developing a module.
6820 \begin_layout Subsection
6822 \begin_inset Flex Noun
6825 \begin_layout Plain Layout
6834 \begin_layout Standard
6835 There are two situations you are likely to encounter when wanting to support
6836 a new \SpecialChar LaTeX
6837 document class, involving style (
6838 \begin_inset Flex Code
6841 \begin_layout Plain Layout
6847 ) files and \SpecialChar LaTeX2e
6849 \begin_inset Flex Code
6852 \begin_layout Plain Layout
6859 Supporting a style file is usually fairly easy.
6860 Supporting a new class file is a bit harder.
6861 We'll discuss the former in this section and the latter in the next.
6862 Similar remarks apply, of course, if you want to support a new DocBook
6866 \begin_layout Standard
6867 The easier case is the one in which your new document class is provided
6868 as a style file that is to be used in conjunction with an already supported
6870 For the sake of the example, we'll assume that the style file is called
6872 \begin_inset Flex Noun
6875 \begin_layout Plain Layout
6881 and that it is meant to be used with
6882 \begin_inset Flex Noun
6885 \begin_layout Plain Layout
6891 , which is a standard class.
6895 \begin_layout Standard
6896 Start by copying the existing class's layout file into your local directory:
6900 \begin_layout Plain Layout
6901 Of course, which directory is your local directory will vary by platform,
6902 and \SpecialChar LyX
6903 allows you to specify your local directory on startup, too, using
6905 \begin_inset Flex Code
6908 \begin_layout Plain Layout
6922 \begin_layout LyX-Code
6923 cp report.layout ~/.lyx/layouts/myclass.layout
6926 \begin_layout Standard
6928 \begin_inset Flex Code
6931 \begin_layout Plain Layout
6937 and change the line:
6940 \begin_layout LyX-Code
6943 Declare\SpecialChar LaTeX
6947 \begin_layout Standard
6951 \begin_layout LyX-Code
6954 Declare\SpecialChar LaTeX
6955 Class[report, myclass.sty]{report (myclass)}
6958 \begin_layout Standard
6962 \begin_layout LyX-Code
6964 \begin_inset Newline newline
6970 \begin_inset Newline newline
6976 \begin_layout Standard
6977 near the top of the file.
6980 \begin_layout Standard
6981 Start \SpecialChar LyX
6983 \begin_inset Flex Noun
6986 \begin_layout Plain Layout
6987 Tools\SpecialChar menuseparator
6994 Then restart \SpecialChar LyX
6995 and try creating a new document.
6997 \begin_inset Flex Noun
7000 \begin_layout Plain Layout
7006 " as a document class option in the
7007 \begin_inset Flex Noun
7010 \begin_layout Plain Layout
7011 Document\SpecialChar menuseparator
7018 It is likely that some of the sectioning commands and such in your new
7019 class will work differently from how they worked in the base class—
7020 \begin_inset Flex Code
7023 \begin_layout Plain Layout
7029 in this example—so you can fiddle around with the settings for the different
7030 sections if you wish.
7031 The layout information for sections is contained in
7032 \begin_inset Flex Code
7035 \begin_layout Plain Layout
7041 , but you do not need to copy and change this file.
7042 Instead, you can simply add your changes to your layout file, after the
7044 \begin_inset Flex Code
7047 \begin_layout Plain Layout
7053 , which itself includes
7054 \begin_inset Flex Code
7057 \begin_layout Plain Layout
7064 For example, you might add these lines:
7067 \begin_layout LyX-Code
7071 \begin_layout LyX-Code
7075 \begin_layout LyX-Code
7079 \begin_layout LyX-Code
7083 \begin_layout LyX-Code
7087 \begin_layout Standard
7088 to change the font for chapter headings to sans-serif.
7089 This will override (or, in this case, add to) the existing declaration
7090 for the Chapter style.
7094 \begin_layout Standard
7095 Your new package may also provide commands or environments not present in
7097 In this case, you will want to add these to the layout file.
7099 \begin_inset CommandInset ref
7101 reference "sec:TextClass"
7105 for information on how to do so.
7108 \begin_layout Standard
7110 \begin_inset Flex Noun
7113 \begin_layout Plain Layout
7119 can be used with several different document classes, and even if it cannot,
7120 you might find it easiest just to write a module that you can load with
7122 The simplest possible such module would be:
7125 \begin_layout LyX-Code
7128 DeclareLyXModule{My Package}
7131 \begin_layout LyX-Code
7135 \begin_layout LyX-Code
7136 #Support for mypkg.sty.
7139 \begin_layout LyX-Code
7141 \begin_inset Newline newline
7147 \begin_layout LyX-Code
7149 \begin_inset Newline newline
7155 \begin_layout LyX-Code
7157 \begin_inset Newline newline
7163 \begin_inset Newline newline
7169 \begin_layout Standard
7170 A more complex module might modify the behavior of some existing constructs
7171 or define some new ones.
7173 \begin_inset CommandInset ref
7175 reference "sec:TextClass"
7182 \begin_layout Subsection
7184 \begin_inset Flex Noun
7187 \begin_layout Plain Layout
7196 \begin_layout Standard
7197 There are two possibilities here.
7198 One is that the class file is itself based upon an existing document class.
7199 For example, many thesis classes are based upon
7200 \begin_inset Flex Noun
7203 \begin_layout Plain Layout
7210 To see whether yours is, look for a line like
7213 \begin_layout LyX-Code
7219 \begin_layout Standard
7221 If so, then you may proceed largely as in the previous section, though
7223 \begin_inset Flex Code
7226 \begin_layout Plain Layout
7227 Declare\SpecialChar LaTeX
7233 line will be different.
7234 If your new class is
7235 \begin_inset Flex Code
7238 \begin_layout Plain Layout
7244 and it is based upon
7245 \begin_inset Flex Code
7248 \begin_layout Plain Layout
7254 , then the line should read:
7258 \begin_layout Plain Layout
7259 And it will be easiest if you save the file to
7260 \begin_inset Flex Code
7263 \begin_layout Plain Layout
7270 assumes that the document class has the same name as the layout file.
7279 \begin_layout LyX-Code
7282 Declare\SpecialChar LaTeX
7283 Class[thesis,book]{thesis}
7286 \begin_layout Standard
7287 If, on the other hand, the new class is not based upon an existing class,
7288 you will probably have to
7289 \begin_inset Quotes eld
7293 \begin_inset Quotes erd
7297 We strongly suggest copying an existing layout file which uses a similar
7299 class and then modifying it, if you can do so.
7300 At least use an existing file as a starting point so you can find out what
7301 items you need to worry about.
7302 Again, the specifics are covered below.
7305 \begin_layout Subsection
7307 \begin_inset CommandInset label
7309 name "subsec:Creating-Templates"
7316 \begin_layout Standard
7317 Once you have written a layout file for a new document class, you might
7318 want to consider writing a
7323 A template acts as a kind of tutorial for your layout, showing how it might
7324 be used, though containing dummy content.
7325 You can of course look at the various templates included with \SpecialChar LyX
7329 \begin_layout Standard
7330 Templates are created just like usual documents: using \SpecialChar LyX
7332 The only difference is that usual documents contain all possible settings,
7333 including the font scheme and the paper size.
7334 Usually a user doesn't want a template to overwrite his preferred settings
7335 for such parameters.
7336 For that reason, the designer of a template should remove the corresponding
7338 \begin_inset Flex Code
7341 \begin_layout Plain Layout
7350 \begin_inset Flex Code
7353 \begin_layout Plain Layout
7361 from the template \SpecialChar LyX
7363 This can be done with any simple text-editor, for example
7364 \begin_inset Flex Code
7367 \begin_layout Plain Layout
7374 \begin_inset Flex Code
7377 \begin_layout Plain Layout
7386 \begin_layout Standard
7387 Put the edited template files you create in
7388 \begin_inset Flex Code
7391 \begin_layout Plain Layout
7397 , copy the ones you use from the global template directory in
7398 \begin_inset Flex Code
7401 \begin_layout Plain Layout
7407 to the same place, and redefine the template path in the
7408 \begin_inset Flex Noun
7411 \begin_layout Plain Layout
7412 Tools\SpecialChar menuseparator
7413 Preferences\SpecialChar menuseparator
7422 \begin_layout Standard
7423 Note, by the way, that there is a template which has a particular meaning:
7425 \begin_inset Flex Code
7428 \begin_layout Plain Layout
7435 This template is loaded every time you create a new document with
7436 \begin_inset Flex Noun
7439 \begin_layout Plain Layout
7440 File\SpecialChar menuseparator
7446 in order to provide useful defaults.
7447 To create this template from inside \SpecialChar LyX
7448 , all you have to do is to open a document
7449 with the correct settings, and use the
7450 \begin_inset Flex Noun
7453 \begin_layout Plain Layout
7454 Save as Document Defaults
7462 \begin_layout Subsection
7463 Upgrading old layout files
7466 \begin_layout Standard
7467 The format of layout files changes with each \SpecialChar LyX
7468 release, so old layout files
7469 need to be converted to the new format.
7471 reads a layout file in an older format, it automatically calls the
7473 \begin_inset Flex Code
7476 \begin_layout Plain Layout
7482 to convert it to a temporary file in current format.
7483 The original file is left untouched.
7484 If you use the layout file often, then, you may want to convert it permanently,
7485 so that \SpecialChar LyX
7486 does not have to do so itself every time.
7487 To do this, you can call the converter manually:
7490 \begin_layout Enumerate
7492 \begin_inset Flex Code
7495 \begin_layout Plain Layout
7502 \begin_inset Flex Code
7505 \begin_layout Plain Layout
7514 \begin_layout Enumerate
7516 \begin_inset Newline newline
7520 \begin_inset Flex Code
7523 \begin_layout Plain Layout
7524 python LyXDir/scripts/layout2layout.py myclass.old myclass.layout
7530 \begin_inset Newline newline
7534 \begin_inset Flex Code
7537 \begin_layout Plain Layout
7543 is the name of your \SpecialChar LyX
7547 \begin_layout Standard
7548 Note that manual conversion does not affect included files, so these will
7549 have to be converted separately.
7552 \begin_layout Section
7553 \begin_inset CommandInset label
7555 name "sec:TextClass"
7559 The layout file format
7562 \begin_layout Standard
7563 The following sections describe how layout files are structured and written.
7564 Our advice is to go slowly, save and test often.
7565 It is really not that hard, except that the multitude of options can become
7566 overwhelming, especially if you try to check out too many at once.
7567 It becomes easier if you use existing layouts of \SpecialChar LyX
7568 as examples/reference
7569 or if you modify an existing layout to your needs.
7572 \begin_layout Standard
7573 Note that all the tags used in layout files are case-insensitive.
7575 \begin_inset Flex Code
7578 \begin_layout Plain Layout
7585 \begin_inset Flex Code
7588 \begin_layout Plain Layout
7595 \begin_inset Flex Code
7598 \begin_layout Plain Layout
7604 are really the same tag.
7605 The possible arguments are printed in brackets after the tag's name.
7606 The default argument is typeset
7607 \begin_inset Flex Code
7610 \begin_layout Plain Layout
7619 If the argument has a data type like
7620 \begin_inset Quotes eld
7624 \begin_inset Quotes erd
7628 \begin_inset Quotes eld
7632 \begin_inset Quotes erd
7635 , the default is shown like this:
7636 \begin_inset Flex Code
7639 \begin_layout Plain Layout
7650 \begin_layout Subsection
7651 The document class declaration and classification
7654 \begin_layout Standard
7655 Lines in a layout file which begin with
7656 \begin_inset Flex Code
7659 \begin_layout Plain Layout
7666 There is one exception to this rule.
7668 \begin_inset Flex Code
7671 \begin_layout Plain Layout
7677 files should begin with lines like:
7680 \begin_layout LyX-Code
7683 #% Do not delete the line below; configure depends on this
7686 \begin_layout LyX-Code
7691 DeclareLaTeXClass{Article (Standard Class)}
7694 \begin_layout LyX-Code
7699 DeclareCategory{Articles}
7702 \begin_layout Standard
7703 The second and third lines are used when you (re)configure \SpecialChar LyX
7705 The layout file is read by the \SpecialChar LaTeX
7707 \begin_inset Flex Code
7710 \begin_layout Plain Layout
7716 , in a special mode where
7717 \begin_inset Flex Code
7720 \begin_layout Plain Layout
7727 The first line is just a \SpecialChar LaTeX
7728 comment, the second one contains the mandatory
7729 declaration of the text class and the third line contains the optional
7730 classification of the class.
7731 If these lines appear in a file named
7732 \begin_inset Flex Code
7735 \begin_layout Plain Layout
7741 , then they define a text class of name
7742 \begin_inset Flex Code
7745 \begin_layout Plain Layout
7751 (the name of the layout file) which uses the \SpecialChar LaTeX
7753 \begin_inset Flex Code
7756 \begin_layout Plain Layout
7762 (the default is to use the same name as the layout).
7764 \begin_inset Quotes eld
7767 Article (Standard Class)
7768 \begin_inset Quotes erd
7771 that appears above is used as a description of the text class in the
7772 \begin_inset Flex Noun
7775 \begin_layout Plain Layout
7776 Document\SpecialChar menuseparator
7784 \begin_inset Quotes eld
7788 \begin_inset Quotes erd
7791 in the example) is also used in the
7792 \begin_inset Flex Noun
7795 \begin_layout Plain Layout
7796 Document\SpecialChar menuseparator
7802 dialog: the text classes are grouped by these categories (which are usually
7803 genres, so typical categories are
7804 \begin_inset Quotes eld
7808 \begin_inset Quotes erd
7812 \begin_inset Quotes eld
7816 \begin_inset Quotes erd
7820 \begin_inset Quotes eld
7824 \begin_inset Quotes erd
7828 \begin_inset Quotes eld
7832 \begin_inset Quotes erd
7836 \begin_inset Quotes eld
7840 \begin_inset Quotes erd
7844 \begin_inset Quotes eld
7848 \begin_inset Quotes erd
7852 If no category has been declared, the class will be put in the
7853 \begin_inset Quotes eld
7857 \begin_inset Quotes erd
7863 \begin_layout Standard
7864 Let's assume that you wrote your own text class that uses the
7865 \begin_inset Flex Code
7868 \begin_layout Plain Layout
7874 document class, but where you changed the appearance of the section headings.
7875 If you put it in a file
7876 \begin_inset Flex Code
7879 \begin_layout Plain Layout
7885 , the header of this file should be:
7888 \begin_layout LyX-Code
7891 #% Do not delete the line below; configure depends on this
7894 \begin_layout LyX-Code
7899 DeclareLaTeXClass[article]{Article (with My Own Headings)}
7902 \begin_layout LyX-Code
7907 DeclareCategory{Articles}
7910 \begin_layout Standard
7911 This declares a text class
7912 \begin_inset Flex Code
7915 \begin_layout Plain Layout
7921 , associated with the \SpecialChar LaTeX
7923 \begin_inset Flex Code
7926 \begin_layout Plain Layout
7933 \begin_inset Quotes eld
7936 Article (with My Own Headings)
7937 \begin_inset Quotes erd
7941 If your text class depends on several packages, you can declare it as:
7944 \begin_layout LyX-Code
7947 #% Do not delete the line below; configure depends on this
7950 \begin_layout LyX-Code
7955 DeclareLaTeXClass[article,foo.sty]{Article (with My Own Headings)}
7958 \begin_layout LyX-Code
7963 DeclareCategory{Articles}
7966 \begin_layout Standard
7967 This indicates that your text class uses the
7968 \begin_inset Flex Code
7971 \begin_layout Plain Layout
7978 Finally, it is also possible to declare classes for DocBook code.
7979 Typical declarations will look like:
7982 \begin_layout LyX-Code
7985 #% Do not delete the line below; configure depends on this
7988 \begin_layout LyX-Code
7993 DeclareDocBookClass[article]{SGML (DocBook Article)}
7996 \begin_layout LyX-Code
8001 DeclareCategory{Articles (DocBook)}
8004 \begin_layout Standard
8005 Note that these declarations can also be given an optional parameter declaring
8006 the name of the document class (but not a list).
8009 \begin_layout Standard
8010 So, to be as explicit as possible, the form of the layout declaration is:
8013 \begin_layout LyX-Code
8018 DeclareLaTeXClass[class,package.sty]{layout description}
8021 \begin_layout LyX-Code
8026 DeclareCategory{category}
8029 \begin_layout Standard
8030 The class need only be specified if the name of the \SpecialChar LaTeX
8032 name of the layout file are different or if there are packages to load.
8033 If the name of the class file is not specified, then \SpecialChar LyX
8035 that it is the same as the name of the layout file.
8038 \begin_layout Standard
8039 When the text class has been modified to your taste, all you have to do
8040 is to copy it either to
8041 \begin_inset Flex Code
8044 \begin_layout Plain Layout
8051 \begin_inset Flex Code
8054 \begin_layout Plain Layout
8061 \begin_inset Flex Noun
8064 \begin_layout Plain Layout
8065 Tools\SpecialChar menuseparator
8071 , exit \SpecialChar LyX
8073 Then your new text class should be available along with the others.
8076 \begin_layout Standard
8077 Once the layout file is installed, you can edit it and see your changes
8078 without having to reconfigure or to restart \SpecialChar LyX
8084 \begin_layout Plain Layout
8085 In versions of \SpecialChar LyX
8086 prior to 1.6, this was not true.
8087 As a result, editing layout files was very time consuming, since you had
8088 constantly to restart \SpecialChar LyX
8094 You can force a reload of the current layout by using the \SpecialChar LyX
8096 \begin_inset Flex Noun
8099 \begin_layout Plain Layout
8106 There is no default binding for this function—though, of course, you can
8107 bind it to a key yourself.
8108 But you will normally use this function simply by entering it in the mini-buffe
8113 \begin_layout Standard
8119 \begin_inset Flex Noun
8122 \begin_layout Plain Layout
8128 is very much an `advanced feature'.
8133 recommended that you save your work before using this function.
8138 recommended that you not attempt to edit layout information while simultaneousl
8139 y working on a document that you care about.
8140 Use a test document.
8141 Syntax errors and the like in your layout file could cause peculiar behavior.
8142 In particular, such errors could cause \SpecialChar LyX
8143 to regard the current layout as
8144 invalid and to attempt to switch to some other layout.
8148 \begin_layout Plain Layout
8149 Really bad syntax errors may even caused \SpecialChar LyX
8151 This is because certain sorts of errors may make \SpecialChar LyX
8162 The \SpecialChar LyX
8163 team strives to keep \SpecialChar LyX
8164 stable in such situations, but safe is better
8169 \begin_layout Plain Layout
8170 While we're giving advice: make regular backups.
8171 And be nice to your mother.
8179 \begin_layout Subsection
8180 The Module declaration
8183 \begin_layout Standard
8184 A module must begin with a line like the following:
8187 \begin_layout LyX-Code
8190 DeclareLyXModule[endnotes.sty]{Endnotes}
8193 \begin_layout Standard
8194 The mandatory argument, in curly brackets, is the name of the module, as
8196 \begin_inset Flex Noun
8199 \begin_layout Plain Layout
8200 Document\SpecialChar menuseparator
8201 Settings\SpecialChar menuseparator
8208 The argument in square brackets is optional: It declares any \SpecialChar LaTeX
8210 on which the module depends.
8211 It is also possible to use the form
8212 \begin_inset Flex Noun
8215 \begin_layout Plain Layout
8221 as an optional argument, which declares that the module can only be used
8222 when there exists a conversion chain between the formats `
8223 \begin_inset Flex Code
8226 \begin_layout Plain Layout
8233 \begin_inset Flex Code
8236 \begin_layout Plain Layout
8245 \begin_layout Standard
8246 The module declaration should then be followed by lines like the following
8250 \begin_layout Plain Layout
8251 Preferably in English if the module should be published with \SpecialChar LyX
8253 This description will appear in the list of messages to be translated and
8254 will be thus translated with the next interface update.
8262 \begin_layout LyX-Code
8266 \begin_layout LyX-Code
8267 #Adds an endnote command, in addition to footnotes.
8271 \begin_layout LyX-Code
8272 #You will need to add
8274 theendnotes in TeX code where you
8277 \begin_layout LyX-Code
8278 #want the endnotes to appear.
8282 \begin_layout LyX-Code
8286 \begin_layout LyX-Code
8287 #Requires: somemodule | othermodule
8290 \begin_layout LyX-Code
8291 #Excludes: badmodule
8294 \begin_layout Standard
8295 The description is used in
8296 \begin_inset Flex Noun
8299 \begin_layout Plain Layout
8300 Document\SpecialChar menuseparator
8301 Settings\SpecialChar menuseparator
8307 to provide the user with information about what the module does.
8309 \begin_inset Flex Code
8312 \begin_layout Plain Layout
8318 line is used to identify other modules with which this one must be used;
8320 \begin_inset Flex Code
8323 \begin_layout Plain Layout
8329 line is used to identify modules with which this one may not be used.
8330 Both are optional, and, as shown, multiple modules should be separated
8331 with the pipe symbol: |.
8332 Note that the required modules are treated disjunctively:
8336 of the required modules must be used.
8341 excluded module may be used.
8342 Note that modules are identified here by their filenames without the
8343 \begin_inset Flex Code
8346 \begin_layout Plain Layout
8354 \begin_inset Flex Code
8357 \begin_layout Plain Layout
8364 \begin_inset Flex Code
8367 \begin_layout Plain Layout
8376 \begin_layout Subsection
8380 \begin_layout Standard
8381 The first non-comment line of any layout file, included file, or module
8386 contain the file format number:
8389 \begin_layout Description
8390 \begin_inset Flex Code
8393 \begin_layout Plain Layout
8400 \begin_inset Flex Code
8403 \begin_layout Plain Layout
8409 ] The format number of the layout file.
8412 \begin_layout Standard
8413 This tag was introduced with \SpecialChar LyX
8415 \begin_inset space ~
8419 Layout files from older \SpecialChar LyX
8420 versions do not have an explicit file format and
8421 are considered to have
8422 \begin_inset Flex Code
8425 \begin_layout Plain Layout
8427 \begin_inset space ~
8436 The format for the present version of \SpecialChar LyX
8438 But each version of \SpecialChar LyX
8439 is capable of reading earlier versions' layout files,
8440 just as they are capable of reading files produced by earlier versions
8443 There is, however, no provision for converting to earlier formats.
8446 \begin_layout Subsection
8447 \begin_inset CommandInset label
8449 name "subsec:General-text-class"
8453 General text class parameters
8456 \begin_layout Standard
8457 These are general parameters that govern the behavior of an entire document
8463 mean that they must appear in
8464 \begin_inset Flex Code
8467 \begin_layout Plain Layout
8473 files rather than in modules.
8474 A module can contain any layout tag.)
8477 \begin_layout Description
8478 \begin_inset Flex Code
8481 \begin_layout Plain Layout
8487 Adds information that will be output in the
8488 \begin_inset Flex Code
8491 \begin_layout Plain Layout
8497 block when the document is output to XHTML.
8498 Typically, this would be used to output CSS style information, but it can
8499 be used for anything that can appear in
8500 \begin_inset Flex Code
8503 \begin_layout Plain Layout
8511 \begin_inset Quotes eld
8515 \begin_inset Flex Code
8518 \begin_layout Plain Layout
8525 \begin_inset Quotes erd
8531 \begin_layout Description
8532 \begin_inset Flex Code
8535 \begin_layout Plain Layout
8541 Adds information to the document preamble.
8543 \begin_inset Newline newline
8547 \begin_inset Quotes eld
8551 \begin_inset Flex Code
8554 \begin_layout Plain Layout
8561 \begin_inset Quotes erd
8567 \begin_layout Description
8568 \begin_inset Flex Code
8571 \begin_layout Plain Layout
8577 Defines formats for use in the display of bibliographic information.
8579 \begin_inset CommandInset ref
8581 reference "subsec:Citation-format-description"
8587 \begin_inset Quotes eld
8591 \begin_inset Flex Code
8594 \begin_layout Plain Layout
8601 \begin_inset Quotes erd
8607 \begin_layout Description
8608 \begin_inset Flex Code
8611 \begin_layout Plain Layout
8617 Describes various global options supported by the document class.
8619 \begin_inset CommandInset ref
8621 reference "subsec:ClassOptions"
8627 \begin_inset Quotes eld
8631 \begin_inset Flex Code
8634 \begin_layout Plain Layout
8641 \begin_inset Quotes erd
8647 \begin_layout Description
8648 \begin_inset Flex Code
8651 \begin_layout Plain Layout
8658 \begin_inset Flex Code
8661 \begin_layout Plain Layout
8670 \begin_inset space \thinspace{}
8674 \begin_inset Flex Code
8677 \begin_layout Plain Layout
8683 ] Whether the class should
8687 to having one or two columns.
8688 Can be changed in the
8689 \begin_inset Flex Noun
8692 \begin_layout Plain Layout
8693 Document\SpecialChar menuseparator
8702 \begin_layout Description
8703 \begin_inset Flex Code
8706 \begin_layout Plain Layout
8713 \begin_inset Flex Code
8716 \begin_layout Plain Layout
8722 ] This sequence defines the properties for a counter.
8723 If the counter does not yet exist, it is created; if it does exist, it
8726 \begin_inset Quotes eld
8730 \begin_inset Flex Code
8733 \begin_layout Plain Layout
8740 \begin_inset Quotes erd
8744 \begin_inset Newline newline
8748 \begin_inset CommandInset ref
8750 reference "subsec:Counters"
8754 for details on counters.
8757 \begin_layout Description
8758 \begin_inset Flex Code
8761 \begin_layout Plain Layout
8767 Sets the default font used to display the document.
8769 \begin_inset CommandInset ref
8771 reference "subsec:Font-description"
8775 for how to declare fonts.
8777 \begin_inset Quotes eld
8781 \begin_inset Flex Code
8784 \begin_layout Plain Layout
8791 \begin_inset Quotes erd
8797 \begin_layout Description
8798 \begin_inset Flex Code
8801 \begin_layout Plain Layout
8808 \begin_inset Flex Code
8811 \begin_layout Plain Layout
8817 ] Specifies a module to be included by default with this document class.
8818 The module is specified as filename without the
8819 \begin_inset Flex Code
8822 \begin_layout Plain Layout
8829 The user can still remove the module, but it will be active at the outset.
8830 (This applies only when new files are created, or when this class is chosen
8831 for an existing document.)
8834 \begin_layout Description
8835 \begin_inset Flex Code
8838 \begin_layout Plain Layout
8845 \begin_inset Flex Code
8848 \begin_layout Plain Layout
8854 ] This is the style that will be assigned to new paragraphs, usually
8855 \begin_inset Flex Noun
8858 \begin_layout Plain Layout
8865 This will default to the first defined style if not given, but you are
8866 encouraged to use this directive.
8869 \begin_layout Description
8870 \begin_inset Flex Code
8873 \begin_layout Plain Layout
8880 \begin_inset Flex Code
8883 \begin_layout Plain Layout
8889 ] This tag indicates that the module (which is specified by filename without
8891 \begin_inset Flex Code
8894 \begin_layout Plain Layout
8900 extension) cannot be used with this document class.
8901 This might be used in a journal-specific layout file to prevent, say, the
8903 \begin_inset Flex Code
8906 \begin_layout Plain Layout
8912 module that numbers theorems by section.
8917 be used in a module.
8918 Modules have their own way of excluding other modules (see
8919 \begin_inset CommandInset ref
8921 reference "subsec:Layout-modules"
8928 \begin_layout Description
8929 \begin_inset Flex Code
8932 \begin_layout Plain Layout
8938 Defines a new float.
8940 \begin_inset CommandInset ref
8942 reference "subsec:Floats"
8948 \begin_inset Quotes eld
8952 \begin_inset Flex Code
8955 \begin_layout Plain Layout
8962 \begin_inset Quotes erd
8968 \begin_layout Description
8969 \begin_inset Flex Code
8972 \begin_layout Plain Layout
8978 Sets the information that will be output in the
8979 \begin_inset Flex Code
8982 \begin_layout Plain Layout
8988 block when this document class is output to XHTML.
8989 Note that this will completely override any prior
8990 \begin_inset Flex Code
8993 \begin_layout Plain Layout
9000 \begin_inset Flex Code
9003 \begin_layout Plain Layout
9011 \begin_inset Newline newline
9015 \begin_inset Flex Code
9018 \begin_layout Plain Layout
9024 if you just want to add material to the preamble.) Must end with
9025 \begin_inset Quotes eld
9029 \begin_inset Flex Code
9032 \begin_layout Plain Layout
9039 \begin_inset Quotes erd
9045 \begin_layout Description
9046 \begin_inset Flex Code
9049 \begin_layout Plain Layout
9056 \begin_inset Flex Code
9059 \begin_layout Plain Layout
9065 ] The style to use for the table of contents, bibliography, and so forth,
9066 when the document is output to HTML.
9067 For articles, this should normally be
9068 \begin_inset Flex Code
9071 \begin_layout Plain Layout
9078 \begin_inset Flex Code
9081 \begin_layout Plain Layout
9088 If it is not given, then \SpecialChar LyX
9089 will attempt to figure out which layout to use.
9092 \begin_layout Description
9093 \begin_inset Flex Code
9096 \begin_layout Plain Layout
9103 \begin_inset Flex Code
9106 \begin_layout Plain Layout
9112 ] Modifies the properties of the given counter.
9113 If the counter does not exist, the statement is ignored.
9115 \begin_inset Quotes eld
9119 \begin_inset Flex Code
9122 \begin_layout Plain Layout
9129 \begin_inset Quotes erd
9133 \begin_inset Newline newline
9137 \begin_inset CommandInset ref
9139 reference "subsec:Counters"
9143 for details on counters.
9146 \begin_layout Description
9147 \begin_inset Flex Code
9150 \begin_layout Plain Layout
9157 \begin_inset Flex Code
9160 \begin_layout Plain Layout
9166 ] This allows you to include another layout definition file within yours
9167 to avoid duplicating commands.
9168 Common examples are the standard layout files, for example,
9169 \begin_inset Flex Code
9172 \begin_layout Plain Layout
9178 , which contains most of the basic layouts.
9181 \begin_layout Description
9182 \begin_inset Flex Code
9185 \begin_layout Plain Layout
9192 \begin_inset Flex Code
9195 \begin_layout Plain Layout
9201 ] This section (re-)defines the layout of an inset.
9202 It can be applied to an existing inset or to a new, user-defined inset,
9203 e.g., a new character style.
9205 \begin_inset Quotes eld
9209 \begin_inset Flex Code
9212 \begin_layout Plain Layout
9219 \begin_inset Quotes erd
9223 \begin_inset Newline newline
9227 \begin_inset CommandInset ref
9229 reference "subsec:Flex-insets-and"
9233 for more information.
9237 \begin_layout Description
9238 \begin_inset Flex Code
9241 \begin_layout Plain Layout
9248 \begin_inset Flex Code
9251 \begin_layout Plain Layout
9257 ] A string that indicates the width of the left margin on the screen, for
9259 \begin_inset Quotes eld
9263 \begin_inset Flex Code
9266 \begin_layout Plain Layout
9273 \begin_inset Quotes erd
9277 (Note that this is not a `length', like
9278 \begin_inset Quotes eld
9282 \begin_inset Quotes erd
9288 \begin_layout Description
9289 \begin_inset Flex Code
9292 \begin_layout Plain Layout
9299 \begin_inset Flex Code
9302 \begin_layout Plain Layout
9308 ] Modifies the properties of the given paragraph style.
9309 If the style does not exist, this section is ignored.
9311 \begin_inset Quotes eld
9315 \begin_inset Flex Code
9318 \begin_layout Plain Layout
9325 \begin_inset Quotes erd
9331 \begin_layout Description
9332 \begin_inset Flex Code
9335 \begin_layout Plain Layout
9342 \begin_inset Flex Code
9345 \begin_layout Plain Layout
9351 ] Deletes an existing counter, usually one defined in an included file.
9354 \begin_layout Description
9355 \begin_inset Flex Code
9358 \begin_layout Plain Layout
9365 \begin_inset Flex Code
9368 \begin_layout Plain Layout
9374 ] Deletes an existing float.
9375 This is particularly useful when you want to suppress a float that has
9376 been defined in an input file.
9379 \begin_layout Description
9380 \begin_inset Flex Code
9383 \begin_layout Plain Layout
9390 \begin_inset Flex Code
9393 \begin_layout Plain Layout
9399 ] Deletes an existing style.
9402 \begin_layout Description
9403 \begin_inset Flex Code
9406 \begin_layout Plain Layout
9413 \begin_inset Flex Code
9416 \begin_layout Plain Layout
9422 ] The file format (as defined in the \SpecialChar LyX
9423 preferences) produced by this document
9425 It is mainly useful when
9426 \begin_inset Flex Code
9429 \begin_layout Plain Layout
9436 \begin_inset Flex Code
9439 \begin_layout Plain Layout
9445 and one wants to define a new type of literate document.
9446 The format is reset to
9447 \begin_inset Quotes eld
9451 \begin_inset Flex Code
9454 \begin_layout Plain Layout
9461 \begin_inset Quotes erd
9465 \begin_inset Quotes eld
9469 \begin_inset Flex Code
9472 \begin_layout Plain Layout
9479 \begin_inset Quotes erd
9482 when the corresponding
9483 \begin_inset Flex Code
9486 \begin_layout Plain Layout
9492 parameter is encountered.
9495 \begin_layout Description
9496 \begin_inset Flex Code
9499 \begin_layout Plain Layout
9506 \begin_inset Flex Code
9509 \begin_layout Plain Layout
9520 \begin_inset Flex Code
9523 \begin_layout Plain Layout
9530 \begin_inset Flex Code
9533 \begin_layout Plain Layout
9539 ] Specifies what sort of output documents using this class will produce.
9542 \begin_layout Description
9543 \begin_inset Flex Code
9546 \begin_layout Plain Layout
9553 \begin_inset Flex Code
9556 \begin_layout Plain Layout
9563 \begin_inset Flex Code
9566 \begin_layout Plain Layout
9572 ] Specifies options, given in the second string, for the package named by
9575 \begin_inset Quotes eld
9579 \begin_inset Flex Code
9582 \begin_layout Plain Layout
9583 PackageOptions natbib square
9589 \begin_inset Quotes erd
9593 \begin_inset Flex Code
9596 \begin_layout Plain Layout
9602 to be loaded with the
9603 \begin_inset Flex Code
9606 \begin_layout Plain Layout
9613 (For \SpecialChar TeX
9614 perts, this causes \SpecialChar LyX
9616 \begin_inset Flex Code
9619 \begin_layout Plain Layout
9622 PassOptionsToPackage{natbib}{square}
9628 \begin_inset Flex Code
9631 \begin_layout Plain Layout
9640 \begin_layout Description
9641 \begin_inset Flex Code
9644 \begin_layout Plain Layout
9651 \begin_inset Flex Code
9654 \begin_layout Plain Layout
9663 \begin_inset Flex Code
9666 \begin_layout Plain Layout
9673 \begin_inset Flex Code
9676 \begin_layout Plain Layout
9682 ] The default pagestyle.
9683 Can be changed in the
9684 \begin_inset Flex Noun
9687 \begin_layout Plain Layout
9688 Document\SpecialChar menuseparator
9697 \begin_layout Description
9698 \begin_inset Flex Code
9701 \begin_layout Plain Layout
9707 Sets the preamble for the \SpecialChar LaTeX
9709 Note that this will completely override any prior
9710 \begin_inset Flex Code
9713 \begin_layout Plain Layout
9720 \begin_inset Flex Code
9723 \begin_layout Plain Layout
9731 \begin_inset Flex Code
9734 \begin_layout Plain Layout
9740 if you just want to add material to the preamble.) Must end with
9741 \begin_inset Quotes eld
9745 \begin_inset Flex Code
9748 \begin_layout Plain Layout
9755 \begin_inset Quotes erd
9761 \begin_layout Description
9762 \begin_inset Flex Code
9765 \begin_layout Plain Layout
9772 \begin_inset Flex Code
9775 \begin_layout Plain Layout
9782 \begin_inset Flex Code
9785 \begin_layout Plain Layout
9794 \begin_inset space \thinspace{}
9798 \begin_inset Flex Code
9801 \begin_layout Plain Layout
9807 ] Whether the class already provides the feature
9808 \begin_inset Flex Code
9811 \begin_layout Plain Layout
9818 A feature is in general the name of a package (e.
9819 \begin_inset space \thinspace{}
9823 \begin_inset space \space{}
9827 \begin_inset Flex Code
9830 \begin_layout Plain Layout
9837 \begin_inset Flex Code
9840 \begin_layout Plain Layout
9847 \begin_inset space \thinspace{}
9851 \begin_inset space \space{}
9855 \begin_inset Flex Code
9858 \begin_layout Plain Layout
9865 \begin_inset Flex Code
9868 \begin_layout Plain Layout
9876 \begin_inset CommandInset ref
9878 reference "chap:List-of-functions"
9882 for the list of features.
9885 \begin_layout Description
9886 \begin_inset Flex Code
9889 \begin_layout Plain Layout
9896 \begin_inset Flex Code
9899 \begin_layout Plain Layout
9905 ] Indicates that this layout provides the functionality of the module mentioned,
9906 which should be specified by the filename without the
9907 \begin_inset Flex Code
9910 \begin_layout Plain Layout
9917 This will typically be used if the layout includes the module directly,
9918 rather than using the
9919 \begin_inset Flex Code
9922 \begin_layout Plain Layout
9928 tag to indicate that it ought to be used.
9929 It could also be used in a module that provided an alternate implementation
9930 of the same functionality.
9933 \begin_layout Description
9934 \begin_inset Flex Code
9937 \begin_layout Plain Layout
9944 \begin_inset Flex Code
9947 \begin_layout Plain Layout
9953 ] Creates a new paragraph style if it does not already exist.
9954 If the style does exist, this section is ignored.
9956 \begin_inset Quotes eld
9960 \begin_inset Flex Code
9963 \begin_layout Plain Layout
9970 \begin_inset Quotes erd
9976 \begin_layout Description
9977 \begin_inset Flex Code
9980 \begin_layout Plain Layout
9987 \begin_inset Flex Code
9990 \begin_layout Plain Layout
9996 ] Whether the class requires the feature
9997 \begin_inset Flex Code
10000 \begin_layout Plain Layout
10007 Multiple features must be separated by commas.
10008 Note that you can only request supported features.
10010 \begin_inset CommandInset ref
10012 reference "chap:List-of-functions"
10016 for the list of features.).
10017 If you require a package with specific options, you can additionally use
10019 \begin_inset Flex Code
10022 \begin_layout Plain Layout
10031 \begin_layout Description
10032 \begin_inset Flex Code
10035 \begin_layout Plain Layout
10042 \begin_inset Flex Code
10045 \begin_layout Plain Layout
10051 ] A string that indicates the width of the right margin on the screen, for
10053 \begin_inset Quotes eld
10057 \begin_inset Flex Code
10060 \begin_layout Plain Layout
10067 \begin_inset Quotes erd
10073 \begin_layout Description
10074 \begin_inset Flex Code
10077 \begin_layout Plain Layout
10084 \begin_inset Flex Code
10087 \begin_layout Plain Layout
10093 ] Sets which divisions get numbered.
10095 \begin_inset Newline newline
10099 \begin_inset Flex Code
10102 \begin_layout Plain Layout
10108 counter in \SpecialChar LaTeX
10112 \begin_layout Description
10113 \begin_inset Flex Code
10116 \begin_layout Plain Layout
10123 \begin_inset Flex Code
10126 \begin_layout Plain Layout
10135 \begin_inset space \thinspace{}
10139 \begin_inset Flex Code
10142 \begin_layout Plain Layout
10148 ] Whether the class-default should be printing on one or both sides of the
10150 Can be changed in the
10151 \begin_inset Flex Noun
10154 \begin_layout Plain Layout
10155 Document\SpecialChar menuseparator
10164 \begin_layout Description
10165 \begin_inset Flex Code
10168 \begin_layout Plain Layout
10175 \begin_inset Flex Code
10178 \begin_layout Plain Layout
10184 ] This sequence defines a paragraph style.
10185 If the style does not yet exist, it is created; if it does exist, its parameter
10188 \begin_inset Quotes eld
10192 \begin_inset Flex Code
10195 \begin_layout Plain Layout
10202 \begin_inset Quotes erd
10206 \begin_inset Newline newline
10210 \begin_inset CommandInset ref
10212 reference "subsec:Paragraph-Styles"
10216 for details on paragraph styles.
10219 \begin_layout Description
10220 \begin_inset Flex Code
10223 \begin_layout Plain Layout
10230 \begin_inset Flex Code
10233 \begin_layout Plain Layout
10239 ] The name of the command or environment to be used with
10240 \begin_inset Flex Code
10243 \begin_layout Plain Layout
10252 \begin_layout Description
10253 \begin_inset Flex Code
10256 \begin_layout Plain Layout
10263 \begin_inset Flex Code
10266 \begin_layout Plain Layout
10275 \begin_inset Flex Code
10278 \begin_layout Plain Layout
10284 ] Indicates what kind of markup is used to define the title of a document.
10286 \begin_inset Flex Code
10289 \begin_layout Plain Layout
10295 means that the macro with name
10296 \begin_inset Flex Code
10299 \begin_layout Plain Layout
10305 will be inserted after the last layout which has
10306 \begin_inset Quotes eld
10310 \begin_inset Flex Code
10313 \begin_layout Plain Layout
10315 \begin_inset space ~
10324 \begin_inset Quotes erd
10329 \begin_inset Flex Code
10332 \begin_layout Plain Layout
10338 corresponds to the case where all layouts which have
10339 \begin_inset Quotes eld
10343 \begin_inset Flex Code
10346 \begin_layout Plain Layout
10348 \begin_inset space ~
10357 \begin_inset Quotes erd
10360 should be enclosed into the
10361 \begin_inset Flex Code
10364 \begin_layout Plain Layout
10373 \begin_layout Description
10374 \begin_inset Flex Code
10377 \begin_layout Plain Layout
10384 \begin_inset Flex Code
10387 \begin_layout Plain Layout
10393 ] Sets which divisions are included in the table of contents.
10395 \begin_inset Flex Code
10398 \begin_layout Plain Layout
10404 counter in \SpecialChar LaTeX
10408 \begin_layout Subsection
10409 \begin_inset Flex Code
10412 \begin_layout Plain Layout
10419 \begin_inset CommandInset label
10421 name "subsec:ClassOptions"
10428 \begin_layout Standard
10430 \begin_inset Flex Code
10433 \begin_layout Plain Layout
10439 section can contain the following entries:
10442 \begin_layout Description
10443 \begin_inset Flex Code
10446 \begin_layout Plain Layout
10453 \begin_inset Flex Code
10456 \begin_layout Plain Layout
10462 ] The list of available font sizes for the document's main font, separated
10464 \begin_inset Quotes eld
10468 \begin_inset Flex Code
10471 \begin_layout Plain Layout
10478 \begin_inset Quotes erd
10484 \begin_layout Description
10485 \begin_inset Flex Code
10488 \begin_layout Plain Layout
10494 Used to set the DTD line with XML-based output classes.
10496 \begin_inset space \thinspace{}
10500 \begin_inset Quotes eld
10503 -//OASIS//DTD DocBook V4.2//EN
10504 \begin_inset Quotes erd
10510 \begin_layout Description
10511 \begin_inset Flex Code
10514 \begin_layout Plain Layout
10521 \begin_inset Flex Code
10524 \begin_layout Plain Layout
10525 string="empty|plain|headings|fancy"
10530 ] The list of available page sty\SpecialChar softhyphen
10532 \begin_inset Quotes eld
10536 \begin_inset Flex Code
10539 \begin_layout Plain Layout
10546 \begin_inset Quotes erd
10552 \begin_layout Description
10553 \begin_inset Flex Code
10556 \begin_layout Plain Layout
10563 \begin_inset Flex Code
10566 \begin_layout Plain Layout
10572 ] Some document class options, separated by a comma, that will be added
10573 to the optional part of the
10574 \begin_inset Flex Code
10577 \begin_layout Plain Layout
10588 \begin_layout Standard
10590 \begin_inset Flex Code
10593 \begin_layout Plain Layout
10599 section must end with
10600 \begin_inset Quotes eld
10604 \begin_inset Flex Code
10607 \begin_layout Plain Layout
10614 \begin_inset Quotes erd
10620 \begin_layout Subsection
10622 \begin_inset CommandInset label
10624 name "subsec:Paragraph-Styles"
10631 \begin_layout Standard
10632 A paragraph style description looks like this:
10636 \begin_layout Plain Layout
10637 Note that this will either define a new style or modify an existing one.
10645 \begin_layout LyX-Code
10652 \begin_layout LyX-Code
10656 \begin_layout LyX-Code
10660 \begin_layout Standard
10661 where the following commands are allowed:
10664 \begin_layout Description
10665 \begin_inset Flex Code
10668 \begin_layout Plain Layout
10675 \begin_inset Flex Code
10678 \begin_layout Plain Layout
10683 , left, right, center
10688 ] Paragraph alignment.
10691 \begin_layout Description
10692 \begin_inset Flex Code
10695 \begin_layout Plain Layout
10702 \begin_inset Flex Code
10705 \begin_layout Plain Layout
10710 , left, right, center
10715 ] A comma separated list of permitted alignments.
10716 (Some \SpecialChar LaTeX
10717 styles prohibit certain alignments, since those wouldn't make sense.
10718 For example a right-aligned or centered enumeration isn't possible.)
10721 \begin_layout Description
10722 \begin_inset Flex Code
10725 \begin_layout Plain Layout
10732 \begin_inset Flex Code
10735 \begin_layout Plain Layout
10741 ] Defines argument number <int> of a command\SpecialChar breakableslash
10742 environment associated with
10744 This is useful for things like section headings, and only makes sense with
10747 Every (optional or required) argument of a command or environment – except
10748 for the required argument that is associated with the content of the paragraph
10749 itself – has a separate definition, where the number specifies the order
10751 The definition must end with
10752 \begin_inset Flex Code
10755 \begin_layout Plain Layout
10762 So a command with two optional arguments has:
10763 \begin_inset Separator latexpar
10770 \begin_layout Quote
10776 \begin_layout Quote
10782 \begin_layout Quote
10788 \begin_layout Quote
10794 \begin_layout Quote
10800 \begin_layout Quote
10806 \begin_layout Standard
10808 \begin_inset Flex Code
10811 \begin_layout Plain Layout
10817 definition, the following specifications are possible:
10820 \begin_layout Itemize
10821 \begin_inset Flex Code
10824 \begin_layout Plain Layout
10831 \begin_inset Flex Code
10834 \begin_layout Plain Layout
10840 The string that will appear both in the menu (to insert this argument)
10841 and on the argument inset button (unless you also specify a separate
10842 \begin_inset Flex Code
10845 \begin_layout Plain Layout
10852 For the menu, you can define an accelerator by appending the respective
10853 character to the string, divided by
10854 \begin_inset Quotes eld
10858 \begin_inset Quotes erd
10862 \begin_inset space \thinspace{}
10866 \begin_inset space \space{}
10870 \begin_inset Quotes eld
10874 \begin_inset Flex Code
10877 \begin_layout Plain Layout
10884 \begin_inset Quotes erd
10890 \begin_layout Itemize
10891 \begin_inset Flex Code
10894 \begin_layout Plain Layout
10901 \begin_inset Flex Code
10904 \begin_layout Plain Layout
10910 A separate string for the menu.
10911 You can define an accelerator by appending the respective character to
10912 the string, divided by
10913 \begin_inset Quotes eld
10917 \begin_inset Quotes erd
10921 \begin_inset space \thinspace{}
10925 \begin_inset space \space{}
10929 \begin_inset Quotes eld
10933 \begin_inset Flex Code
10936 \begin_layout Plain Layout
10943 \begin_inset Quotes erd
10947 This specification is optional.
10948 If it is not given the
10949 \begin_inset Flex Code
10952 \begin_layout Plain Layout
10958 will be used instead for the menu.
10961 \begin_layout Itemize
10962 \begin_inset Flex Code
10965 \begin_layout Plain Layout
10972 \begin_inset Flex Code
10975 \begin_layout Plain Layout
10981 A longer explanatory text that appears in the tooltip when hovering over
10982 the argument inset.
10985 \begin_layout Itemize
10986 \begin_inset Flex Code
10989 \begin_layout Plain Layout
10996 \begin_inset Flex Code
10999 \begin_layout Plain Layout
11008 \begin_inset space \thinspace{}
11012 \begin_inset Flex Code
11015 \begin_layout Plain Layout
11021 ] Declare if this is a mandatory (1) or an optional (0) argument.
11022 Mandatory arguments will be output empty if not given, while optional arguments
11023 will not be output at all.
11024 By default, mandatory arguments are delimited by
11025 \begin_inset Flex Code
11028 \begin_layout Plain Layout
11034 , while optional arguments are delimited by
11035 \begin_inset Flex Code
11038 \begin_layout Plain Layout
11047 \begin_layout Itemize
11048 \begin_inset Flex Code
11051 \begin_layout Plain Layout
11058 \begin_inset Flex Code
11061 \begin_layout Plain Layout
11067 defines another argument (by its number) which this argument requires to
11068 be output if it is itself output.
11070 \begin_inset space \thinspace{}
11073 g., in \SpecialChar LaTeX
11074 commands, optional arguments often require previous optional arguments
11075 to be output (at least empty), as in
11076 \begin_inset Flex Code
11079 \begin_layout Plain Layout
11082 command[][argument]{text}
11088 This can be achieved by the statement
11089 \begin_inset Flex Code
11092 \begin_layout Plain Layout
11099 \begin_inset Flex Code
11102 \begin_layout Plain Layout
11111 \begin_layout Itemize
11112 \begin_inset Flex Code
11115 \begin_layout Plain Layout
11122 \begin_inset Flex Code
11125 \begin_layout Plain Layout
11131 defines a custom left delimiter (instead of
11132 \begin_inset Flex Code
11135 \begin_layout Plain Layout
11142 \begin_inset Flex Code
11145 \begin_layout Plain Layout
11152 A line break in the output can be indicated by
11153 \begin_inset Flex Code
11156 \begin_layout Plain Layout
11165 \begin_layout Itemize
11166 \begin_inset Flex Code
11169 \begin_layout Plain Layout
11176 \begin_inset Flex Code
11179 \begin_layout Plain Layout
11185 defines a custom right delimiter (instead of
11186 \begin_inset Flex Code
11189 \begin_layout Plain Layout
11196 \begin_inset Flex Code
11199 \begin_layout Plain Layout
11206 A line break in the output can be indicated by
11207 \begin_inset Flex Code
11210 \begin_layout Plain Layout
11219 \begin_layout Itemize
11220 \begin_inset Flex Code
11223 \begin_layout Plain Layout
11230 \begin_inset Flex Code
11233 \begin_layout Plain Layout
11239 defines an argument that is inserted if and only if no user-specified arguments
11241 \begin_inset space \thinspace{}
11245 \begin_inset space \space{}
11248 if no argument inset has been inserted (note that also an empty argument
11249 inset omits the DefaultArg).
11250 Multiple arguments need to be separated by comma.
11253 \begin_layout Itemize
11254 \begin_inset Flex Code
11257 \begin_layout Plain Layout
11264 \begin_inset Flex Code
11267 \begin_layout Plain Layout
11273 defines an argument that is inserted in any case (alone or in addition
11274 to user-specified arguments).
11275 Multiple arguments need to be separated by comma.
11278 \begin_layout Itemize
11279 \begin_inset Flex Code
11282 \begin_layout Plain Layout
11288 The font used for the argument content, see
11289 \begin_inset CommandInset ref
11291 reference "subsec:Font-description"
11298 \begin_layout Itemize
11299 \begin_inset Flex Code
11302 \begin_layout Plain Layout
11308 The font used for the label; see
11309 \begin_inset CommandInset ref
11311 reference "subsec:Font-description"
11318 \begin_layout Itemize
11319 \begin_inset Flex Code
11322 \begin_layout Plain Layout
11329 \begin_inset Flex Code
11332 \begin_layout Plain Layout
11337 , Minimalistic, Conglomerate
11342 ] describes the rendering style used for the inset's frame and buttons.
11345 \begin_layout Itemize
11346 \begin_inset Flex Code
11349 \begin_layout Plain Layout
11356 \begin_inset Flex Code
11359 \begin_layout Plain Layout
11366 \begin_inset Flex Code
11369 \begin_layout Plain Layout
11375 , this argument is automatically inserted when the respective style is selected.
11376 Currently, only one argument per style\SpecialChar breakableslash
11377 layout can be automatically inserted.
11380 \begin_layout Itemize
11381 \begin_inset Flex Code
11384 \begin_layout Plain Layout
11391 \begin_inset Flex Code
11394 \begin_layout Plain Layout
11401 \begin_inset Flex Code
11404 \begin_layout Plain Layout
11410 , this argument will be inserted with a copy of the co-text (either selected
11411 text or the whole paragraph) as content.
11414 \begin_layout Itemize
11415 \begin_inset Flex Code
11418 \begin_layout Plain Layout
11425 \begin_inset Flex Code
11428 \begin_layout Plain Layout
11429 string of characters
11438 Defines individual characters that should be output in raw form, meaning
11439 without special translations that \SpecialChar LaTeX
11441 Note that, contrary to PassThru, this needs to be explicitly defined for
11443 That is, arguments do not inherit PassThruChars from their parent inset
11447 \begin_layout Standard
11448 By default, the text entered in the \SpecialChar LyX
11449 workarea in the respective layout is
11450 the last (mandatory) argument of a command if the
11451 \begin_inset Flex Code
11454 \begin_layout Plain Layout
11461 \begin_inset Flex Code
11464 \begin_layout Plain Layout
11471 However, arguments with the prefix
11472 \begin_inset Flex Code
11475 \begin_layout Plain Layout
11481 are output after this workarea argument.
11482 Note that post-argument numbering restarts at 1, so the first argument
11483 following the workarea argument is
11484 \begin_inset Flex Code
11487 \begin_layout Plain Layout
11494 Post-arguments are ignored in any other
11495 \begin_inset Flex Code
11498 \begin_layout Plain Layout
11505 \begin_inset Flex Code
11508 \begin_layout Plain Layout
11517 \begin_layout Standard
11519 \begin_inset Flex Code
11522 \begin_layout Plain Layout
11531 \begin_inset Flex Code
11534 \begin_layout Plain Layout
11543 \begin_inset Flex Code
11546 \begin_layout Plain Layout
11552 followed by the number (e.
11553 \begin_inset space \thinspace{}
11557 \begin_inset space \space{}
11561 \begin_inset Flex Code
11564 \begin_layout Plain Layout
11574 \begin_layout Description
11575 \begin_inset Flex Code
11578 \begin_layout Plain Layout
11584 Note that this will completely override any prior
11585 \begin_inset Flex Code
11588 \begin_layout Plain Layout
11594 declaration for this style.
11596 \begin_inset Quotes eld
11600 \begin_inset Flex Code
11603 \begin_layout Plain Layout
11610 \begin_inset Quotes erd
11615 \begin_inset CommandInset ref
11617 reference "subsec:I18n"
11621 for details on its use.
11624 \begin_layout Description
11625 \begin_inset Flex Code
11628 \begin_layout Plain Layout
11635 \begin_inset Flex Code
11638 \begin_layout Plain Layout
11648 \begin_layout Plain Layout
11649 Note that a `float' here is a real number, such as: 1.5.
11654 The vertical space with which the last of a chain of paragraphs with this
11655 style is separated from the following paragraph.
11656 If the next paragraph has another style, the separations are not simply
11657 added, but the maximum is taken.
11660 \begin_layout Description
11661 \begin_inset Flex Code
11664 \begin_layout Plain Layout
11671 \begin_inset Flex Code
11674 \begin_layout Plain Layout
11680 ] The category for this style.
11681 This is used to group related styles in the style combobox on the toolbar.
11682 Any string can be used, but you may want to use existing categories with
11687 \begin_layout Description
11688 \begin_inset Flex Code
11691 \begin_layout Plain Layout
11697 Depth of XML command.
11698 Used only with XML-type formats.
11701 \begin_layout Description
11702 \begin_inset Flex Code
11705 \begin_layout Plain Layout
11712 \begin_inset Flex Code
11715 \begin_layout Plain Layout
11721 ] Copies all the features of an existing style into the current one.
11725 \begin_layout Description
11726 \begin_inset Flex Code
11729 \begin_layout Plain Layout
11736 \begin_inset Flex Code
11739 \begin_layout Plain Layout
11745 ] The name of a style whose preamble should be output
11750 This allows to ensure some ordering of the preamble snippets when macros
11751 definitions depend on one another.
11755 \begin_layout Plain Layout
11756 Note that, besides that functionality, there is no way to ensure any ordering
11758 The ordering that you see in a given version of \SpecialChar LyX
11759 may change without warning
11768 \begin_layout Description
11769 \begin_inset Flex Code
11772 \begin_layout Plain Layout
11779 \begin_inset Flex Code
11782 \begin_layout Plain Layout
11787 , Box, Filled_Box, Static
11792 ] The type of label that stands at the end of the paragraph (or sequence
11794 \begin_inset Flex Code
11797 \begin_layout Plain Layout
11804 \begin_inset Newline newline
11808 \begin_inset Flex Code
11811 \begin_layout Plain Layout
11818 \begin_inset Flex Code
11821 \begin_layout Plain Layout
11828 \begin_inset Flex Code
11831 \begin_layout Plain Layout
11839 \begin_inset Flex Code
11842 \begin_layout Plain Layout
11849 \begin_inset Quotes eld
11853 \begin_inset Quotes erd
11857 \begin_inset Flex Code
11860 \begin_layout Plain Layout
11867 \begin_inset space \space{}
11871 \begin_inset Flex Code
11874 \begin_layout Plain Layout
11880 ) is a white (resp.
11881 \begin_inset space ~
11884 black) square suitable for end of proof markers,
11885 \begin_inset Flex Code
11888 \begin_layout Plain Layout
11894 is an explicit text string.
11897 \begin_layout Description
11898 \begin_inset Flex Code
11901 \begin_layout Plain Layout
11908 \begin_inset Flex Code
11911 \begin_layout Plain Layout
11917 ] The string used for a label with a
11918 \begin_inset Flex Code
11921 \begin_layout Plain Layout
11928 \begin_inset Newline newline
11932 \begin_inset Flex Code
11935 \begin_layout Plain Layout
11945 \begin_layout Description
11946 \begin_inset Flex Code
11949 \begin_layout Plain Layout
11955 The font used for both the text body
11961 \begin_inset CommandInset ref
11963 reference "subsec:Font-description"
11968 Note that defining this font automatically defines the
11969 \begin_inset Flex Code
11972 \begin_layout Plain Layout
11979 So you should define this one first if you also want to define
11980 \begin_inset Flex Code
11983 \begin_layout Plain Layout
11992 \begin_layout Description
11993 \begin_inset Flex Code
11996 \begin_layout Plain Layout
12003 \begin_inset Flex Code
12006 \begin_layout Plain Layout
12012 ] Used for backporting new styles to stable \SpecialChar LyX
12014 The first stable version that supports this tag is \SpecialChar LyX
12016 The argument is a number which may either be 0, -1 or any value greater
12019 \begin_inset Flex Code
12022 \begin_layout Plain Layout
12028 flag of a style is greater than zero, it will always be written to the
12030 If a .lyx file is read, the style definitions from the document header are
12031 added to the document class.
12032 Therefore even older \SpecialChar LyX
12033 versions can handle the style.
12035 \begin_inset Flex Code
12038 \begin_layout Plain Layout
12044 is a version number: if the style is read, and the version number is less
12045 than the version number of the already existing style in the document class,
12046 the new style is ignored.
12047 If the version number is greater, the new style replaces the existing style.
12048 A value of -1 means an infinite version number, i.
12049 \begin_inset space \thinspace{}
12053 \begin_inset space \space{}
12056 the style is always used.
12059 \begin_layout Description
12060 \begin_inset Flex Code
12063 \begin_layout Plain Layout
12070 \begin_inset Flex Code
12073 \begin_layout Plain Layout
12082 \begin_inset space \thinspace{}
12086 \begin_inset Flex Code
12089 \begin_layout Plain Layout
12095 ] Usually \SpecialChar LyX
12096 does not allow you to insert more than one space between words,
12097 since a space is considered as the separation between two words, not a
12098 character or symbol of its own.
12099 This is a very fine thing but sometimes annoying, for example, when typing
12100 program code or plain \SpecialChar LaTeX
12103 \begin_inset Flex Code
12106 \begin_layout Plain Layout
12113 Note that \SpecialChar LyX
12114 will create protected blanks for the additional blanks when
12115 in another mode than \SpecialChar LaTeX
12119 \begin_layout Description
12120 \begin_inset Flex Code
12123 \begin_layout Plain Layout
12129 These tags are used with XHTML output.
12131 \begin_inset CommandInset ref
12133 reference "subsec:Paragraph-Style-XHTML"
12140 \begin_layout Description
12141 \begin_inset Flex Code
12144 \begin_layout Plain Layout
12150 [FIXME] (Used only with XML-type formats.)
12153 \begin_layout Description
12154 \begin_inset Flex Code
12157 \begin_layout Plain Layout
12164 \begin_inset Flex Code
12167 \begin_layout Plain Layout
12176 \begin_inset space \thinspace{}
12180 \begin_inset Flex Code
12183 \begin_layout Plain Layout
12190 \begin_inset Flex Code
12193 \begin_layout Plain Layout
12199 , marks the style as to be included in the document preamble and not in
12201 This is useful for document classes that want such information as the title
12202 and author to appear in the preamble.
12203 Note that this works only for styles for which the
12204 \begin_inset Flex Code
12207 \begin_layout Plain Layout
12214 \begin_inset Flex Code
12217 \begin_layout Plain Layout
12224 \begin_inset Flex Code
12227 \begin_layout Plain Layout
12236 \begin_layout Description
12237 \begin_inset Flex Code
12240 \begin_layout Plain Layout
12247 \begin_inset Flex Code
12250 \begin_layout Plain Layout
12259 \begin_inset space \thinspace{}
12263 \begin_inset Flex Code
12266 \begin_layout Plain Layout
12273 \begin_inset Flex Code
12276 \begin_layout Plain Layout
12282 , marks the style as being part of a title block (see also the
12283 \begin_inset Flex Code
12286 \begin_layout Plain Layout
12293 \begin_inset Flex Code
12296 \begin_layout Plain Layout
12305 \begin_layout Description
12306 \begin_inset Flex Code
12309 \begin_layout Plain Layout
12316 \begin_inset Flex Code
12319 \begin_layout Plain Layout
12325 ] The \SpecialChar LaTeX
12326 command sequence declaring an item in a list.
12327 The command is to be defined without the preceding backslash (the default
12329 \begin_inset Quotes eld
12333 \begin_inset Quotes erd
12337 \begin_inset Flex Code
12340 \begin_layout Plain Layout
12348 in the \SpecialChar LaTeX
12352 \begin_layout Description
12353 \begin_inset Flex Code
12356 \begin_layout Plain Layout
12363 \begin_inset Flex Code
12366 \begin_layout Plain Layout
12372 ] This provides extra space between paragraphs that have the same style.
12373 If you put other styles into an environment, each is separated with the
12375 \begin_inset Flex Code
12378 \begin_layout Plain Layout
12385 But the whole items of the environment are additionally separated with
12387 \begin_inset Flex Code
12390 \begin_layout Plain Layout
12397 Note that this is a
12402 \begin_layout Description
12403 \begin_inset Flex Code
12406 \begin_layout Plain Layout
12412 [FIXME] (Used only with XML-type formats.)
12415 \begin_layout Description
12416 \begin_inset Flex Code
12419 \begin_layout Plain Layout
12426 \begin_inset Flex Code
12429 \begin_layout Plain Layout
12438 \begin_inset space \thinspace{}
12442 \begin_inset Flex Code
12445 \begin_layout Plain Layout
12451 ] Usually \SpecialChar LyX
12452 does not allow you to leave a paragraph empty, since it would
12453 lead to empty \SpecialChar LaTeX
12455 There are some cases where this could be desirable however: in a letter
12456 template, the required fields can be provided as empty fields, so that
12457 people do not forget them; in some special classes, a style can be used
12458 as some kind of break, which does not contain actual text.
12461 \begin_layout Description
12462 \begin_inset Flex Code
12465 \begin_layout Plain Layout
12472 \begin_inset Flex Code
12475 \begin_layout Plain Layout
12481 ] The vertical space between the label and the text body.
12482 Only used for labels that are above the text body (
12483 \begin_inset Flex Code
12486 \begin_layout Plain Layout
12493 \begin_inset Newline newline
12497 \begin_inset Flex Code
12500 \begin_layout Plain Layout
12501 Centered_Top_Environment
12509 \begin_layout Description
12510 \begin_inset Flex Code
12513 \begin_layout Plain Layout
12520 \begin_inset Flex Code
12523 \begin_layout Plain Layout
12529 ] The name of the counter for automatic numbering.
12530 In order to have the counter appear with your label, you will need to reference
12532 \begin_inset Flex Code
12535 \begin_layout Plain Layout
12544 This will work with
12545 \begin_inset Flex Code
12548 \begin_layout Plain Layout
12555 \begin_inset Flex Code
12558 \begin_layout Plain Layout
12565 \begin_inset Flex Code
12568 \begin_layout Plain Layout
12575 \begin_inset Flex Code
12578 \begin_layout Plain Layout
12585 \begin_inset Newline newline
12593 \begin_inset Flex Code
12596 \begin_layout Plain Layout
12603 \begin_inset Flex Code
12606 \begin_layout Plain Layout
12612 , though this case is a bit complicated.
12613 Suppose you declare
12614 \begin_inset Quotes eld
12618 \begin_inset Flex Code
12621 \begin_layout Plain Layout
12622 LabelCounter myenum
12628 \begin_inset Quotes erd
12632 Then the actual counters used are
12633 \begin_inset Flex Code
12636 \begin_layout Plain Layout
12643 \begin_inset Flex Code
12646 \begin_layout Plain Layout
12653 \begin_inset Flex Code
12656 \begin_layout Plain Layout
12663 \begin_inset Flex Code
12666 \begin_layout Plain Layout
12672 , much as in \SpecialChar LaTeX
12674 These counters must all be declared separately.
12675 \begin_inset Newline newline
12679 \begin_inset CommandInset ref
12681 reference "subsec:Counters"
12685 for details on counters.
12688 \begin_layout Description
12689 \begin_inset Flex Code
12692 \begin_layout Plain Layout
12698 The font used for the label.
12700 \begin_inset CommandInset ref
12702 reference "subsec:Font-description"
12709 \begin_layout Description
12710 \begin_inset Flex Code
12713 \begin_layout Plain Layout
12720 \begin_inset Flex Code
12723 \begin_layout Plain Layout
12729 ] Text that indicates how far a label should be indented.
12732 \begin_layout Description
12733 \begin_inset Flex Code
12736 \begin_layout Plain Layout
12743 \begin_inset Flex Code
12746 \begin_layout Plain Layout
12752 ] Text that indicates the amount of horizontal space between the label and
12754 Only used for labels that are not above the text body.
12757 \begin_layout Description
12758 \begin_inset Flex Code
12761 \begin_layout Plain Layout
12768 \begin_inset Flex Code
12771 \begin_layout Plain Layout
12777 ] The string used for the label.
12779 \begin_inset Flex Code
12782 \begin_layout Plain Layout
12788 is set, this string can be contain the special formatting commands described
12790 \begin_inset CommandInset ref
12792 reference "subsec:Counters"
12799 \begin_layout Description
12800 \begin_inset Flex Code
12803 \begin_layout Plain Layout
12804 LabelStringAppendix
12810 \begin_inset Flex Code
12813 \begin_layout Plain Layout
12819 ] This is used inside the appendix instead of
12820 \begin_inset Newline newline
12824 \begin_inset Flex Code
12827 \begin_layout Plain Layout
12835 \begin_inset Flex Code
12838 \begin_layout Plain Layout
12845 \begin_inset Newline newline
12849 \begin_inset Flex Code
12852 \begin_layout Plain Layout
12853 LabelStringAppendix
12861 \begin_layout Description
12862 \begin_inset Flex Code
12865 \begin_layout Plain Layout
12871 [FIXME] (Used only with XML-type formats.)
12874 \begin_layout Description
12875 \begin_inset Flex Code
12878 \begin_layout Plain Layout
12885 \begin_inset Flex Code
12888 \begin_layout Plain Layout
12893 , Manual, Static, Above,
12894 \begin_inset Newline newline
12897 Centered, Sensitive, Enumerate,
12898 \begin_inset Newline newline
12901 Itemize, Bibliography
12907 \begin_inset Separator latexpar
12914 \begin_layout Description
12915 \begin_inset Flex Code
12918 \begin_layout Plain Layout
12924 means the label is the very first word (up to the first real blank).
12925 Use protected spaces if you want more than one word as the label.
12929 \begin_layout Description
12930 \begin_inset Flex Code
12933 \begin_layout Plain Layout
12939 means the label is simply what is declared as
12940 \begin_inset Flex Code
12943 \begin_layout Plain Layout
12950 This will be displayed
12951 \begin_inset Quotes eld
12955 \begin_inset Quotes erd
12958 , at the beginning of the paragraph.
12960 \begin_inset Flex Code
12963 \begin_layout Plain Layout
12970 \begin_inset Flex Code
12973 \begin_layout Plain Layout
12979 , then it will be displayed only in the first paragraph of any sequence
12980 of paragraphs with the same
12981 \begin_inset Flex Code
12984 \begin_layout Plain Layout
12993 \begin_layout Description
12994 \begin_inset Flex Code
12997 \begin_layout Plain Layout
13004 \begin_inset space ~
13008 \begin_inset space ~
13012 \begin_inset Flex Code
13015 \begin_layout Plain Layout
13021 are special cases of
13022 \begin_inset Flex Code
13025 \begin_layout Plain Layout
13032 The label will be printed above the paragraph either at the beginning of
13033 the line or centered.
13036 \begin_layout Description
13037 \begin_inset Flex Code
13040 \begin_layout Plain Layout
13046 is a special case for the caption-labels
13047 \begin_inset Quotes eld
13051 \begin_inset Quotes erd
13055 \begin_inset Quotes eld
13059 \begin_inset Quotes erd
13063 \begin_inset Newline newline
13067 \begin_inset Flex Code
13070 \begin_layout Plain Layout
13076 means the (hardcoded) label string depends on the kind of float: It is
13077 hardcoded to be `FloatType N', where N is the value of the counter associated
13079 For the case that a caption is inserted outside of a float the
13080 \begin_inset Flex Code
13083 \begin_layout Plain Layout
13090 \begin_inset Quotes eld
13094 \begin_inset Quotes erd
13100 \begin_layout Description
13101 \begin_inset Flex Code
13104 \begin_layout Plain Layout
13110 produces the usual sort of enumeration labels.
13111 At present, it is hardcoded to use Arabic numerals, lowercase letters,
13112 small Roman numerals, and uppercase letters for the four possible depths.
13115 \begin_layout Description
13116 \begin_inset Flex Code
13119 \begin_layout Plain Layout
13125 produces various bullets at the different levels.
13126 It is also hardcoded.
13129 \begin_layout Description
13130 \begin_inset Flex Code
13133 \begin_layout Plain Layout
13139 should be used only with
13140 \begin_inset Flex Code
13143 \begin_layout Plain Layout
13144 LatexType BibEnvironment
13153 \begin_layout Description
13154 \begin_inset Flex Code
13157 \begin_layout Plain Layout
13163 Note that this will completely override any prior
13164 \begin_inset Flex Code
13167 \begin_layout Plain Layout
13173 declaration for this style.
13175 \begin_inset Quotes eld
13179 \begin_inset Flex Code
13182 \begin_layout Plain Layout
13189 \begin_inset Quotes erd
13194 \begin_inset CommandInset ref
13196 reference "subsec:I18n"
13200 for details on its use.
13203 \begin_layout Description
13204 \begin_inset Flex Code
13207 \begin_layout Plain Layout
13214 \begin_inset Flex Code
13217 \begin_layout Plain Layout
13223 ] The name of the corresponding \SpecialChar LaTeX
13225 Either the environment or command name.
13228 \begin_layout Description
13229 \begin_inset Flex Code
13232 \begin_layout Plain Layout
13239 \begin_inset Flex Code
13242 \begin_layout Plain Layout
13248 ] An optional parameter for the corresponding
13249 \begin_inset Flex Code
13252 \begin_layout Plain Layout
13259 This parameter cannot be changed from within \SpecialChar LyX
13261 \begin_inset Flex Code
13264 \begin_layout Plain Layout
13270 for customizable parameters).
13271 This will be output as is after all \SpecialChar LaTeX
13273 \begin_inset Flex Code
13276 \begin_layout Plain Layout
13285 \begin_layout Description
13286 \begin_inset Flex Code
13289 \begin_layout Plain Layout
13296 \begin_inset Flex Code
13299 \begin_layout Plain Layout
13304 , Command, Environment, Item_Environment,
13305 \begin_inset Newline newline
13308 List_Environment, Bib_Environment
13313 ] How the style should be translated into \SpecialChar LaTeX
13318 \begin_layout Plain Layout
13319 \begin_inset Flex Code
13322 \begin_layout Plain Layout
13328 is perhaps a bit misleading, since these rules apply to SGML classes, too.
13329 Visit the SGML class files for specific examples.
13335 \begin_inset Separator latexpar
13342 \begin_layout Description
13343 \begin_inset Flex Code
13346 \begin_layout Plain Layout
13352 means nothing special.
13355 \begin_layout Description
13356 \begin_inset Flex Code
13359 \begin_layout Plain Layout
13366 \begin_inset Flex Code
13369 \begin_layout Plain Layout
13376 {\SpecialChar ldots
13385 \begin_layout Description
13386 \begin_inset Flex Code
13389 \begin_layout Plain Layout
13396 \begin_inset Flex Code
13399 \begin_layout Plain Layout
13406 }\SpecialChar ldots
13422 \begin_layout Description
13423 \begin_inset Flex Code
13426 \begin_layout Plain Layout
13433 \begin_inset Flex Code
13436 \begin_layout Plain Layout
13443 \begin_inset Flex Code
13446 \begin_layout Plain Layout
13454 is generated for each paragraph of this environment.
13458 \begin_layout Description
13459 \begin_inset Flex Code
13462 \begin_layout Plain Layout
13469 \begin_inset Flex Code
13472 \begin_layout Plain Layout
13479 \begin_inset Newline newline
13483 \begin_inset Flex Code
13486 \begin_layout Plain Layout
13492 is passed as an argument to the environment.
13493 \begin_inset Newline newline
13497 \begin_inset Flex Code
13500 \begin_layout Plain Layout
13506 can be defined in the
13507 \begin_inset Flex Noun
13510 \begin_layout Plain Layout
13511 Edit\SpecialChar menuseparator
13513 \begin_inset space ~
13524 \begin_layout Description
13525 \begin_inset Flex Code
13528 \begin_layout Plain Layout
13535 \begin_inset Flex Code
13538 \begin_layout Plain Layout
13544 but adds the necessary mandatory argument (the longest label) to the begin
13545 statement of the bibliography environment:
13546 \begin_inset Newline newline
13550 \begin_inset Flex Code
13553 \begin_layout Plain Layout
13556 begin{thebibliography}{99}
13562 It is therefore only useful for bibliography environments.
13563 The default longest label
13564 \begin_inset Quotes eld
13568 \begin_inset Quotes erd
13571 can be changed by the user in the paragraph settings of a bibliography
13575 \begin_layout Standard
13576 Putting the last few things together, the \SpecialChar LaTeX
13577 output will be either:
13580 \begin_layout LyX-Code
13583 LatexName[LatexParam]{\SpecialChar ldots
13587 \begin_layout Standard
13591 \begin_layout LyX-Code
13594 begin{LatexName}[LatexParam] \SpecialChar ldots
13600 \begin_layout Standard
13601 depending upon the \SpecialChar LaTeX
13606 \begin_layout Description
13607 \begin_inset Flex Code
13610 \begin_layout Plain Layout
13617 \begin_inset Flex Code
13620 \begin_layout Plain Layout
13626 ] A string that is put at the beginning of the style content.
13627 A line break in the output can be indicated by
13628 \begin_inset Flex Code
13631 \begin_layout Plain Layout
13640 \begin_layout Description
13641 \begin_inset Flex Code
13644 \begin_layout Plain Layout
13651 \begin_inset Flex Code
13654 \begin_layout Plain Layout
13660 ] If you put styles into environments, the different
13661 \begin_inset Flex Code
13664 \begin_layout Plain Layout
13670 are not simply added, but added with a factor
13671 \begin_inset Formula $\frac{4}{\mathrm{depth}+4}$
13675 Note that this parameter is also used when
13676 \begin_inset Flex Code
13679 \begin_layout Plain Layout
13686 \begin_inset Flex Code
13689 \begin_layout Plain Layout
13696 \begin_inset Flex Code
13699 \begin_layout Plain Layout
13706 Then it is added to the manual or dynamic margin.
13707 \begin_inset Newline newline
13711 \begin_inset Quotes eld
13715 \begin_inset Flex Code
13718 \begin_layout Plain Layout
13725 \begin_inset Quotes erd
13728 means that the paragraph is indented with the width of
13729 \begin_inset Quotes eld
13733 \begin_inset Flex Code
13736 \begin_layout Plain Layout
13743 \begin_inset Quotes erd
13746 in the normal font.
13747 You can get a negative width by prefixing the string with
13748 \begin_inset Quotes eld
13752 \begin_inset Flex Code
13755 \begin_layout Plain Layout
13762 \begin_inset Quotes erd
13766 This way was chosen so that the look is the same with each used screen
13770 \begin_layout Description
13771 \begin_inset Flex Code
13774 \begin_layout Plain Layout
13781 \begin_inset Flex Code
13784 \begin_layout Plain Layout
13789 , Manual, Dynamic, First_Dynamic, Right_Address_Box
13795 \begin_inset Newline newline
13798 The kind of margin that the style has on the left side.
13799 \begin_inset Separator latexpar
13806 \begin_layout Description
13807 \begin_inset Flex Code
13810 \begin_layout Plain Layout
13816 just means a fixed margin.
13819 \begin_layout Description
13820 \begin_inset Flex Code
13823 \begin_layout Plain Layout
13829 means that the left margin depends on the string entered in the
13830 \begin_inset Flex Noun
13833 \begin_layout Plain Layout
13834 Edit\SpecialChar menuseparator
13836 \begin_inset space ~
13845 This is used to typeset nice lists without tabulators.
13848 \begin_layout Description
13849 \begin_inset Flex Code
13852 \begin_layout Plain Layout
13858 means that the margin depends on the size of the label.
13859 This is used for automatic enumerated headlines.
13860 It is obvious that the headline
13861 \begin_inset Quotes eld
13864 5.4.3.2.1 Very long headline
13865 \begin_inset Quotes erd
13868 must have a wider left margin (as wide as
13869 \begin_inset Quotes eld
13873 \begin_inset Quotes erd
13876 plus the space) than
13877 \begin_inset Quotes eld
13880 3.2 Very long headline
13881 \begin_inset Quotes erd
13885 \begin_inset Quotes eld
13889 \begin_inset Quotes erd
13892 are not able to do this.
13895 \begin_layout Description
13896 \begin_inset Flex Code
13899 \begin_layout Plain Layout
13905 is similar, but only the very first row of the paragraph is dynamic, while
13906 the others are static; this is used, for example, for descriptions.
13909 \begin_layout Description
13910 \begin_inset Flex Code
13913 \begin_layout Plain Layout
13919 means the margin is chosen in a way that the longest row of this paragraph
13920 fits to the right margin.
13921 This is used to typeset an address on the right edge of the page.
13925 \begin_layout Description
13926 \begin_inset Flex Code
13929 \begin_layout Plain Layout
13936 \begin_inset Flex Code
13939 \begin_layout Plain Layout
13948 \begin_inset space \thinspace{}
13952 \begin_inset Flex Code
13955 \begin_layout Plain Layout
13961 ] Whether fragile commands in this style should be
13962 \begin_inset Flex Code
13965 \begin_layout Plain Layout
13978 whether this command should itself be protected.)
13981 \begin_layout Description
13982 \begin_inset Flex Code
13985 \begin_layout Plain Layout
13992 \begin_inset Flex Code
13995 \begin_layout Plain Layout
14002 \begin_inset space \thinspace{}
14006 \begin_inset Flex Code
14009 \begin_layout Plain Layout
14017 ] Whether newlines are translated into \SpecialChar LaTeX
14019 \begin_inset Flex Code
14022 \begin_layout Plain Layout
14033 The translation can be switched off to allow more comfortable \SpecialChar LaTeX
14035 inside \SpecialChar LyX
14039 \begin_layout Description
14040 \begin_inset Flex Code
14043 \begin_layout Plain Layout
14050 \begin_inset Flex Code
14053 \begin_layout Plain Layout
14062 \begin_inset space \thinspace{}
14066 \begin_inset Flex Code
14069 \begin_layout Plain Layout
14075 ] If set to true, and if
14076 \begin_inset Flex Code
14079 \begin_layout Plain Layout
14086 \begin_inset Flex Code
14089 \begin_layout Plain Layout
14095 ) paragraphs are being indented, then the indentation of such a paragraph
14096 following one of this type will be suppressed.
14097 (So this will not affect the display of non-default paragraphs.)
14100 \begin_layout Description
14101 \begin_inset Flex Code
14104 \begin_layout Plain Layout
14111 \begin_inset Flex Code
14114 \begin_layout Plain Layout
14120 ] Name of a style that has replaced this style.
14121 This is used to rename a style, while keeping backward compatibility.
14124 \begin_layout Description
14125 \begin_inset Flex Code
14128 \begin_layout Plain Layout
14135 \begin_inset Flex Code
14138 \begin_layout Plain Layout
14145 \begin_inset space \thinspace{}
14149 \begin_inset Flex Code
14152 \begin_layout Plain Layout
14158 ] Determines whether consecutive pragraphs of the same type are treated
14159 as belonging together.
14160 This has the effect that the
14161 \begin_inset Flex Code
14164 \begin_layout Plain Layout
14170 is only printed once before such a group.
14171 By default, this is true for
14172 \begin_inset Flex Code
14175 \begin_layout Plain Layout
14182 \begin_inset Flex Code
14185 \begin_layout Plain Layout
14192 \begin_inset Flex Code
14195 \begin_layout Plain Layout
14201 and false for all other types.
14204 \begin_layout Description
14205 \begin_inset Flex Code
14208 \begin_layout Plain Layout
14215 \begin_inset Flex Code
14218 \begin_layout Plain Layout
14227 \begin_inset space \thinspace{}
14231 \begin_inset Flex Code
14234 \begin_layout Plain Layout
14240 ] Indicates that paragraphs will not be separated by an empty line in \SpecialChar LaTeX
14242 but only by a line break; together with
14243 \begin_inset Flex Code
14246 \begin_layout Plain Layout
14252 , this allows to emulate a plain text editor (like the ERT inset).
14255 \begin_layout Description
14256 \begin_inset Flex Code
14259 \begin_layout Plain Layout
14266 \begin_inset Flex Code
14269 \begin_layout Plain Layout
14275 ] The indent of the very first line of a paragraph.
14277 \begin_inset Newline newline
14281 \begin_inset Flex Code
14284 \begin_layout Plain Layout
14290 will be fixed for a certain style.
14291 The exception is the default style, since the indentation for these paragraphs
14292 can be prohibited with
14293 \begin_inset Flex Code
14296 \begin_layout Plain Layout
14304 \begin_inset Flex Code
14307 \begin_layout Plain Layout
14313 style paragraphs inside environments use the
14314 \begin_inset Flex Code
14317 \begin_layout Plain Layout
14323 of the environment, not their native one.
14325 \begin_inset Flex Code
14328 \begin_layout Plain Layout
14334 paragraphs inside an enumeration are not indented.
14337 \begin_layout Description
14338 \begin_inset Flex Code
14341 \begin_layout Plain Layout
14348 \begin_inset Flex Code
14351 \begin_layout Plain Layout
14357 ] The vertical space between two paragraphs of this style.
14360 \begin_layout Description
14361 \begin_inset Flex Code
14364 \begin_layout Plain Layout
14371 \begin_inset Flex Code
14374 \begin_layout Plain Layout
14381 allows the user to choose either
14382 \begin_inset Quotes eld
14386 \begin_inset Quotes erd
14390 \begin_inset Quotes eld
14394 \begin_inset Quotes erd
14397 to separate paragraphs.
14399 \begin_inset Quotes eld
14403 \begin_inset Quotes erd
14407 \begin_inset Flex Code
14410 \begin_layout Plain Layout
14418 \begin_inset Quotes eld
14422 \begin_inset Quotes erd
14426 \begin_inset Flex Code
14429 \begin_layout Plain Layout
14435 is ignored and all paragraphs are separated by the
14436 \begin_inset Flex Code
14439 \begin_layout Plain Layout
14446 The vertical space is calculated with
14447 \begin_inset Flex Code
14450 \begin_layout Plain Layout
14452 \begin_inset space ~
14461 \begin_inset Flex Code
14464 \begin_layout Plain Layout
14470 is the height of a row with the normal font.
14471 This way, the look stays the same with different screen fonts.
14474 \begin_layout Description
14475 \begin_inset Flex Code
14478 \begin_layout Plain Layout
14485 \begin_inset Flex Code
14488 \begin_layout Plain Layout
14497 \begin_inset space \thinspace{}
14501 \begin_inset Flex Code
14504 \begin_layout Plain Layout
14510 ] Whether the contents of this paragraph should be output in raw form, meaning
14511 without special translations that \SpecialChar LaTeX
14515 \begin_layout Description
14516 \begin_inset Flex Code
14519 \begin_layout Plain Layout
14526 \begin_inset Flex Code
14529 \begin_layout Plain Layout
14539 Defines individual characters that should be output in raw form, meaning
14540 without special translations that \SpecialChar LaTeX
14544 \begin_layout Description
14545 \begin_inset Flex Code
14548 \begin_layout Plain Layout
14554 Information to be included in the \SpecialChar LaTeX
14555 preamble when this style is used.
14556 Used to define macros, load packages, etc., required by this particular
14559 \begin_inset Quotes eld
14563 \begin_inset Flex Code
14566 \begin_layout Plain Layout
14573 \begin_inset Quotes erd
14579 \begin_layout Description
14580 \begin_inset Flex Code
14583 \begin_layout Plain Layout
14590 \begin_inset Flex Code
14593 \begin_layout Plain Layout
14599 ] The prefix to use when creating labels referring to paragraphs of this
14601 This allows the use of formatted references.
14604 \begin_layout Description
14605 \begin_inset Flex Code
14608 \begin_layout Plain Layout
14615 \begin_inset Flex Code
14618 \begin_layout Plain Layout
14624 ] Whether the style requires the feature
14625 \begin_inset Flex Code
14628 \begin_layout Plain Layout
14635 \begin_inset CommandInset ref
14637 reference "chap:List-of-functions"
14641 for the list of features).
14642 If you require a package with specific options, you can additionally use
14644 \begin_inset Flex Code
14647 \begin_layout Plain Layout
14653 as a general text class parameter (see
14654 \begin_inset CommandInset ref
14656 reference "subsec:General-text-class"
14663 \begin_layout Description
14664 \begin_inset Flex Code
14667 \begin_layout Plain Layout
14674 \begin_inset Flex Code
14677 \begin_layout Plain Layout
14686 \begin_inset Flex Code
14689 \begin_layout Plain Layout
14695 ] Resets the \SpecialChar LaTeX
14696 arguments of this style (as defined via the
14697 \begin_inset Flex Code
14700 \begin_layout Plain Layout
14707 This is useful if you have copied a style via
14708 \begin_inset Flex Code
14711 \begin_layout Plain Layout
14717 , but you do not want to inherit its (required and optional) arguments.
14720 \begin_layout Description
14721 \begin_inset Flex Code
14724 \begin_layout Plain Layout
14731 \begin_inset Flex Code
14734 \begin_layout Plain Layout
14740 ] A string that is put at the end of the layout content.
14741 A line break in the output can be indicated by
14742 \begin_inset Flex Code
14745 \begin_layout Plain Layout
14754 \begin_layout Description
14755 \begin_inset Flex Code
14758 \begin_layout Plain Layout
14765 \begin_inset Flex Code
14768 \begin_layout Plain Layout
14775 \begin_inset Flex Code
14778 \begin_layout Plain Layout
14787 \begin_layout Description
14788 \begin_inset Flex Code
14791 \begin_layout Plain Layout
14798 \begin_inset Flex Code
14801 \begin_layout Plain Layout
14810 \begin_inset Flex Code
14813 \begin_layout Plain Layout
14820 \begin_inset Flex Code
14823 \begin_layout Plain Layout
14830 \begin_inset Flex Code
14833 \begin_layout Plain Layout
14835 \begin_inset space ~
14843 ] This defines what the default spacing should be in the style.
14845 \begin_inset Flex Code
14848 \begin_layout Plain Layout
14855 \begin_inset Flex Code
14858 \begin_layout Plain Layout
14865 \begin_inset Flex Code
14868 \begin_layout Plain Layout
14874 correspond respectively to a multiplier value of 1, 1.25 and 1.667.
14875 If you specify the argument
14876 \begin_inset Flex Code
14879 \begin_layout Plain Layout
14885 , then you must also provide a value argument which will be the actual multiplie
14887 Note that, contrary to other parameters,
14888 \begin_inset Flex Code
14891 \begin_layout Plain Layout
14897 implies the generation of specific \SpecialChar LaTeX
14898 code, using the \SpecialChar LaTeX
14902 \begin_inset Flex Code
14905 \begin_layout Plain Layout
14914 \begin_layout Description
14915 \begin_inset Flex Code
14918 \begin_layout Plain Layout
14925 \begin_inset Flex Code
14928 \begin_layout Plain Layout
14935 \begin_inset space \thinspace{}
14939 \begin_inset Flex Code
14942 \begin_layout Plain Layout
14950 ] Allow spell-checking paragraphs of this style.
14954 \begin_layout Description
14955 \begin_inset Flex Code
14958 \begin_layout Plain Layout
14964 The font used for the text body .
14966 \begin_inset CommandInset ref
14968 reference "subsec:Font-description"
14975 \begin_layout Description
14976 \begin_inset Flex Code
14979 \begin_layout Plain Layout
14988 \begin_inset Flex Code
14991 \begin_layout Plain Layout
15001 The level of the style in the table of contents.
15002 This is used for automatic numbering of section headings.
15005 \begin_layout Description
15006 \begin_inset Flex Code
15009 \begin_layout Plain Layout
15018 \begin_inset Flex Code
15021 \begin_layout Plain Layout
15032 \begin_inset Flex Code
15035 \begin_layout Plain Layout
15042 \begin_inset Flex Code
15045 \begin_layout Plain Layout
15051 ] This tag determines whether the first line indentation of this paragraph
15052 can be toggled via the Paragraph settings dialog.
15056 \begin_inset Flex Code
15059 \begin_layout Plain Layout
15069 is set, indentation can be toggled if the document settings use
15070 \begin_inset Quotes eld
15074 \begin_inset Quotes erd
15077 paragraph style, with
15078 \begin_inset Flex Code
15081 \begin_layout Plain Layout
15087 , indentation can always be toggled, notwithstanding the document settings,
15089 \begin_inset Flex Code
15092 \begin_layout Plain Layout
15098 , indentation can never be toggled.
15101 \begin_layout Description
15102 \begin_inset Flex Code
15105 \begin_layout Plain Layout
15112 \begin_inset Flex Code
15115 \begin_layout Plain Layout
15121 ] The vertical space with which the very first of a chain of paragraphs
15122 with this style is separated from the previous paragraph.
15123 If the previous paragraph has another style, the separations are not simply
15124 added, but the maximum is taken.
15127 \begin_layout Subsection
15128 \begin_inset CommandInset label
15134 Internationalization of Paragraph Styles
15137 \begin_layout Standard
15139 has long supported internationalization of layout information, but, until
15140 version 2.0, this applied only to the user interface and not to, say, PDF
15142 Thus, French authors were forced to resort to ugly hacks if they wanted
15147 1' instead of `Theorem 1'.
15148 Thanks to Georg Baum, that is no longer the case.
15151 \begin_layout Standard
15153 \begin_inset Flex Code
15156 \begin_layout Plain Layout
15162 defines text that is to appear in the typeset document, it may use
15163 \begin_inset Flex Code
15166 \begin_layout Plain Layout
15173 \begin_inset Flex Code
15176 \begin_layout Plain Layout
15182 to support non-English and even multi-language documents correctly.
15183 The following excerpt (from the
15184 \begin_inset Flex Code
15187 \begin_layout Plain Layout
15193 file) shows how this works:
15196 \begin_layout LyX-Code
15198 \begin_inset Separator latexpar
15205 \begin_layout LyX-Code
15208 theoremstyle{remark}
15211 \begin_layout LyX-Code
15214 newtheorem{claim}[thm]{
15221 \begin_layout LyX-Code
15225 \begin_layout LyX-Code
15229 \begin_layout LyX-Code
15234 claimname}{_(Claim)}
15237 \begin_layout LyX-Code
15241 \begin_layout LyX-Code
15245 \begin_layout LyX-Code
15254 claimname}{_(Claim)}}
15257 \begin_layout LyX-Code
15262 \begin_layout Standard
15263 In principle, any legal \SpecialChar LaTeX
15265 \begin_inset Flex Code
15268 \begin_layout Plain Layout
15275 \begin_inset Flex Code
15278 \begin_layout Plain Layout
15284 tags, but in practice they will typically look as they do here.
15285 The key to correct translation of the typeset text is the definition of
15286 the \SpecialChar LaTeX
15288 \begin_inset Flex Code
15291 \begin_layout Plain Layout
15300 \begin_inset Flex Code
15303 \begin_layout Plain Layout
15315 \begin_layout Standard
15317 \begin_inset Flex Code
15320 \begin_layout Plain Layout
15326 tag provides for internationalization based upon the overall language of
15328 The contents of the tag will be included in the preamble, just as with
15330 \begin_inset Flex Code
15333 \begin_layout Plain Layout
15340 What makes it special is the use of the
15341 \begin_inset Quotes eld
15345 \begin_inset Quotes erd
15349 \begin_inset Flex Code
15352 \begin_layout Plain Layout
15358 , which will be replaced, when \SpecialChar LyX
15359 produces \SpecialChar LaTeX
15360 output, with the translation of
15361 its argument into the document language.
15364 \begin_layout Standard
15366 \begin_inset Flex Code
15369 \begin_layout Plain Layout
15375 tag is more complex, since it is meant to provide support for multi-language
15376 documents and so offers an interface to the
15377 \begin_inset Flex Code
15380 \begin_layout Plain Layout
15387 Its contents will be added to the preamble once for each language that
15388 appears in the document.
15389 In this case, the argument to
15390 \begin_inset Flex Code
15393 \begin_layout Plain Layout
15399 will be replaced with its translation into the language in question; the
15401 \begin_inset Flex Code
15404 \begin_layout Plain Layout
15410 is replaced by the language name (as used by the babel package).
15413 \begin_layout Standard
15414 A German document that also included a French section would thus have the
15415 following in the preamble:
15418 \begin_layout LyX-Code
15427 claimname}{Affirmation}}
15428 \begin_inset Newline newline
15439 claimname}{Behauptung}}
15440 \begin_inset Newline newline
15447 claimname}{Behauptung}
15450 \begin_layout Standard
15453 \begin_inset Flex Code
15456 \begin_layout Plain Layout
15462 will then conspire to produce the correct text in the output.
15465 \begin_layout Standard
15466 One important point to note here is that the translations are provided by
15468 itself, through the file
15469 \begin_inset Flex Code
15472 \begin_layout Plain Layout
15479 This means, in effect, that
15480 \begin_inset Flex Code
15483 \begin_layout Plain Layout
15490 \begin_inset Flex Code
15493 \begin_layout Plain Layout
15499 are really only of use in layout files that are provided with \SpecialChar LyX
15501 entered in user-created layout files will not be seen by \SpecialChar LyX
15502 's internationalizatio
15503 n routines unless the
15504 \begin_inset Flex Code
15507 \begin_layout Plain Layout
15513 file is modified accordingly.
15514 That said, however, any layout created with the intention that it will
15515 be included with \SpecialChar LyX
15516 should use these tags where appropriate.
15517 Please note that the paragraph style translations provided by \SpecialChar LyX
15519 change with a minor update (e.
15520 \begin_inset space \thinspace{}
15524 \begin_inset space \space{}
15527 from version 2.1.x to 2.1.y).
15528 It is however quite likely that a major update (e.
15529 \begin_inset space \thinspace{}
15533 \begin_inset space \space{}
15536 from 2.0.x to 2.1.y) will introduce new translations or corrections.
15539 \begin_layout Subsection
15541 \begin_inset CommandInset label
15543 name "subsec:Floats"
15550 \begin_layout Standard
15551 It is necessary to define the floats (
15552 \begin_inset Flex Noun
15555 \begin_layout Plain Layout
15562 \begin_inset Flex Noun
15565 \begin_layout Plain Layout
15571 , \SpecialChar ldots
15572 ) in the text class itself.
15573 Standard floats are included in the file
15574 \begin_inset Flex Code
15577 \begin_layout Plain Layout
15583 , so you may have to do no more than add
15586 \begin_layout LyX-Code
15587 Input stdfloats.inc
15590 \begin_layout Standard
15591 to your layout file.
15592 If you want to implement a text class that proposes some other float types
15593 (like the AGU class bundled with \SpecialChar LyX
15594 ), the information below will hopefully
15598 \begin_layout Description
15599 \begin_inset Flex Code
15602 \begin_layout Plain Layout
15609 \begin_inset Flex Code
15612 \begin_layout Plain Layout
15618 =!htbpH] Allowed placement options for this float type.
15619 The value is a string of placement characters.
15620 Possible characters include:
15625 \begin_inset Quotes eld
15629 \begin_inset Quotes erd
15637 \begin_inset Quotes eld
15641 \begin_inset Quotes erd
15649 \begin_inset Quotes eld
15653 \begin_inset Quotes erd
15661 \begin_inset Quotes eld
15665 \begin_inset Quotes erd
15673 \begin_inset Quotes eld
15677 \begin_inset Quotes erd
15685 \begin_inset Quotes eld
15689 \begin_inset Quotes erd
15693 The order of the characters in the string does not matter.
15694 If no placement options are allowed, use the string
15701 \begin_layout Description
15702 \begin_inset Flex Code
15705 \begin_layout Plain Layout
15712 \begin_inset Flex Code
15715 \begin_layout Plain Layout
15724 \begin_inset space \thinspace{}
15730 \begin_inset Flex Code
15733 \begin_layout Plain Layout
15743 ] Defines whether the float allows to be rotated via the \SpecialChar LaTeX
15750 \begin_inset Flex Code
15753 \begin_layout Plain Layout
15759 if the float does not support this feature.
15762 \begin_layout Description
15763 \begin_inset Flex Code
15766 \begin_layout Plain Layout
15773 \begin_inset Flex Code
15776 \begin_layout Plain Layout
15785 \begin_inset space \thinspace{}
15791 \begin_inset Flex Code
15794 \begin_layout Plain Layout
15804 ] Defines whether the float has a starred variant that spans columns in
15805 a two column paragraph.
15807 \begin_inset Flex Code
15810 \begin_layout Plain Layout
15816 if the float does not support this feature.
15819 \begin_layout Description
15820 \begin_inset Flex Code
15823 \begin_layout Plain Layout
15830 \begin_inset Flex Code
15833 \begin_layout Plain Layout
15840 \begin_inset Quotes erd
15844 \begin_inset Quotes erd
15847 ] The file name extension of an auxiliary file for the list of figures (or
15850 writes the captions to this file.
15853 \begin_layout Description
15854 \begin_inset Flex Code
15857 \begin_layout Plain Layout
15864 \begin_inset Flex Code
15867 \begin_layout Plain Layout
15874 \begin_inset Quotes erd
15878 \begin_inset Quotes erd
15881 ] The string that will be used in the menus and also for the caption.
15882 This is translated to the current language if babel is used.
15885 \begin_layout Description
15886 \begin_inset Flex Code
15889 \begin_layout Plain Layout
15895 These tags control the XHTML output.
15897 \begin_inset CommandInset ref
15899 reference "sec:Tags-for-XHTML"
15906 \begin_layout Description
15907 \begin_inset Flex Code
15910 \begin_layout Plain Layout
15919 \begin_inset Flex Code
15922 \begin_layout Plain Layout
15931 \begin_inset space \thinspace{}
15935 \begin_inset Flex Code
15938 \begin_layout Plain Layout
15944 ] Indicates whether the float is already defined in the document class or
15945 if instead the \SpecialChar LaTeX
15947 \begin_inset Flex Code
15950 \begin_layout Plain Layout
15956 needs to be loaded to define it on-the-fly.
15958 \begin_inset Flex Code
15961 \begin_layout Plain Layout
15968 \begin_inset Flex Code
15971 \begin_layout Plain Layout
15978 It should be set to
15979 \begin_inset Flex Code
15982 \begin_layout Plain Layout
15988 if the float is already defined by the \SpecialChar LaTeX
15992 \begin_layout Description
15993 \begin_inset Flex Code
15996 \begin_layout Plain Layout
16003 \begin_inset Flex Code
16006 \begin_layout Plain Layout
16013 \begin_inset Quotes erd
16017 \begin_inset Quotes erd
16020 ] The command used to generate a list of floats of this type; the leading
16029 \begin_inset Flex Code
16032 \begin_layout Plain Layout
16038 is false, since there is no standard way to generate this command.
16040 \begin_inset Flex Code
16043 \begin_layout Plain Layout
16049 is true, since in that case there is a standard way to define the command.
16052 \begin_layout Description
16053 \begin_inset Flex Code
16056 \begin_layout Plain Layout
16063 \begin_inset Flex Code
16066 \begin_layout Plain Layout
16073 \begin_inset Quotes erd
16077 \begin_inset Quotes erd
16080 ] A title for a list of floats of this kind (list of figures, tables, or
16082 It is used for the screen label within \SpecialChar LyX
16083 , it is used by \SpecialChar LaTeX
16085 it is used as the title in the XHTML output.
16086 It will be translated to the document language.
16089 \begin_layout Description
16090 \begin_inset Flex Code
16093 \begin_layout Plain Layout
16100 \begin_inset Flex Code
16103 \begin_layout Plain Layout
16110 \begin_inset Quotes erd
16114 \begin_inset Quotes erd
16117 ] This (optional) argument determines whether floats of this class will
16118 be numbered within some sectional unit of the document.
16120 \begin_inset Flex Code
16123 \begin_layout Plain Layout
16130 \begin_inset Quotes eld
16134 \begin_inset Flex Code
16137 \begin_layout Plain Layout
16144 \begin_inset Quotes erd
16147 , the floats will be numbered within chapters.
16151 \begin_layout Description
16152 \begin_inset Flex Code
16155 \begin_layout Plain Layout
16162 \begin_inset Flex Code
16165 \begin_layout Plain Layout
16172 \begin_inset Quotes erd
16176 \begin_inset Quotes erd
16179 ] The default placement for the given class of floats.
16180 The string should be as in standard \SpecialChar LaTeX
16182 \begin_inset Flex Code
16185 \begin_layout Plain Layout
16192 \begin_inset Flex Code
16195 \begin_layout Plain Layout
16202 \begin_inset Flex Code
16205 \begin_layout Plain Layout
16212 \begin_inset Flex Code
16215 \begin_layout Plain Layout
16221 for top, bottom, page, and here, respectively.
16225 \begin_layout Plain Layout
16226 Note that the order of these letters in the string is irrelevant, like in
16233 On top of that there is a new type,
16234 \begin_inset Flex Code
16237 \begin_layout Plain Layout
16243 , which does not really correspond to a float, since it means: put it
16244 \begin_inset Quotes eld
16248 \begin_inset Quotes erd
16252 Note however that the
16253 \begin_inset Flex Code
16256 \begin_layout Plain Layout
16262 specifier is special and, because of implementation details, cannot be
16263 used in non-built in float types.
16264 If you do not understand what this means, just use
16265 \begin_inset Quotes eld
16269 \begin_inset Flex Code
16272 \begin_layout Plain Layout
16279 \begin_inset Quotes erd
16285 \begin_layout Description
16286 \begin_inset Flex Code
16289 \begin_layout Plain Layout
16296 \begin_inset Flex Code
16299 \begin_layout Plain Layout
16305 ] The prefix to use when creating labels referring to floats of this type.
16306 This allows the use of formatted references.
16307 Note that you can remove any
16308 \begin_inset Flex Code
16311 \begin_layout Plain Layout
16317 set by a copied style by using the special value
16318 \begin_inset Quotes eld
16322 \begin_inset Quotes erd
16325 , which must be all caps.
16328 \begin_layout Description
16329 \begin_inset Flex Code
16332 \begin_layout Plain Layout
16339 \begin_inset Flex Code
16342 \begin_layout Plain Layout
16349 \begin_inset Quotes erd
16353 \begin_inset Quotes erd
16356 ] The style used when defining the float using
16357 \begin_inset Flex Code
16360 \begin_layout Plain Layout
16371 \begin_layout Description
16372 \begin_inset Flex Code
16375 \begin_layout Plain Layout
16382 \begin_inset Flex Code
16385 \begin_layout Plain Layout
16392 \begin_inset Quotes erd
16396 \begin_inset Quotes erd
16400 \begin_inset Quotes eld
16404 \begin_inset Quotes erd
16407 of the new class of floats, like program or algorithm.
16408 After the appropriate
16409 \begin_inset Flex Code
16412 \begin_layout Plain Layout
16421 \begin_inset Flex Code
16424 \begin_layout Plain Layout
16433 \begin_inset Flex Code
16436 \begin_layout Plain Layout
16447 \begin_layout Description
16448 \begin_inset Flex Code
16451 \begin_layout Plain Layout
16458 \begin_inset Flex Code
16461 \begin_layout Plain Layout
16468 \begin_inset space \thinspace{}
16472 \begin_inset Flex Code
16475 \begin_layout Plain Layout
16483 ] Specifies whether this float is defined using the \SpecialChar LaTeX
16485 \begin_inset Flex Code
16488 \begin_layout Plain Layout
16494 , either by the class file, another package or on-the-fly by \SpecialChar LyX
16498 \begin_layout Standard
16499 Note that defining a float with type
16500 \begin_inset Flex Code
16503 \begin_layout Plain Layout
16511 automatically defines the corresponding counter with name
16512 \begin_inset Flex Code
16515 \begin_layout Plain Layout
16526 \begin_layout Subsection
16527 Flex insets and InsetLayout
16528 \begin_inset CommandInset label
16530 name "subsec:Flex-insets-and"
16537 \begin_layout Standard
16538 Flex insets come in three different kinds:
16541 \begin_layout Itemize
16543 \begin_inset Flex Code
16546 \begin_layout Plain Layout
16552 ): These define semantic markup corresponding to such \SpecialChar LaTeX
16554 \begin_inset Flex Code
16557 \begin_layout Plain Layout
16566 \begin_inset Flex Code
16569 \begin_layout Plain Layout
16580 \begin_layout Itemize
16582 \begin_inset Flex Code
16585 \begin_layout Plain Layout
16591 ): These can be used to define custom collapsible insets, similar to \SpecialChar TeX
16593 footnote, and the like.
16594 An obvious example is an endnote inset, which is defined in the
16595 \begin_inset Flex Code
16598 \begin_layout Plain Layout
16607 \begin_layout Itemize
16609 \begin_inset Flex Code
16612 \begin_layout Plain Layout
16618 ): For use with DocBook classes.
16621 \begin_layout Standard
16622 Flex insets are defined using the
16623 \begin_inset Flex Code
16626 \begin_layout Plain Layout
16632 tag, which shall be explained in a moment.
16635 \begin_layout Standard
16637 \begin_inset Flex Code
16640 \begin_layout Plain Layout
16646 tag also serves another function: It can be used to customize the general
16647 layout of many different types of insets.
16649 \begin_inset Flex Code
16652 \begin_layout Plain Layout
16658 can be used to customize the layout parameters for footnotes, marginal
16659 notes, note insets, \SpecialChar TeX
16660 code (ERT) insets, branches, listings, indexes, boxes,
16661 tables, algorithms, URLs, and captions, as well as to define Flex insets.
16664 \begin_layout Standard
16666 \begin_inset Flex Code
16669 \begin_layout Plain Layout
16675 definition must begin with a line of the form:
16678 \begin_layout LyX-Code
16682 \begin_layout Standard
16684 \begin_inset Flex Code
16687 \begin_layout Plain Layout
16693 indicates the inset whose layout is being defined, and here there are four
16697 \begin_layout Enumerate
16698 The layout for a pre-existing inset is being modified.
16699 In this case, can be
16700 \begin_inset Flex Code
16703 \begin_layout Plain Layout
16709 any one of the following:
16710 \begin_inset Flex Code
16713 \begin_layout Plain Layout
16720 \begin_inset Flex Code
16723 \begin_layout Plain Layout
16730 \begin_inset Flex Code
16733 \begin_layout Plain Layout
16740 \begin_inset Flex Code
16743 \begin_layout Plain Layout
16750 \begin_inset Flex Code
16753 \begin_layout Plain Layout
16760 \begin_inset Flex Code
16763 \begin_layout Plain Layout
16770 \begin_inset Flex Code
16773 \begin_layout Plain Layout
16780 \begin_inset Flex Code
16783 \begin_layout Plain Layout
16790 \begin_inset Flex Code
16793 \begin_layout Plain Layout
16800 \begin_inset Flex Code
16803 \begin_layout Plain Layout
16810 \begin_inset Flex Code
16813 \begin_layout Plain Layout
16820 \begin_inset Flex Code
16823 \begin_layout Plain Layout
16830 \begin_inset Flex Code
16833 \begin_layout Plain Layout
16840 \begin_inset Flex Code
16843 \begin_layout Plain Layout
16850 \begin_inset Flex Code
16853 \begin_layout Plain Layout
16860 \begin_inset Flex Code
16863 \begin_layout Plain Layout
16870 \begin_inset Flex Code
16873 \begin_layout Plain Layout
16880 \begin_inset Flex Code
16883 \begin_layout Plain Layout
16890 \begin_inset Flex Code
16893 \begin_layout Plain Layout
16900 \begin_inset Flex Code
16903 \begin_layout Plain Layout
16912 \begin_layout Enumerate
16913 The layout for a Flex inset is being defined.
16915 \begin_inset Flex Code
16918 \begin_layout Plain Layout
16924 must be of the form
16925 \begin_inset Quotes eld
16929 \begin_inset Flex Code
16932 \begin_layout Plain Layout
16939 \begin_inset Quotes erd
16943 \begin_inset Flex Code
16946 \begin_layout Plain Layout
16952 may be be any valid identifier not used by a pre-existing Flex inset.
16953 The identifier may include spaces, but in that case the whole thing must
16954 be wrapped in quotes.
16955 Note that the definition of a flex inset
16960 \begin_inset Flex Code
16963 \begin_layout Plain Layout
16969 entry, declaring which type of inset it defines.
16972 \begin_layout Enumerate
16973 The layout for user specific branch is being defined.
16975 \begin_inset Flex Code
16978 \begin_layout Plain Layout
16984 must be of the form
16985 \begin_inset Quotes eld
16989 \begin_inset Flex Code
16992 \begin_layout Plain Layout
16999 \begin_inset Quotes erd
17003 \begin_inset Flex Code
17006 \begin_layout Plain Layout
17012 may be be any valid identifier of branch defined in user's document.
17013 The identifier may include spaces, but in that case the whole thing must
17014 be wrapped in quotes.
17015 The main purpose of this feature is to allow \SpecialChar LaTeX
17016 wrapping around specific
17017 branches as user needs.
17020 \begin_layout Enumerate
17021 The layout of a user (or class) specific caption is being defined.
17023 \begin_inset Flex Code
17026 \begin_layout Plain Layout
17032 must be of the form
17033 \begin_inset Quotes eld
17037 \begin_inset Flex Code
17040 \begin_layout Plain Layout
17047 \begin_inset Quotes erd
17051 \begin_inset Flex Code
17054 \begin_layout Plain Layout
17060 specifies the name of the caption as it appears in the menu.
17061 Have a look at the standard caption (
17062 \begin_inset Flex Code
17065 \begin_layout Plain Layout
17071 ), the specific captions of the KOMA-Script classes (
17072 \begin_inset Flex Code
17075 \begin_layout Plain Layout
17082 \begin_inset Flex Code
17085 \begin_layout Plain Layout
17094 \begin_inset space ~
17100 \begin_inset Flex Code
17103 \begin_layout Plain Layout
17109 ) for applications.
17112 \begin_layout Standard
17114 \begin_inset Flex Code
17117 \begin_layout Plain Layout
17123 definition can contain the following entries:
17126 \begin_layout Description
17127 \begin_inset Flex Code
17130 \begin_layout Plain Layout
17137 \begin_inset Flex Code
17140 \begin_layout Plain Layout
17146 ] Defines argument number of a command\SpecialChar breakableslash
17147 environment associated with the current
17149 The definition must end with
17150 \begin_inset Flex Code
17153 \begin_layout Plain Layout
17161 \begin_inset CommandInset ref
17163 reference "subsec:Paragraph-Styles"
17170 \begin_layout Description
17171 \begin_inset Flex Code
17174 \begin_layout Plain Layout
17180 Preamble for changing language commands; see
17181 \begin_inset CommandInset ref
17183 reference "subsec:I18n"
17190 \begin_layout Description
17191 \begin_inset Flex Code
17194 \begin_layout Plain Layout
17201 \begin_inset Flex Code
17204 \begin_layout Plain Layout
17210 ] The color for the inset's background.
17212 \begin_inset CommandInset ref
17214 reference "chap:Names-of-colors"
17218 for a list of the available color names.
17221 \begin_layout Description
17222 \begin_inset Flex Code
17225 \begin_layout Plain Layout
17232 \begin_inset Flex Code
17235 \begin_layout Plain Layout
17244 \begin_inset space \thinspace{}
17248 \begin_inset Flex Code
17251 \begin_layout Plain Layout
17257 ] Whether to use the content of the inset as the label, when the inset is
17262 \begin_layout Description
17263 \begin_inset Flex Code
17266 \begin_layout Plain Layout
17273 \begin_inset Flex Code
17276 \begin_layout Plain Layout
17282 ] As with paragraph styles, see
17283 \begin_inset CommandInset ref
17285 reference "subsec:Paragraph-Styles"
17290 Note that you need to specify the complete type, e.
17291 \begin_inset space \thinspace{}
17295 \begin_inset space ~
17299 \begin_inset Flex Code
17302 \begin_layout Plain Layout
17303 CopyStyle Flex:<name>
17311 \begin_layout Description
17312 \begin_inset Flex Code
17315 \begin_layout Plain Layout
17322 \begin_inset Flex Code
17325 \begin_layout Plain Layout
17334 \begin_inset space \thinspace{}
17338 \begin_inset Flex Code
17341 \begin_layout Plain Layout
17347 ] Indicates whether the user may employ the Paragraph Settings dialog to
17348 customize the paragraph.
17351 \begin_layout Description
17352 \begin_inset Flex Code
17355 \begin_layout Plain Layout
17362 \begin_inset Flex Code
17365 \begin_layout Plain Layout
17372 \begin_inset Flex Code
17375 \begin_layout Plain Layout
17382 \begin_inset Flex Code
17385 \begin_layout Plain Layout
17391 , describing the rendering style used for the inset's frame and buttons.
17392 Footnotes generally use
17393 \begin_inset Flex Code
17396 \begin_layout Plain Layout
17402 , ERT insets generally
17403 \begin_inset Flex Code
17406 \begin_layout Plain Layout
17412 , and character styles
17413 \begin_inset Flex Code
17416 \begin_layout Plain Layout
17425 \begin_layout Description
17426 \begin_inset Flex Code
17429 \begin_layout Plain Layout
17436 \begin_inset Flex Code
17439 \begin_layout Plain Layout
17448 \begin_inset space \thinspace{}
17454 \begin_inset Flex Code
17457 \begin_layout Plain Layout
17466 \begin_inset Flex Code
17469 \begin_layout Plain Layout
17476 \begin_inset Flex Code
17479 \begin_layout Plain Layout
17486 Indicates whether the environment will stand on its own in the output or
17487 will appear inline with the surrounding text.
17488 If set to false, it is supposed that the \SpecialChar LaTeX
17489 environment ignores white space
17490 (including one newline character) after the
17491 \begin_inset Flex Code
17494 \begin_layout Plain Layout
17507 \begin_inset Flex Code
17510 \begin_layout Plain Layout
17526 \begin_layout Description
17527 \begin_inset Flex Code
17530 \begin_layout Plain Layout
17536 Required at the end of the
17537 \begin_inset Flex Code
17540 \begin_layout Plain Layout
17549 \begin_layout Description
17550 \begin_inset Flex Code
17553 \begin_layout Plain Layout
17559 The font used for both the text body
17565 \begin_inset CommandInset ref
17567 reference "subsec:Font-description"
17572 Note that defining this font automatically defines the
17573 \begin_inset Flex Code
17576 \begin_layout Plain Layout
17582 to the same value, so define this first and define
17583 \begin_inset Flex Code
17586 \begin_layout Plain Layout
17592 later if you want them to be different.
17595 \begin_layout Description
17596 \begin_inset Flex Code
17599 \begin_layout Plain Layout
17600 FixedWidthPreambleEncoding
17606 \begin_inset Flex Code
17609 \begin_layout Plain Layout
17618 \begin_inset space \thinspace{}
17622 \begin_inset Flex Code
17625 \begin_layout Plain Layout
17631 ] Force a fixed width encoding for the translated contents of
17632 \begin_inset Flex Code
17635 \begin_layout Plain Layout
17642 \begin_inset Flex Code
17645 \begin_layout Plain Layout
17651 code generated by this layout.
17652 This is needed for special \SpecialChar LaTeX
17657 that do not work with variable width encodings such as
17662 This setting is ignored if fully Unicode aware \SpecialChar LaTeX
17663 backends such as Xe\SpecialChar TeX
17665 Lua\SpecialChar TeX
17669 \begin_layout Description
17670 \begin_inset Flex Code
17673 \begin_layout Plain Layout
17674 ForceLocalFontSwitch
17680 \begin_inset Flex Code
17683 \begin_layout Plain Layout
17692 \begin_inset space \thinspace{}
17696 \begin_inset Flex Code
17699 \begin_layout Plain Layout
17705 ] When using babel, always use a local font switch (
17706 \begin_inset Flex Code
17709 \begin_layout Plain Layout
17717 ), never a global one (such as
17718 \begin_inset Flex Code
17721 \begin_layout Plain Layout
17732 \begin_layout Description
17733 \begin_inset Flex Code
17736 \begin_layout Plain Layout
17743 \begin_inset Flex Code
17746 \begin_layout Plain Layout
17755 \begin_inset space \thinspace{}
17759 \begin_inset Flex Code
17762 \begin_layout Plain Layout
17769 \begin_inset Quotes eld
17773 \begin_inset Quotes erd
17776 language, leading to Left-to-Right (Latin) output, e.
17777 \begin_inset space \thinspace{}
17781 \begin_inset space \space{}
17784 in \SpecialChar TeX
17789 \begin_layout Description
17790 \begin_inset Flex Code
17793 \begin_layout Plain Layout
17800 \begin_inset Flex Code
17803 \begin_layout Plain Layout
17812 \begin_inset space \thinspace{}
17816 \begin_inset Flex Code
17819 \begin_layout Plain Layout
17825 ] Force a a line break in the \SpecialChar LaTeX
17826 output before the inset starts and after
17828 This assures the inset itself is output on its own lines, for parsing purposes.
17831 \begin_layout Description
17832 \begin_inset Flex Code
17835 \begin_layout Plain Layout
17842 \begin_inset Flex Code
17845 \begin_layout Plain Layout
17854 \begin_inset space \thinspace{}
17858 \begin_inset Flex Code
17861 \begin_layout Plain Layout
17867 ] Indicates whether the
17868 \begin_inset Flex Code
17871 \begin_layout Plain Layout
17877 should be used or, instead, the user can change the paragraph style used
17882 \begin_layout Description
17883 \begin_inset Flex Code
17886 \begin_layout Plain Layout
17893 \begin_inset Flex Code
17896 \begin_layout Plain Layout
17905 \begin_inset space \thinspace{}
17909 \begin_inset Flex Code
17912 \begin_layout Plain Layout
17918 ] As with paragraph styles, see
17919 \begin_inset CommandInset ref
17921 reference "subsec:Paragraph-Styles"
17928 \begin_layout Description
17929 \begin_inset Flex Code
17932 \begin_layout Plain Layout
17938 These tags control the XHTML output.
17940 \begin_inset CommandInset ref
17942 reference "sec:Tags-for-XHTML"
17949 \begin_layout Description
17950 \begin_inset Flex Code
17953 \begin_layout Plain Layout
17960 \begin_inset Flex Code
17963 \begin_layout Plain Layout
17972 \begin_inset space \thinspace{}
17976 \begin_inset Flex Code
17979 \begin_layout Plain Layout
17985 ] Whether to include the contents of this inset in the strings generated
17986 for the `Outline' pane.
17987 One would not, for example, want the content of a footnote in a section
17988 header to be included in the TOC displayed in the outline, but one would
17989 normally want the content of a character style displayed.
17990 Default is false: not to include.
17993 \begin_layout Description
17994 \begin_inset Flex Code
17997 \begin_layout Plain Layout
18006 \begin_inset Flex Code
18009 \begin_layout Plain Layout
18018 \begin_inset space \thinspace{}
18022 \begin_inset Flex Code
18025 \begin_layout Plain Layout
18031 ] As with paragraph styles, see
18032 \begin_inset CommandInset ref
18034 reference "subsec:Paragraph-Styles"
18041 \begin_layout Description
18042 \begin_inset Flex Code
18045 \begin_layout Plain Layout
18051 The font used for the label.
18053 \begin_inset CommandInset ref
18055 reference "subsec:Font-description"
18060 Note that this definition can never appear before
18061 \begin_inset Flex Code
18064 \begin_layout Plain Layout
18070 , lest it be ineffective.
18073 \begin_layout Description
18074 \begin_inset Flex Code
18077 \begin_layout Plain Layout
18084 \begin_inset Flex Code
18087 \begin_layout Plain Layout
18094 \begin_inset Quotes erd
18098 \begin_inset Quotes erd
18101 ] What will be displayed on the button or elsewhere as the inset label.
18103 \begin_inset Flex Code
18106 \begin_layout Plain Layout
18114 \begin_inset Flex Code
18117 \begin_layout Plain Layout
18123 ) modify this label on the fly.
18126 \begin_layout Description
18127 \begin_inset Flex Code
18130 \begin_layout Plain Layout
18136 Language dependent preamble; see
18137 \begin_inset CommandInset ref
18139 reference "subsec:I18n"
18146 \begin_layout Description
18147 \begin_inset Flex Code
18150 \begin_layout Plain Layout
18157 \begin_inset Flex Code
18160 \begin_layout Plain Layout
18166 ] The name of the corresponding \SpecialChar LaTeX
18168 Either the environment or command name.
18171 \begin_layout Description
18172 \begin_inset Flex Code
18175 \begin_layout Plain Layout
18182 \begin_inset Flex Code
18185 \begin_layout Plain Layout
18191 ] The optional parameter for the corresponding
18192 \begin_inset Flex Code
18195 \begin_layout Plain Layout
18201 stuff, including possible bracket pairs like
18202 \begin_inset Flex Code
18205 \begin_layout Plain Layout
18212 This parameter cannot be changed from within \SpecialChar LyX
18214 \begin_inset Flex Code
18217 \begin_layout Plain Layout
18223 for customizable parameters).
18224 It will be output as is after all \SpecialChar LaTeX
18226 \begin_inset Flex Code
18229 \begin_layout Plain Layout
18238 \begin_layout Description
18239 \begin_inset Flex Code
18242 \begin_layout Plain Layout
18249 \begin_inset Flex Code
18252 \begin_layout Plain Layout
18253 Command, Environment, None
18258 ] How the style should be translated into \SpecialChar LaTeX
18263 \begin_layout Plain Layout
18264 \begin_inset Flex Code
18267 \begin_layout Plain Layout
18273 is perhaps a bit misleading, since these rules apply to SGML classes too.
18274 Visit the SGML class files for specific examples.
18280 \begin_inset Separator latexpar
18287 \begin_layout Description
18288 \begin_inset Flex Code
18291 \begin_layout Plain Layout
18297 means nothing special
18300 \begin_layout Description
18301 \begin_inset Flex Code
18304 \begin_layout Plain Layout
18311 \begin_inset Flex Code
18314 \begin_layout Plain Layout
18321 {\SpecialChar ldots
18330 \begin_layout Description
18331 \begin_inset Flex Code
18334 \begin_layout Plain Layout
18341 \begin_inset Flex Code
18344 \begin_layout Plain Layout
18351 }\SpecialChar ldots
18366 \begin_layout Standard
18367 Putting the last few things together, the \SpecialChar LaTeX
18368 output will be either:
18371 \begin_layout LyX-Code
18374 LatexName[LatexParam]{\SpecialChar ldots
18378 \begin_layout Standard
18382 \begin_layout LyX-Code
18385 begin{LatexName}[LatexParam] \SpecialChar ldots
18391 \begin_layout Standard
18392 depending upon the \SpecialChar LaTeX
18397 \begin_layout Description
18398 \begin_inset Flex Code
18401 \begin_layout Plain Layout
18408 \begin_inset Flex Code
18411 \begin_layout Plain Layout
18417 ] A string that is put at the beginning of the layout content.
18418 A line break in the output can be indicated by
18419 \begin_inset Flex Code
18422 \begin_layout Plain Layout
18431 \begin_layout Description
18432 \begin_inset Flex Code
18435 \begin_layout Plain Layout
18442 \begin_inset Flex Code
18445 \begin_layout Plain Layout
18452 \begin_inset Flex Code
18455 \begin_layout Plain Layout
18462 \begin_inset Flex Code
18465 \begin_layout Plain Layout
18472 \begin_inset Flex Code
18475 \begin_layout Plain Layout
18481 (indicating a dummy definition ending definitions of charstyles, etc).
18482 This entry is required in and is only meaningful for Flex insets.
18483 Among other things, it determines on which menu this inset will appear.
18485 \begin_inset Flex Code
18488 \begin_layout Plain Layout
18495 \begin_inset Flex Code
18498 \begin_layout Plain Layout
18504 will automatically set
18505 \begin_inset Flex Code
18508 \begin_layout Plain Layout
18515 \change_inserted 1414654397 1466538458
18517 \begin_inset Flex Code
18520 \begin_layout Plain Layout
18522 \change_inserted 1414654397 1466538457
18534 \begin_inset Flex Code
18537 \begin_layout Plain Layout
18544 \change_inserted 1414654397 1466538469
18546 \begin_inset Flex Code
18549 \begin_layout Plain Layout
18551 \change_inserted 1414654397 1466538468
18562 \begin_inset Flex Code
18565 \begin_layout Plain Layout
18571 insets by setting it
18576 \begin_inset Flex Code
18579 \begin_layout Plain Layout
18588 \begin_layout Description
18589 \begin_inset Flex Code
18592 \begin_layout Plain Layout
18599 \begin_inset Flex Code
18602 \begin_layout Plain Layout
18611 \begin_inset space \thinspace{}
18615 \begin_inset Flex Code
18618 \begin_layout Plain Layout
18624 ] Whether multiple paragraphs are permitted in this inset.
18626 \begin_inset Flex Code
18629 \begin_layout Plain Layout
18635 to the same value and
18636 \begin_inset Flex Code
18639 \begin_layout Plain Layout
18645 to the opposite value.
18646 These can be reset to other values, if they are used
18651 \begin_inset Flex Code
18654 \begin_layout Plain Layout
18664 \begin_layout Description
18665 \begin_inset Flex Code
18668 \begin_layout Plain Layout
18675 \begin_inset Flex Code
18678 \begin_layout Plain Layout
18687 \begin_inset space \thinspace{}
18691 \begin_inset Flex Code
18694 \begin_layout Plain Layout
18700 ] Whether fragile commands in this inset should be
18701 \begin_inset Flex Code
18704 \begin_layout Plain Layout
18717 whether the command should itself be protected.) Default is false.
18720 \begin_layout Description
18721 \begin_inset Flex Code
18724 \begin_layout Plain Layout
18731 \begin_inset Flex Code
18734 \begin_layout Plain Layout
18740 ] Deletes an existing
18741 \begin_inset Flex Code
18744 \begin_layout Plain Layout
18753 \begin_layout Description
18754 \begin_inset Flex Code
18757 \begin_layout Plain Layout
18764 \begin_inset Flex Code
18767 \begin_layout Plain Layout
18774 \begin_inset Flex Code
18777 \begin_layout Plain Layout
18783 that has replaced this
18784 \begin_inset Flex Code
18787 \begin_layout Plain Layout
18794 This is used to rename an
18795 \begin_inset Flex Code
18798 \begin_layout Plain Layout
18804 , while keeping backward compatibility.
18807 \begin_layout Description
18808 \begin_inset Flex Code
18811 \begin_layout Plain Layout
18818 \begin_inset Flex Code
18821 \begin_layout Plain Layout
18830 \begin_inset space \thinspace{}
18834 \begin_inset Flex Code
18837 \begin_layout Plain Layout
18843 ] As with paragraph styles, see
18844 \begin_inset CommandInset ref
18846 reference "subsec:Paragraph-Styles"
18854 \begin_layout Description
18855 \begin_inset Flex Code
18858 \begin_layout Plain Layout
18865 \begin_inset Flex Code
18868 \begin_layout Plain Layout
18877 \begin_inset space \thinspace{}
18881 \begin_inset Flex Code
18884 \begin_layout Plain Layout
18890 ] As with paragraph styles, see
18891 \begin_inset CommandInset ref
18893 reference "subsec:Paragraph-Styles"
18901 \begin_layout Description
18902 \begin_inset Flex Code
18905 \begin_layout Plain Layout
18911 As with paragraph styles, see
18912 \begin_inset CommandInset ref
18914 reference "subsec:Paragraph-Styles"
18921 \begin_layout Description
18922 \begin_inset Flex Code
18925 \begin_layout Plain Layout
18932 \begin_inset Flex Code
18935 \begin_layout Plain Layout
18941 ] The prefix to use when creating labels referring to insets of this type.
18942 This allows the use of formatted references.
18945 \begin_layout Description
18946 \begin_inset Flex Code
18949 \begin_layout Plain Layout
18956 \begin_inset Flex Code
18959 \begin_layout Plain Layout
18965 ] As with paragraph styles, see
18966 \begin_inset CommandInset ref
18968 reference "subsec:Paragraph-Styles"
18975 \begin_layout Description
18976 \begin_inset Flex Code
18979 \begin_layout Plain Layout
18986 \begin_inset Flex Code
18989 \begin_layout Plain Layout
18998 \begin_inset space \thinspace{}
19002 \begin_inset Flex Code
19005 \begin_layout Plain Layout
19011 ] Resets the \SpecialChar LaTeX
19012 arguments of this layout (as defined via the
19013 \begin_inset Flex Code
19016 \begin_layout Plain Layout
19023 This is useful if you have copied a style via
19024 \begin_inset Flex Code
19027 \begin_layout Plain Layout
19033 , but you do not want to inherit its (required and optional) arguments.
19036 \begin_layout Description
19037 \begin_inset Flex Code
19040 \begin_layout Plain Layout
19047 \begin_inset Flex Code
19050 \begin_layout Plain Layout
19057 \begin_inset space \thinspace{}
19061 \begin_inset Flex Code
19064 \begin_layout Plain Layout
19072 ] Whether this inset should use the font of its surrounding environment
19074 Default is false: use the font of the surrounding environment.
19077 \begin_layout Description
19078 \begin_inset Flex Code
19081 \begin_layout Plain Layout
19088 \begin_inset Flex Code
19091 \begin_layout Plain Layout
19097 ] A string that is put at the end of the layout content.
19098 A line break in the output can be indicated by
19099 \begin_inset Flex Code
19102 \begin_layout Plain Layout
19111 \begin_layout Description
19112 \begin_inset Flex Code
19115 \begin_layout Plain Layout
19122 \begin_inset Flex Code
19125 \begin_layout Plain Layout
19132 \begin_inset space \thinspace{}
19136 \begin_inset Flex Code
19139 \begin_layout Plain Layout
19147 ] Allow spell-checking the contents of this inset.
19151 \begin_layout Subsection
19153 \begin_inset CommandInset label
19155 name "subsec:Counters"
19162 \begin_layout Standard
19163 It is necessary to define the counters (
19164 \begin_inset Flex Noun
19167 \begin_layout Plain Layout
19174 \begin_inset Flex Noun
19177 \begin_layout Plain Layout
19183 , \SpecialChar ldots
19184 ) in the text class itself.
19185 The standard counters are defined in the file
19186 \begin_inset Flex Code
19189 \begin_layout Plain Layout
19195 , so you may have to do no more than add
19198 \begin_layout LyX-Code
19199 Input stdcounters.inc
19202 \begin_layout Standard
19203 to your layout file to get them to work.
19204 But if you want to define custom counters, then you can do so.
19205 The counter declaration must begin with:
19208 \begin_layout LyX-Code
19209 Counter CounterName
19212 \begin_layout Standard
19214 \begin_inset Flex Code
19217 \begin_layout Plain Layout
19223 ' is replaced by the name of the counter.
19224 And it must end with
19225 \begin_inset Quotes eld
19229 \begin_inset Flex Code
19232 \begin_layout Plain Layout
19239 \begin_inset Quotes erd
19243 The following parameters can also be used:
19246 \begin_layout Description
19247 \begin_inset Flex Code
19250 \begin_layout Plain Layout
19257 \begin_inset Flex Code
19260 \begin_layout Plain Layout
19266 ] Sets the initial value for the counter, to which it will be reset whenever
19268 Normally, one will want the default, 1.
19271 \begin_layout Description
19272 \begin_inset Flex Code
19275 \begin_layout Plain Layout
19282 \begin_inset Flex Code
19285 \begin_layout Plain Layout
19292 \begin_inset Quotes erd
19296 \begin_inset Quotes erd
19299 ] When defined, this string defines how the counter is displayed.
19300 Setting this value sets
19301 \begin_inset Flex Code
19304 \begin_layout Plain Layout
19305 LabelStringAppendix
19311 The following special constructs can be used in the string:
19312 \begin_inset Separator latexpar
19319 \begin_layout Itemize
19320 \begin_inset Flex Code
19323 \begin_layout Plain Layout
19331 will be replaced by the expansion of the
19332 \begin_inset Flex Code
19335 \begin_layout Plain Layout
19342 \begin_inset Flex Code
19345 \begin_layout Plain Layout
19346 LabelStringAppendix
19352 \begin_inset Flex Code
19355 \begin_layout Plain Layout
19365 \begin_layout Itemize
19366 counter values can be expressed using \SpecialChar LaTeX
19368 \begin_inset Newline newline
19372 \begin_inset Flex Code
19375 \begin_layout Plain Layout
19392 \begin_inset Flex Code
19395 \begin_layout Plain Layout
19407 \begin_layout Plain Layout
19417 Actually, the situation is a bit more complicated: any
19436 other than those described below will produce arabic numerals.
19437 It would not be surprising to see this change in the future.
19443 \begin_inset Flex Code
19446 \begin_layout Plain Layout
19452 : 1, 2, 3,\SpecialChar ldots
19454 \begin_inset Flex Code
19457 \begin_layout Plain Layout
19463 for lower-case letters: a, b, c, \SpecialChar ldots
19465 \begin_inset Flex Code
19468 \begin_layout Plain Layout
19474 for upper-case letters: A, B, C, \SpecialChar ldots
19476 \begin_inset Flex Code
19479 \begin_layout Plain Layout
19485 for lower-case roman numerals: i, ii, iii, \SpecialChar ldots
19487 \begin_inset Flex Code
19490 \begin_layout Plain Layout
19496 for upper-case roman numerals: I, II, III\SpecialChar ldots
19498 \begin_inset Flex Code
19501 \begin_layout Plain Layout
19507 for hebrew numerals.
19511 \begin_layout Standard
19512 If LabelString is not defined, a default value is constructed as follows:
19513 if the counter has a master counter
19514 \begin_inset Flex Code
19517 \begin_layout Plain Layout
19524 \begin_inset Flex Code
19527 \begin_layout Plain Layout
19534 \begin_inset Newline newline
19538 \begin_inset Flex Code
19541 \begin_layout Plain Layout
19551 is used; otherwise the string
19552 \begin_inset Flex Code
19555 \begin_layout Plain Layout
19566 \begin_layout Description
19567 \begin_inset Flex Code
19570 \begin_layout Plain Layout
19571 LabelStringAppendix
19577 \begin_inset Flex Code
19580 \begin_layout Plain Layout
19587 \begin_inset Quotes erd
19591 \begin_inset Quotes erd
19595 \begin_inset Flex Code
19598 \begin_layout Plain Layout
19604 , but for use in the Appendix.
19607 \begin_layout Description
19608 \begin_inset Flex Code
19611 \begin_layout Plain Layout
19618 \begin_inset Flex Code
19621 \begin_layout Plain Layout
19628 \begin_inset Quotes erd
19632 \begin_inset Quotes erd
19635 ] A format for use with formatted references to this counter.
19636 For example, one might want to have references to section numbers appear
19638 \begin_inset Quotes eld
19642 \begin_inset Quotes erd
19646 The string should contain
19647 \begin_inset Quotes eld
19651 \begin_inset Quotes erd
19655 This will be replaced by the counter number itself.
19656 So, for sections, it would be: Section ##.
19659 \begin_layout Description
19660 \begin_inset Flex Code
19663 \begin_layout Plain Layout
19670 \begin_inset Flex Code
19673 \begin_layout Plain Layout
19680 \begin_inset Quotes erd
19684 \begin_inset Quotes erd
19687 ] If this is set to the name of another counter, the present counter will
19688 be reset every time the other one is increased.
19690 \begin_inset Flex Code
19693 \begin_layout Plain Layout
19700 \begin_inset Flex Code
19703 \begin_layout Plain Layout
19712 \begin_layout Subsection
19714 \begin_inset CommandInset label
19716 name "subsec:Font-description"
19723 \begin_layout Standard
19724 A font description looks like this:
19727 \begin_layout LyX-Code
19741 \begin_layout LyX-Code
19745 \begin_layout LyX-Code
19749 \begin_layout Standard
19750 The following commands are available:
19753 \begin_layout Description
19754 \begin_inset Flex Code
19757 \begin_layout Plain Layout
19764 \begin_inset Flex Code
19767 \begin_layout Plain Layout
19776 \begin_inset Flex Code
19779 \begin_layout Plain Layout
19786 \begin_inset Flex Code
19789 \begin_layout Plain Layout
19796 \begin_inset Flex Code
19799 \begin_layout Plain Layout
19806 \begin_inset Flex Code
19809 \begin_layout Plain Layout
19816 \begin_inset Flex Code
19819 \begin_layout Plain Layout
19826 \begin_inset Flex Code
19829 \begin_layout Plain Layout
19836 \begin_inset Flex Code
19839 \begin_layout Plain Layout
19846 \begin_inset Flex Code
19849 \begin_layout Plain Layout
19856 \begin_inset Flex Code
19859 \begin_layout Plain Layout
19866 \begin_inset Flex Code
19869 \begin_layout Plain Layout
19876 \begin_inset Flex Code
19879 \begin_layout Plain Layout
19886 \begin_inset Flex Code
19889 \begin_layout Plain Layout
19896 \begin_inset Flex Code
19899 \begin_layout Plain Layout
19906 \begin_inset Flex Code
19909 \begin_layout Plain Layout
19916 \begin_inset Flex Code
19919 \begin_layout Plain Layout
19926 \begin_inset Flex Code
19929 \begin_layout Plain Layout
19936 \begin_inset Flex Code
19939 \begin_layout Plain Layout
19946 \begin_inset Flex Code
19949 \begin_layout Plain Layout
19956 \begin_inset Flex Code
19959 \begin_layout Plain Layout
19968 \begin_layout Description
19969 \begin_inset Flex Code
19972 \begin_layout Plain Layout
19979 \begin_inset Flex Code
19982 \begin_layout Plain Layout
19991 \begin_inset Flex Code
19994 \begin_layout Plain Layout
20001 \begin_inset Flex Code
20004 \begin_layout Plain Layout
20013 \begin_layout Description
20014 \begin_inset Flex Code
20017 \begin_layout Plain Layout
20024 \begin_inset Flex Code
20027 \begin_layout Plain Layout
20033 ] Valid arguments are:
20034 \begin_inset Flex Code
20037 \begin_layout Plain Layout
20044 \begin_inset Flex Code
20047 \begin_layout Plain Layout
20054 \begin_inset Flex Code
20057 \begin_layout Plain Layout
20064 \begin_inset Flex Code
20067 \begin_layout Plain Layout
20074 \begin_inset Flex Code
20077 \begin_layout Plain Layout
20084 \begin_inset Flex Code
20087 \begin_layout Plain Layout
20094 \begin_inset Flex Code
20097 \begin_layout Plain Layout
20104 \begin_inset Flex Code
20107 \begin_layout Plain Layout
20114 \begin_inset Flex Code
20117 \begin_layout Plain Layout
20124 \begin_inset Flex Code
20127 \begin_layout Plain Layout
20134 \begin_inset Flex Code
20137 \begin_layout Plain Layout
20144 \begin_inset Flex Code
20147 \begin_layout Plain Layout
20154 Each of these turns on or off the corresponding attribute.
20156 \begin_inset Flex Code
20159 \begin_layout Plain Layout
20165 turns on emphasis, and
20166 \begin_inset Flex Code
20169 \begin_layout Plain Layout
20177 \begin_inset Newline newline
20180 If the latter seems puzzling, remember that the font settings for the present
20181 context are generally inherited from the surrounding context.
20183 \begin_inset Flex Code
20186 \begin_layout Plain Layout
20192 would turn off the emphasis that was anyway in effect, say, in a theorem
20196 \begin_layout Description
20197 \begin_inset Flex Code
20200 \begin_layout Plain Layout
20207 \begin_inset Flex Code
20210 \begin_layout Plain Layout
20219 \begin_inset Flex Code
20222 \begin_layout Plain Layout
20231 \begin_layout Description
20232 \begin_inset Flex Code
20235 \begin_layout Plain Layout
20242 \begin_inset Flex Code
20245 \begin_layout Plain Layout
20254 \begin_inset Flex Code
20257 \begin_layout Plain Layout
20264 \begin_inset Flex Code
20267 \begin_layout Plain Layout
20274 \begin_inset Flex Code
20277 \begin_layout Plain Layout
20286 \begin_layout Description
20287 \begin_inset Flex Code
20290 \begin_layout Plain Layout
20297 \begin_inset Flex Code
20300 \begin_layout Plain Layout
20307 \begin_inset Flex Code
20310 \begin_layout Plain Layout
20317 \begin_inset Flex Code
20320 \begin_layout Plain Layout
20329 \begin_inset Flex Code
20332 \begin_layout Plain Layout
20339 \begin_inset Flex Code
20342 \begin_layout Plain Layout
20349 \begin_inset Flex Code
20352 \begin_layout Plain Layout
20359 \begin_inset Flex Code
20362 \begin_layout Plain Layout
20369 \begin_inset Flex Code
20372 \begin_layout Plain Layout
20381 \begin_layout Subsection
20382 \begin_inset CommandInset label
20384 name "subsec:Citation-format-description"
20388 Citation format description
20391 \begin_layout Standard
20393 \begin_inset Flex Code
20396 \begin_layout Plain Layout
20402 blocks are used to describe how bibliographic information should be displayed,
20403 both within \SpecialChar LyX
20404 itself (in the citation dialog and in tooltips, for example)
20405 and in XHTML output.
20406 Such a block might look like this:
20409 \begin_layout LyX-Code
20413 \begin_layout LyX-Code
20417 \begin_layout LyX-Code
20421 \begin_layout LyX-Code
20425 \begin_layout Standard
20426 The individual lines define how the bibliographic information associated
20427 with an article or book, respectively, is to be displayed, and such a definitio
20428 n can be given for any `entry type' that might be present in a Bib\SpecialChar TeX
20431 defines a default format in the source code that will be used if no specific
20432 definition has been given.
20434 predefines several formats in the file
20435 \begin_inset Flex Code
20438 \begin_layout Plain Layout
20444 , which is included in most of \SpecialChar LyX
20445 's document classes.
20448 \begin_layout Standard
20449 The definitions use a simple language that allows Bib\SpecialChar TeX
20450 keys to be replaced
20452 Keys should be enclosed in
20453 \begin_inset Flex Code
20456 \begin_layout Plain Layout
20463 \begin_inset Flex Code
20466 \begin_layout Plain Layout
20473 So a simple definition might look like this:
20476 \begin_layout LyX-Code
20478 \begin_inset Quotes eld
20482 \begin_inset Quotes erd
20488 \begin_layout Standard
20489 This would print the author, followed by a comma, followed by the title,
20490 in quotes, followed by a period.
20493 \begin_layout Standard
20494 Of course, sometimes you may want to print a key only if it exists.
20495 This can be done by using a conditional construction, such as:
20496 \begin_inset Flex Code
20499 \begin_layout Plain Layout
20501 \begin_inset space ~
20511 \begin_inset Flex Code
20514 \begin_layout Plain Layout
20520 key exists, then print
20521 \begin_inset Quotes eld
20525 \begin_inset space ~
20529 \begin_inset Quotes erd
20532 followed by the volume key.
20533 It is also possible to have an else clause in the conditional, such as:
20534 \begin_inset Newline newline
20538 \begin_inset Flex Code
20541 \begin_layout Plain Layout
20542 {%author%[[%author%]][[%editor%, ed.]]}
20548 \begin_inset Newline newline
20552 \begin_inset Flex Code
20555 \begin_layout Plain Layout
20561 key is printed if it exists; otherwise, the editor key is printed, followed
20563 \begin_inset Quotes eld
20567 \begin_inset space ~
20571 \begin_inset Quotes erd
20574 Note that the key is again enclosed in
20575 \begin_inset Flex Code
20578 \begin_layout Plain Layout
20584 signs; the entire conditional is enclosed in braces; and the if and else
20585 clauses are enclosed in double brackets,
20586 \begin_inset Quotes eld
20590 \begin_inset Flex Code
20593 \begin_layout Plain Layout
20600 \begin_inset Quotes eld
20604 \begin_inset Quotes eld
20608 \begin_inset Flex Code
20611 \begin_layout Plain Layout
20618 \begin_inset Quotes erd
20622 There must be no space between any of these.
20625 \begin_layout Standard
20626 There is one other piece of syntax available in definitions, which looks
20628 \begin_inset Flex Code
20631 \begin_layout Plain Layout
20638 This defines a piece of formatting information that is to be used when
20640 \begin_inset Quotes eld
20644 \begin_inset Quotes erd
20648 Obviously, we do not want to output HTML tags when writing plain text,
20649 so they should be wrapped in
20650 \begin_inset Quotes eld
20654 \begin_inset Quotes erd
20658 \begin_inset Quotes eld
20662 \begin_inset Quotes erd
20668 \begin_layout Standard
20669 Two special sorts of definitions are also possible in a
20670 \begin_inset Flex Code
20673 \begin_layout Plain Layout
20680 An example of the first would be:
20683 \begin_layout LyX-Code
20685 \begin_inset Quotes eld
20689 \begin_inset Quotes erd
20695 \begin_layout Standard
20696 This is an abbreviation, or macro, and it can be used by treating it as
20698 \begin_inset Flex Code
20701 \begin_layout Plain Layout
20710 \begin_inset Flex Code
20713 \begin_layout Plain Layout
20719 exactly as it would treat its definition.
20720 So, let us issue the obvious
20728 \begin_layout LyX-Code
20732 \begin_layout Standard
20733 or anything like it.
20735 shouldn't go into an infinite loop, but it may go into a long one before
20739 \begin_layout Standard
20740 The second sort of special definition might look like this:
20743 \begin_layout LyX-Code
20747 \begin_layout Standard
20748 This defines a translatable piece of text, which allows relevant parts of
20749 the bibliography to be translated.
20750 It can be included in a definition by treating it as a key:
20751 \begin_inset Flex Code
20754 \begin_layout Plain Layout
20761 Several of these are predefined in
20762 \begin_inset Flex Code
20765 \begin_layout Plain Layout
20772 Note that these are not macros, in the sense just defined.
20773 They will not be expanded.
20776 \begin_layout Standard
20777 So here then is an example that use all these features:
20778 \begin_inset VSpace defskip
20784 \begin_layout Standard
20788 !authoredit {%author%[[%author%, ]][[{%editor%[[%editor%, %_edtext%, ]]}]]}
20791 \begin_layout Standard
20792 \begin_inset VSpace defskip
20795 This defines a macro that prints the author, followed by a comma, if the
20797 \begin_inset Flex Code
20800 \begin_layout Plain Layout
20806 key is defined, or else prints the name of the editor, followed by the
20808 \begin_inset Flex Code
20811 \begin_layout Plain Layout
20817 or its translation (it is by default
20818 \begin_inset Quotes eld
20822 \begin_inset Quotes erd
20826 \begin_inset Flex Code
20829 \begin_layout Plain Layout
20836 Note that this is in fact defined in
20837 \begin_inset Flex Code
20840 \begin_layout Plain Layout
20846 , so you can use it in your own definitions, or re-definitions, if you load
20850 \begin_layout Section
20851 \begin_inset CommandInset label
20853 name "sec:Tags-for-XHTML"
20857 Tags for XHTML output
20860 \begin_layout Standard
20861 As with \SpecialChar LaTeX
20862 or DocBook, the format of \SpecialChar LyX
20863 's XHTML output is also controlled by
20864 layout information.
20865 In general, \SpecialChar LyX
20866 provides sensible defaults and, as mentioned earlier, it will
20867 even construct default CSS style rules from the other layout tags.
20868 For example, \SpecialChar LyX
20869 will attempt to use the information provided in the
20870 \begin_inset Flex Code
20873 \begin_layout Plain Layout
20879 declaration for the Chapter style to write CSS that will appropriately
20880 format chapter headings.
20883 \begin_layout Standard
20884 In many cases, then, you may not have to do anything at all to get acceptable
20885 XHTML output for your own environments, custom insets, and so forth.
20886 But in some cases you will, and so \SpecialChar LyX
20887 provides a number of layout tags that
20888 can be used to customize the XHTML and CSS that are generated.
20891 \begin_layout Standard
20892 Note that there are two tags,
20893 \begin_inset Flex Code
20896 \begin_layout Plain Layout
20903 \begin_inset Flex Code
20906 \begin_layout Plain Layout
20912 that may appear outside style and inset declarations.
20914 \begin_inset CommandInset ref
20916 reference "subsec:General-text-class"
20920 for details on these.
20923 \begin_layout Subsection
20924 \begin_inset CommandInset label
20926 name "subsec:Paragraph-Style-XHTML"
20933 \begin_layout Standard
20934 The sort of XHTML \SpecialChar LyX
20935 outputs for a paragraph depends upon whether we are dealing
20936 with a normal paragraph, a command, or an environment, where this is itself
20937 determined by the contents of the corresponding
20938 \begin_inset Flex Code
20941 \begin_layout Plain Layout
20952 \begin_layout Standard
20953 For a command or normal paragraph, the output XHTML has the following form:
20956 \begin_layout LyX-Code
20958 \begin_inset Quotes erd
20962 \begin_inset Quotes erd
20968 \begin_layout LyX-Code
20970 \begin_inset Quotes erd
20974 \begin_inset Quotes erd
20980 \begin_layout LyX-Code
20981 Contents of the paragraph.
20984 \begin_layout LyX-Code
20988 \begin_layout Standard
20989 The label tags are of course omitted if the paragraph does not have a label.
20992 \begin_layout Standard
20993 For an environment that is not some sort of list, the XHTML takes this form:
20996 \begin_layout LyX-Code
20998 \begin_inset Quotes erd
21002 \begin_inset Quotes erd
21008 \begin_layout LyX-Code
21010 \begin_inset Quotes erd
21014 \begin_inset Quotes erd
21018 \begin_inset Quotes erd
21022 \begin_inset Quotes erd
21025 >Environment Label</labeltag>First paragraph.</itemtag>
21028 \begin_layout LyX-Code
21029 <itemtag>Second paragraph.</itemtag>
21032 \begin_layout LyX-Code
21036 \begin_layout Standard
21037 Note that the label is output only for the first paragraph, as it should
21038 be for a theorem, for example.
21042 \begin_layout Standard
21043 For a list, we have one of these forms:
21046 \begin_layout LyX-Code
21048 \begin_inset Quotes erd
21052 \begin_inset Quotes erd
21058 \begin_layout LyX-Code
21060 \begin_inset Quotes erd
21064 \begin_inset Quotes erd
21068 \begin_inset Quotes erd
21072 \begin_inset Quotes erd
21075 >List Label</labeltag>First item.</itemtag>
21078 \begin_layout LyX-Code
21080 \begin_inset Quotes erd
21084 \begin_inset Quotes erd
21088 \begin_inset Quotes erd
21092 \begin_inset Quotes erd
21095 >List Label</labeltag>Second item.</itemtag>
21098 \begin_layout LyX-Code
21102 \begin_layout LyX-Code
21106 \begin_layout LyX-Code
21108 \begin_inset Quotes erd
21112 \begin_inset Quotes erd
21118 \begin_layout LyX-Code
21120 \begin_inset Quotes erd
21124 \begin_inset Quotes erd
21127 >List Label</labeltag><itemtag attr=
21128 \begin_inset Quotes erd
21132 \begin_inset Quotes erd
21135 >First item.</itemtag>
21138 \begin_layout LyX-Code
21140 \begin_inset Quotes erd
21144 \begin_inset Quotes erd
21147 >List Label</labeltag><itemtag attr=
21148 \begin_inset Quotes erd
21152 \begin_inset Quotes erd
21155 >Second item.</itemtag>
21158 \begin_layout LyX-Code
21162 \begin_layout Standard
21163 Note the different orders of
21164 \begin_inset Flex Code
21167 \begin_layout Plain Layout
21174 \begin_inset Flex Code
21177 \begin_layout Plain Layout
21184 Which order we get depends upon the setting of
21185 \begin_inset Flex Code
21188 \begin_layout Plain Layout
21195 \begin_inset Flex Code
21198 \begin_layout Plain Layout
21204 is false (the default), you get the first of these, with the label within
21205 the item; if true, you get the second, with the label outside the item.
21208 \begin_layout Standard
21209 The specific tags and attributes output for each paragraph type can be controlle
21210 d by means of the layout tags we are about to describe.
21211 As mentioned earlier, however, \SpecialChar LyX
21212 uses sensible defaults for many of these,
21213 so you often may not need to do very much to get good XHTML output.
21214 Think of the available tags as there so you can tweak things to your liking.
21217 \begin_layout Description
21218 \begin_inset Flex Code
21221 \begin_layout Plain Layout
21228 \begin_inset Flex Code
21231 \begin_layout Plain Layout
21237 ] Specifies attribute information to be output with the main tag.
21239 \begin_inset Quotes eld
21243 \begin_inset Flex Code
21246 \begin_layout Plain Layout
21253 \begin_inset Quotes erd
21257 By default, \SpecialChar LyX
21259 \begin_inset Quotes eld
21263 \begin_inset Flex Code
21266 \begin_layout Plain Layout
21273 \begin_inset Quotes erd
21277 \begin_inset Flex Code
21280 \begin_layout Plain Layout
21286 is the \SpecialChar LyX
21287 name of the layout, made lowercase, for example: chapter.
21292 contain any style information.
21294 \begin_inset Flex Code
21297 \begin_layout Plain Layout
21306 \begin_layout Description
21307 \begin_inset Flex Code
21310 \begin_layout Plain Layout
21317 \begin_inset Flex Code
21320 \begin_layout Plain Layout
21330 ] Whether to output the default CSS information \SpecialChar LyX
21331 generates for this layout,
21332 even if additional information is explicitly provided via
21333 \begin_inset Flex Code
21336 \begin_layout Plain Layout
21344 \begin_inset Flex Code
21347 \begin_layout Plain Layout
21353 allows you to alter or augment the generated CSS, rather than to override
21356 \begin_inset Flex Code
21359 \begin_layout Plain Layout
21368 \begin_layout Description
21369 \begin_inset Flex Code
21372 \begin_layout Plain Layout
21379 \begin_inset Flex Code
21382 \begin_layout Plain Layout
21388 ] The tag to be used for individual paragraphs of environments, replacing
21390 \begin_inset Flex Code
21393 \begin_layout Plain Layout
21399 in the examples above.
21401 \begin_inset Flex Code
21404 \begin_layout Plain Layout
21413 \begin_layout Description
21414 \begin_inset Flex Code
21417 \begin_layout Plain Layout
21424 \begin_inset Flex Code
21427 \begin_layout Plain Layout
21433 ] Attributes for the item tag.
21435 \begin_inset Quotes eld
21439 \begin_inset Flex Code
21442 \begin_layout Plain Layout
21443 class=`layoutname_item'
21449 \begin_inset Quotes erd
21457 contain any style information.
21459 \begin_inset Flex Code
21462 \begin_layout Plain Layout
21471 \begin_layout Description
21472 \begin_inset Flex Code
21475 \begin_layout Plain Layout
21482 \begin_inset Flex Code
21485 \begin_layout Plain Layout
21491 ] The tag to be used for paragraph and item labels, replacing
21492 \begin_inset Flex Code
21495 \begin_layout Plain Layout
21501 in the examples above.
21503 \begin_inset Flex Code
21506 \begin_layout Plain Layout
21513 \begin_inset Flex Code
21516 \begin_layout Plain Layout
21523 \begin_inset Flex Code
21526 \begin_layout Plain Layout
21533 \begin_inset Flex Code
21536 \begin_layout Plain Layout
21537 Centered_Top_Environment
21542 , in which case it defaults to
21543 \begin_inset Flex Code
21546 \begin_layout Plain Layout
21555 \begin_layout Description
21556 \begin_inset Flex Code
21559 \begin_layout Plain Layout
21566 \begin_inset Flex Code
21569 \begin_layout Plain Layout
21575 ] Attributes for the label tag.
21577 \begin_inset Quotes eld
21581 \begin_inset Flex Code
21584 \begin_layout Plain Layout
21585 class=`layoutname_label'
21591 \begin_inset Quotes erd
21599 contain any style information.
21601 \begin_inset Flex Code
21604 \begin_layout Plain Layout
21613 \begin_layout Description
21614 \begin_inset Flex Code
21617 \begin_layout Plain Layout
21624 \begin_inset Flex Code
21627 \begin_layout Plain Layout
21637 ] Meaningful only for list-like environments, this tag controls whether
21638 the label tag is output before or inside the item tag.
21639 This is used, for example, in the description environment, where we want
21641 \begin_inset Flex Code
21644 \begin_layout Plain Layout
21645 <dt>\SpecialChar ldots
21646 </dt><dd>\SpecialChar ldots
21654 \begin_inset Flex Code
21657 \begin_layout Plain Layout
21663 : The label tag is output inside the item tag.
21666 \begin_layout Description
21667 \begin_inset Flex Code
21670 \begin_layout Plain Layout
21676 Information to be output in the
21677 \begin_inset Flex Code
21680 \begin_layout Plain Layout
21686 section when this style is used.
21687 This might, for example, be used to include a
21688 \begin_inset Flex Code
21691 \begin_layout Plain Layout
21698 \begin_inset Flex Code
21701 \begin_layout Plain Layout
21710 \begin_layout Description
21711 \begin_inset Flex Code
21714 \begin_layout Plain Layout
21720 CSS style information to be included when this style is used.
21721 Note that this will automatically be wrapped in a layout-generated
21722 \begin_inset Flex Code
21725 \begin_layout Plain Layout
21731 block, so only the CSS itself need be included.
21733 \begin_inset Flex Code
21736 \begin_layout Plain Layout
21745 \begin_layout Description
21746 \begin_inset Flex Code
21749 \begin_layout Plain Layout
21756 \begin_inset Flex Code
21759 \begin_layout Plain Layout
21765 ] The tag to be used for the main label, replacing
21766 \begin_inset Flex Code
21769 \begin_layout Plain Layout
21775 in the examples above.
21777 \begin_inset Flex Code
21780 \begin_layout Plain Layout
21789 \begin_layout Description
21790 \begin_inset Flex Code
21793 \begin_layout Plain Layout
21800 \begin_inset Flex Code
21803 \begin_layout Plain Layout
21813 ] Marks this style as the one to be used to generate the
21814 \begin_inset Flex Code
21817 \begin_layout Plain Layout
21823 tag for the XHTML file.
21824 By default, it is false.
21826 \begin_inset Flex Code
21829 \begin_layout Plain Layout
21835 file sets it to true for the
21836 \begin_inset Flex Code
21839 \begin_layout Plain Layout
21849 \begin_layout Subsection
21853 \begin_layout Standard
21854 The XHTML output of insets can also be controlled by information in layout
21859 \begin_layout Plain Layout
21860 At present, this is true only for
21861 \begin_inset Quotes eld
21865 \begin_inset Quotes erd
21868 insets (insets you can type into) and is not true for
21869 \begin_inset Quotes eld
21873 \begin_inset Quotes erd
21876 insets (insets that are associated with dialog boxes).
21881 Here, too, \SpecialChar LyX
21882 tries to provide sensible defaults, and it constructs default
21884 But everything can be customized.
21887 \begin_layout Standard
21888 The XHTML \SpecialChar LyX
21889 outputs for an inset has the following form:
21892 \begin_layout LyX-Code
21894 \begin_inset Quotes erd
21898 \begin_inset Quotes erd
21904 \begin_layout LyX-Code
21905 <labeltag>Label</labeltag>
21908 \begin_layout LyX-Code
21910 \begin_inset Quotes erd
21914 \begin_inset Quotes erd
21917 >Contents of the inset.</innertag>
21920 \begin_layout LyX-Code
21924 \begin_layout Standard
21925 If the inset permits multiple paragraphs—that is, if
21926 \begin_inset Flex Code
21929 \begin_layout Plain Layout
21935 is true—then the contents of the inset will itself be output as paragraphs
21936 formatted according to the styles used for those paragraphs (standard,
21937 quote, and the like).
21938 The label tag is of course omitted if the paragraph does not have a label
21939 and, at present, is always
21940 \begin_inset Flex Code
21943 \begin_layout Plain Layout
21950 The inner tag is optional and, by default, does not appear.
21953 \begin_layout Standard
21954 The specific tags and attributes output for each inset can be controlled
21955 by means of the following layout tags.
21958 \begin_layout Description
21959 \begin_inset Flex Code
21962 \begin_layout Plain Layout
21969 \begin_inset Flex Code
21972 \begin_layout Plain Layout
21978 ] Specifies attribute information to be output with the main tag.
21980 \begin_inset Quotes eld
21984 \begin_inset Flex Code
21987 \begin_layout Plain Layout
21988 class=`myinset' onclick=`\SpecialChar ldots
21995 \begin_inset Quotes erd
21999 By default, \SpecialChar LyX
22001 \begin_inset Quotes eld
22005 \begin_inset Flex Code
22008 \begin_layout Plain Layout
22015 \begin_inset Quotes erd
22019 \begin_inset Flex Code
22022 \begin_layout Plain Layout
22028 is the \SpecialChar LyX
22029 name of the inset, made lowercase and with non-alphanumeric characters
22030 converted to underscores, for example: footnote.
22033 \begin_layout Description
22034 \begin_inset Flex Code
22037 \begin_layout Plain Layout
22044 \begin_inset Flex Code
22047 \begin_layout Plain Layout
22057 ] Whether to output the default CSS information \SpecialChar LyX
22058 generates for this layout,
22059 even if additional information is explicitly provided via
22060 \begin_inset Flex Code
22063 \begin_layout Plain Layout
22071 \begin_inset Flex Code
22074 \begin_layout Plain Layout
22080 allows you to alter or augment the generated CSS, rather than to override
22085 \begin_layout Description
22086 \begin_inset Flex Code
22089 \begin_layout Plain Layout
22096 \begin_inset Flex Code
22099 \begin_layout Plain Layout
22105 ] Attributes for the inner tag.
22107 \begin_inset Quotes eld
22111 \begin_inset Flex Code
22114 \begin_layout Plain Layout
22115 class=`insetname_inner'
22121 \begin_inset Quotes erd
22127 \begin_layout Description
22128 \begin_inset Flex Code
22131 \begin_layout Plain Layout
22138 \begin_inset Flex Code
22141 \begin_layout Plain Layout
22147 ] The inner tag, replacing
22148 \begin_inset Flex Code
22151 \begin_layout Plain Layout
22157 in the examples above.
22158 By default, there is none.
22161 \begin_layout Description
22162 \begin_inset Flex Code
22165 \begin_layout Plain Layout
22172 \begin_inset Flex Code
22175 \begin_layout Plain Layout
22183 ] Whether this inset represents a standalone block of text (such as a footnote)
22184 or instead represents material that is included in the surrounding text
22185 (such as a branch).
22189 \begin_layout Description
22190 \begin_inset Flex Code
22193 \begin_layout Plain Layout
22200 \begin_inset Flex Code
22203 \begin_layout Plain Layout
22209 ] A label for this inset, possibly including a reference to a counter.
22210 For example, for footnote, it might be:
22211 \begin_inset Flex Code
22214 \begin_layout Plain Layout
22223 This is optional, and there is no default.
22226 \begin_layout Description
22227 \begin_inset Flex Code
22230 \begin_layout Plain Layout
22236 Information to be output in the
22237 \begin_inset Flex Code
22240 \begin_layout Plain Layout
22246 section when this style is used.
22247 This might, for example, be used to include a
22248 \begin_inset Flex Code
22251 \begin_layout Plain Layout
22258 \begin_inset Flex Code
22261 \begin_layout Plain Layout
22270 \begin_layout Description
22271 \begin_inset Flex Code
22274 \begin_layout Plain Layout
22280 CSS style information to be included when this style is used.
22281 Note that this will automatically be wrapped in a layout-generated
22282 \begin_inset Flex Code
22285 \begin_layout Plain Layout
22291 block, so only the CSS itself need be included.
22294 \begin_layout Description
22295 \begin_inset Flex Code
22298 \begin_layout Plain Layout
22305 \begin_inset Flex Code
22308 \begin_layout Plain Layout
22314 ] The tag to be used for the main label, replacing
22315 \begin_inset Flex Code
22318 \begin_layout Plain Layout
22324 in the examples above.
22325 The default depends upon the setting of
22326 \begin_inset Flex Code
22329 \begin_layout Plain Layout
22336 \begin_inset Flex Code
22339 \begin_layout Plain Layout
22345 is true, the default is
22346 \begin_inset Flex Code
22349 \begin_layout Plain Layout
22355 ; if it is false, the default is
22356 \begin_inset Flex Code
22359 \begin_layout Plain Layout
22368 \begin_layout Subsection
22372 \begin_layout Standard
22373 The XHTML output for floats too can be controlled by layout information.
22374 The output has the following form:
22377 \begin_layout LyX-Code
22379 \begin_inset Quotes erd
22383 \begin_inset Quotes erd
22389 \begin_layout LyX-Code
22390 Contents of the float.
22393 \begin_layout LyX-Code
22397 \begin_layout Standard
22398 The caption, if there is one, is a separate inset and will be output as
22400 Its appearance can be controlled via the InsetLayout for caption insets.
22404 \begin_layout Description
22405 \begin_inset Flex Code
22408 \begin_layout Plain Layout
22415 \begin_inset Flex Code
22418 \begin_layout Plain Layout
22424 ] Specifies attribute information to be output with the main tag.
22426 \begin_inset Quotes eld
22430 \begin_inset Flex Code
22433 \begin_layout Plain Layout
22434 class=`myfloat' onclick=`\SpecialChar ldots
22441 \begin_inset Quotes erd
22445 By default, \SpecialChar LyX
22447 \begin_inset Quotes eld
22451 \begin_inset Flex Code
22454 \begin_layout Plain Layout
22455 class=`float float-floattype'
22461 \begin_inset Quotes erd
22465 \begin_inset Flex Code
22468 \begin_layout Plain Layout
22474 is \SpecialChar LyX
22475 's name for this type of float, as determined by the float declaration
22477 \begin_inset CommandInset ref
22479 reference "subsec:Floats"
22483 ), though made lowercase and with non-alphanumeric characters converted
22484 to underscores, for example: float-table.
22487 \begin_layout Description
22488 \begin_inset Flex Code
22491 \begin_layout Plain Layout
22497 CSS style information to be included when this float is used.
22498 Note that this will automatically be wrapped in a layout-generated
22499 \begin_inset Flex Code
22502 \begin_layout Plain Layout
22508 block, so only the CSS itself need be included.
22511 \begin_layout Description
22512 \begin_inset Flex Code
22515 \begin_layout Plain Layout
22522 \begin_inset Flex Code
22525 \begin_layout Plain Layout
22531 ] The tag to be used for this float, replacing
22532 \begin_inset Quotes eld
22536 \begin_inset Flex Code
22539 \begin_layout Plain Layout
22546 \begin_inset Quotes erd
22549 in the example above.
22551 \begin_inset Flex Code
22554 \begin_layout Plain Layout
22560 and will rarely need changing.
22563 \begin_layout Subsection
22564 Bibliography formatting
22567 \begin_layout Standard
22568 The bibliography can be formatted using
22569 \begin_inset Flex Code
22572 \begin_layout Plain Layout
22580 \begin_inset CommandInset ref
22582 reference "subsec:Citation-format-description"
22589 \begin_layout Subsection
22594 \begin_layout Standard
22595 We have several times mentioned that \SpecialChar LyX
22596 will generate default CSS style rules
22597 for both insets and paragraph styles, based upon the other layout information
22599 In this section, we shall say a word about which layout information \SpecialChar LyX
22604 \begin_layout Standard
22605 At present, \SpecialChar LyX
22606 auto-generates CSS only for font information, making use of
22608 \begin_inset Flex Code
22611 \begin_layout Plain Layout
22618 \begin_inset Flex Code
22621 \begin_layout Plain Layout
22628 \begin_inset Flex Code
22631 \begin_layout Plain Layout
22638 \begin_inset Flex Code
22641 \begin_layout Plain Layout
22648 \begin_inset Flex Code
22651 \begin_layout Plain Layout
22658 \begin_inset CommandInset ref
22660 reference "subsec:Font-description"
22665 The translation is mostly straightforward and obvious.
22667 \begin_inset Quotes eld
22671 \begin_inset Flex Code
22674 \begin_layout Plain Layout
22681 \begin_inset Quotes erd
22685 \begin_inset Quotes eld
22689 \begin_inset Flex Code
22692 \begin_layout Plain Layout
22693 font-family: sans-serif;
22699 \begin_inset Quotes erd
22703 The correspondence of \SpecialChar LyX
22704 sizes and CSS sizes is a little less obvious but
22705 nonetheless intuitive.
22707 \begin_inset Flex Code
22710 \begin_layout Plain Layout
22717 \begin_inset Flex URL
22720 \begin_layout Plain Layout
22730 \begin_layout Chapter
22731 Including External Material
22732 \begin_inset CommandInset label
22734 name "chap:Including-External-Material"
22741 \begin_layout Standard
22742 \begin_inset Box Shadowbox
22752 height_special "totalheight"
22757 backgroundcolor "none"
22760 \begin_layout Plain Layout
22761 WARNING: This portion of the documentation has not been updated for some
22763 We certainly hope that it is still accurate, but there are no guarantees.
22771 \begin_layout Standard
22772 The use of material from sources external to \SpecialChar LyX
22773 is covered in detail in the
22779 This part of the manual covers what needs to happen behind the scenes for
22780 new sorts of material to be included.
22783 \begin_layout Section
22787 \begin_layout Standard
22788 The external material feature is based on the concept of a
22793 A template is a specification of how \SpecialChar LyX
22794 should interface with a certain kind
22796 As bundled, \SpecialChar LyX
22797 comes with predefined templates for Xfig figures, various
22798 raster format images, chess diagrams, and LilyPond music notation.
22799 You can check the actual list by using the menu
22800 \begin_inset Flex Noun
22803 \begin_layout Plain Layout
22804 Insert\SpecialChar menuseparator
22805 File\SpecialChar menuseparator
22812 Furthermore, it is possible to roll your own template to support a specific
22814 Later we'll describe in more detail what is involved, and hopefully you
22815 will submit all the templates you create so we can include them in a later
22820 \begin_layout Standard
22821 Another basic idea of the external material feature is to distinguish between
22822 the original file that serves as a base for final material and the produced
22823 file that is included in your exported or printed document.
22824 For example, consider the case of a figure produced with
22825 \begin_inset Flex Code
22828 \begin_layout Plain Layout
22835 The Xfig application itself works on an original file with the
22836 \begin_inset Flex Code
22839 \begin_layout Plain Layout
22846 Within Xfig, you create and change your figure, and when you are done,
22848 \begin_inset Flex Code
22851 \begin_layout Plain Layout
22858 When you want to include the figure in your document, you invoke
22859 \begin_inset Flex Code
22862 \begin_layout Plain Layout
22868 in order to create a PostScript file that can readily be included in your
22872 \begin_inset Flex Code
22875 \begin_layout Plain Layout
22881 file is the original file, and the PostScript file is the produced file.
22884 \begin_layout Standard
22885 This distinction is important in order to allow updating of the material
22886 while you are in the process of writing the document.
22887 Furthermore, it provides us with the flexibility that is needed to support
22888 multiple export formats.
22889 For instance, in the case of a plain text file, it is not exactly an award-winn
22890 ing idea to include the figure as raw PostScript.
22891 Instead, you would either prefer to just include a reference to the figure
22892 or try to invoke some graphics to ASCII converter to make the final result
22893 look similar to the real graphics.
22894 The external material management allows you to do this, because it is parametri
22895 zed on the different export formats that \SpecialChar LyX
22899 \begin_layout Standard
22900 Besides supporting the production of different products according to the
22901 exported format, it supports tight integration with editing and viewing
22903 In the case of an Xfig figure, you are able to invoke Xfig on the original
22904 file with a single click from within the external material dialog in \SpecialChar LyX
22906 and also preview the produced PostScript file with Ghostview with another
22908 No more fiddling around with the command line and/or file browsers to locate
22909 and manipulate the original or produced files.
22910 In this way, you are finally able to take full advantage of the many different
22911 applications that are relevant to use when you write your documents, and
22912 ultimately be more productive.
22915 \begin_layout Section
22916 The external template configuration file
22919 \begin_layout Standard
22920 It is relatively easy to add custom external template definitions to \SpecialChar LyX
22922 However, be aware that doing this in an careless manner most probably
22926 introduce an easily exploitable security hole.
22927 So before you do this, please read the discussion about security in
22928 \begin_inset CommandInset ref
22930 reference "sec:Security-discussion"
22937 \begin_layout Standard
22938 Having said that, we encourage you to submit any interesting templates that
22943 \begin_layout Standard
22944 The external templates are defined in the
22945 \begin_inset Flex Code
22948 \begin_layout Plain Layout
22949 LyXDir/lib/external_templates
22955 You can place your own version in
22956 \begin_inset Flex Code
22959 \begin_layout Plain Layout
22960 UserDir/external_templates
22968 \begin_layout Standard
22969 A typical template looks like this:
22972 \begin_layout LyX-Code
22976 \begin_layout LyX-Code
22977 GuiName "XFig: $$AbsOrRelPathParent$$Basename"
22980 \begin_layout LyX-Code
22984 \begin_layout LyX-Code
22988 \begin_layout LyX-Code
22992 \begin_layout LyX-Code
22996 \begin_layout LyX-Code
23000 \begin_layout LyX-Code
23001 AutomaticProduction true
23004 \begin_layout LyX-Code
23008 \begin_layout LyX-Code
23012 \begin_layout LyX-Code
23013 Format \SpecialChar LaTeX
23017 \begin_layout LyX-Code
23018 TransformCommand Rotate RotationLatexCommand
23021 \begin_layout LyX-Code
23022 TransformCommand Resize ResizeLatexCommand
23025 \begin_layout LyX-Code
23026 Product "$$RotateFront$$ResizeFront
23029 \begin_layout LyX-Code
23034 input{$$AbsOrRelPathMaster$$Basename.pstex_t}
23037 \begin_layout LyX-Code
23038 $$ResizeBack$$RotateBack"
23041 \begin_layout LyX-Code
23045 \begin_layout LyX-Code
23046 UpdateResult "$$AbsPath$$Basename.pstex_t"
23049 \begin_layout LyX-Code
23050 Requirement "graphicx"
23053 \begin_layout LyX-Code
23054 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
23057 \begin_layout LyX-Code
23058 ReferencedFile latex "$$AbsPath$$Basename.eps"
23061 \begin_layout LyX-Code
23062 ReferencedFile dvi "$$AbsPath$$Basename.eps"
23065 \begin_layout LyX-Code
23069 \begin_layout LyX-Code
23070 Format PDF\SpecialChar LaTeX
23074 \begin_layout LyX-Code
23075 TransformCommand Rotate RotationLatexCommand
23078 \begin_layout LyX-Code
23079 TransformCommand Resize ResizeLatexCommand
23082 \begin_layout LyX-Code
23083 Product "$$RotateFront$$ResizeFront
23086 \begin_layout LyX-Code
23091 input{$$AbsOrRelPathMaster$$Basename.pdftex_t}
23094 \begin_layout LyX-Code
23095 $$ResizeBack$$RotateBack"
23098 \begin_layout LyX-Code
23099 UpdateFormat pdftex
23102 \begin_layout LyX-Code
23103 UpdateResult "$$AbsPath$$Basename.pdftex_t"
23106 \begin_layout LyX-Code
23107 Requirement "graphicx"
23110 \begin_layout LyX-Code
23111 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pdftex_t"
23114 \begin_layout LyX-Code
23115 ReferencedFile latex "$$AbsPath$$Basename.pdf"
23118 \begin_layout LyX-Code
23122 \begin_layout LyX-Code
23126 \begin_layout LyX-Code
23127 Product "$$Contents(
23129 "$$AbsPath$$Basename.asc
23134 \begin_layout LyX-Code
23135 UpdateFormat asciixfig
23138 \begin_layout LyX-Code
23139 UpdateResult "$$AbsPath$$Basename.asc"
23142 \begin_layout LyX-Code
23146 \begin_layout LyX-Code
23150 \begin_layout LyX-Code
23151 Product "<graphic fileref=
23153 "$$AbsOrRelPathMaster$$Basename.eps
23158 \begin_layout LyX-Code
23162 \begin_layout LyX-Code
23166 \begin_layout LyX-Code
23167 UpdateResult "$$AbsPath$$Basename.eps"
23170 \begin_layout LyX-Code
23171 ReferencedFile docbook "$$AbsPath$$Basename.eps"
23174 \begin_layout LyX-Code
23175 ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
23178 \begin_layout LyX-Code
23182 \begin_layout LyX-Code
23183 Product "[XFig: $$FName]"
23186 \begin_layout LyX-Code
23190 \begin_layout LyX-Code
23194 \begin_layout Standard
23195 As you can see, the template is enclosed in
23196 \begin_inset Flex Code
23199 \begin_layout Plain Layout
23207 \begin_inset Flex Code
23210 \begin_layout Plain Layout
23217 It contains a header specifying some general settings and, for each supported
23218 primary document file format, a section
23219 \begin_inset Flex Code
23222 \begin_layout Plain Layout
23230 \begin_inset Flex Code
23233 \begin_layout Plain Layout
23242 \begin_layout Subsection
23243 The template header
23246 \begin_layout Description
23247 \begin_inset Flex Code
23250 \begin_layout Plain Layout
23251 AutomaticProduction
23252 \begin_inset space ~
23260 Whether the file represented by the template must be generated by \SpecialChar LyX
23262 This command must occur exactly once.
23265 \begin_layout Description
23266 \begin_inset Flex Code
23269 \begin_layout Plain Layout
23271 \begin_inset space ~
23279 A glob pattern that is used in the file dialog to filter out the desired
23281 If there is more than one possible file extension (e.
23282 \begin_inset space \thinspace{}
23286 \begin_inset space \space{}
23290 \begin_inset Flex Code
23293 \begin_layout Plain Layout
23300 \begin_inset Flex Code
23303 \begin_layout Plain Layout
23309 ), use something like
23310 \begin_inset Flex Code
23313 \begin_layout Plain Layout
23320 This command must occur exactly once.
23323 \begin_layout Description
23324 \begin_inset Flex Code
23327 \begin_layout Plain Layout
23329 \begin_inset space ~
23337 The text that is displayed on the button.
23338 This command must occur exactly once.
23341 \begin_layout Description
23342 \begin_inset Flex Code
23345 \begin_layout Plain Layout
23347 \begin_inset space ~
23351 \begin_inset space ~
23359 The help text that is used in the External dialog.
23360 Provide enough information to explain to the user just what the template
23361 can provide him with.
23362 This command must occur exactly once.
23365 \begin_layout Description
23366 \begin_inset Flex Code
23369 \begin_layout Plain Layout
23371 \begin_inset space ~
23379 The file format of the original file.
23380 This must be the name of a format that is known to \SpecialChar LyX
23382 \begin_inset CommandInset ref
23384 reference "sec:Formats"
23390 \begin_inset Quotes eld
23394 \begin_inset Flex Code
23397 \begin_layout Plain Layout
23404 \begin_inset Quotes erd
23407 if the template can handle original files of more than one format.
23409 will attempt to interrogate the file itself in order to deduce its format
23411 This command must occur exactly once.
23414 \begin_layout Description
23415 \begin_inset Flex Code
23418 \begin_layout Plain Layout
23420 \begin_inset space ~
23428 A unique name for the template.
23429 It must not contain substitution macros (see below).
23432 \begin_layout Description
23433 \begin_inset Flex Code
23436 \begin_layout Plain Layout
23438 \begin_inset space ~
23441 Rotate|Resize|Clip|Extra
23446 This command specifies which transformations are supported by this template.
23447 It may occur zero or more times.
23448 This command enables the corresponding tabs in the external dialog.
23450 \begin_inset Flex Code
23453 \begin_layout Plain Layout
23459 command must have either a corresponding
23460 \begin_inset Flex Code
23463 \begin_layout Plain Layout
23470 \begin_inset Flex Code
23473 \begin_layout Plain Layout
23480 \begin_inset Flex Code
23483 \begin_layout Plain Layout
23490 Otherwise the transformation will not be supported by that format.
23493 \begin_layout Subsection
23497 \begin_layout Description
23498 \begin_inset Flex Code
23501 \begin_layout Plain Layout
23503 \begin_inset space ~
23506 LaTeX|PDFLaTeX|PlainText|DocBook
23511 The primary document file format that this format definition is for.
23512 Not every template has a sensible representation in all document file formats.
23513 Please define nevertheless a
23514 \begin_inset Flex Code
23517 \begin_layout Plain Layout
23523 section for all templates.
23524 Use a dummy text when no representation is available.
23525 Then you can at least see a reference to the external material in the exported
23529 \begin_layout Description
23530 \begin_inset Flex Code
23533 \begin_layout Plain Layout
23535 \begin_inset space ~
23539 \begin_inset space ~
23547 This command defines an additional macro
23548 \begin_inset Flex Code
23551 \begin_layout Plain Layout
23557 for substitution in
23558 \begin_inset Flex Code
23561 \begin_layout Plain Layout
23569 \begin_inset Flex Code
23572 \begin_layout Plain Layout
23578 itself may contain substitution macros.
23579 The advantage over using
23580 \begin_inset Flex Code
23583 \begin_layout Plain Layout
23590 \begin_inset Flex Code
23593 \begin_layout Plain Layout
23599 is that the substituted value of
23600 \begin_inset Flex Code
23603 \begin_layout Plain Layout
23609 is sanitized so that it is a valid optional argument in the document format.
23610 This command may occur zero or more times.
23613 \begin_layout Description
23614 \begin_inset Flex Code
23617 \begin_layout Plain Layout
23619 \begin_inset space ~
23627 The text that is inserted in the exported document.
23628 This is actually the most important command and can be quite complex.
23629 This command must occur exactly once.
23632 \begin_layout Description
23633 \begin_inset Flex Code
23636 \begin_layout Plain Layout
23638 \begin_inset space ~
23646 This command specifies a preamble snippet that will be included in the
23649 It has to be defined using
23650 \begin_inset Flex Code
23653 \begin_layout Plain Layout
23661 \begin_inset Flex Code
23664 \begin_layout Plain Layout
23671 This command may occur zero or more times.
23674 \begin_layout Description
23675 \begin_inset Flex Code
23678 \begin_layout Plain Layout
23680 \begin_inset space ~
23684 \begin_inset space ~
23692 This command denotes files that are created by the conversion process and
23693 are needed for a particular export format.
23694 If the filename is relative, it is interpreted relative to the master document.
23695 This command may be given zero or more times.
23698 \begin_layout Description
23699 \begin_inset Flex Code
23702 \begin_layout Plain Layout
23704 \begin_inset space ~
23712 The name of a required \SpecialChar LaTeX
23714 The package is included via
23715 \begin_inset Flex Code
23718 \begin_layout Plain Layout
23726 in the \SpecialChar LaTeX
23728 This command may occur zero or more times.
23731 \begin_layout Description
23732 \begin_inset Flex Code
23735 \begin_layout Plain Layout
23737 \begin_inset space ~
23741 \begin_inset space ~
23744 RotationLatexCommand
23749 This command specifies that the built in \SpecialChar LaTeX
23750 command should be used for rotation.
23751 This command may occur once or not at all.
23754 \begin_layout Description
23755 \begin_inset Flex Code
23758 \begin_layout Plain Layout
23760 \begin_inset space ~
23764 \begin_inset space ~
23772 This command specifies that the built in \SpecialChar LaTeX
23773 command should be used for resizing.
23774 This command may occur once or not at all.
23777 \begin_layout Description
23778 \begin_inset Flex Code
23781 \begin_layout Plain Layout
23783 \begin_inset space ~
23787 \begin_inset space ~
23790 RotationLatexOption
23795 This command specifies that rotation is done via an optional argument.
23796 This command may occur once or not at all.
23799 \begin_layout Description
23800 \begin_inset Flex Code
23803 \begin_layout Plain Layout
23805 \begin_inset space ~
23809 \begin_inset space ~
23817 This command specifies that resizing is done via an optional argument.
23818 This command may occur once or not at all.
23821 \begin_layout Description
23822 \begin_inset Flex Code
23825 \begin_layout Plain Layout
23827 \begin_inset space ~
23831 \begin_inset space ~
23839 This command specifies that clipping is done via an optional argument.
23840 This command may occur once or not at all.
23843 \begin_layout Description
23844 \begin_inset Flex Code
23847 \begin_layout Plain Layout
23849 \begin_inset space ~
23853 \begin_inset space ~
23861 This command specifies that an extra optional argument is used.
23862 This command may occur once or not at all.
23865 \begin_layout Description
23866 \begin_inset Flex Code
23869 \begin_layout Plain Layout
23871 \begin_inset space ~
23879 The file format of the converted file.
23880 This must be the name of a format that is known to \SpecialChar LyX
23882 \begin_inset Flex Noun
23885 \begin_layout Plain Layout
23886 Tools\SpecialChar menuseparator
23887 Preferences\SpecialChar menuseparator
23888 File Handling\SpecialChar menuseparator
23895 This command must occur exactly once.
23896 If the resulting file format is PDF, you need to specify the format
23897 \begin_inset Flex Code
23900 \begin_layout Plain Layout
23907 This is the PDF format used for including graphics.
23908 The other defined PDF formats are for document export.
23911 \begin_layout Description
23912 \begin_inset Flex Code
23915 \begin_layout Plain Layout
23917 \begin_inset space ~
23925 The file name of the converted file.
23926 The file name must be absolute.
23927 This command must occur exactly once.
23930 \begin_layout Subsection
23931 Preamble definitions
23934 \begin_layout Standard
23935 The external template configuration file may contain additional preamble
23936 definitions enclosed by
23937 \begin_inset Flex Code
23940 \begin_layout Plain Layout
23948 \begin_inset Flex Code
23951 \begin_layout Plain Layout
23958 They can be used by the templates in the
23959 \begin_inset Flex Code
23962 \begin_layout Plain Layout
23971 \begin_layout Section
23972 The substitution mechanism
23975 \begin_layout Standard
23976 When the external material facility invokes an external program, it is done
23977 on the basis of a command defined in the template configuration file.
23978 These commands can contain various macros that are expanded before execution.
23979 Execution always take place in the directory of the containing document.
23982 \begin_layout Standard
23983 Also, whenever external material is to be displayed, the name will be produced
23984 by the substitution mechanism, and most other commands in the template
23985 definition support substitution as well.
23988 \begin_layout Standard
23989 The available macros are the following:
23992 \begin_layout Description
23993 \begin_inset Flex Code
23996 \begin_layout Plain Layout
23997 $$AbsOrRelPathMaster
24002 The file path, absolute or relative to the master \SpecialChar LyX
24006 \begin_layout Description
24007 \begin_inset Flex Code
24010 \begin_layout Plain Layout
24011 $$AbsOrRelPathParent
24016 The file path, absolute or relative to the \SpecialChar LyX
24020 \begin_layout Description
24021 \begin_inset Flex Code
24024 \begin_layout Plain Layout
24030 The absolute file path.
24033 \begin_layout Description
24034 \begin_inset Flex Code
24037 \begin_layout Plain Layout
24043 The filename without path and without the extension.
24046 \begin_layout Description
24047 \begin_inset Flex Code
24050 \begin_layout Plain Layout
24052 \begin_inset Quotes eld
24056 \begin_inset Quotes erd
24064 This macro will expand to the contents of the file with the name
24065 \begin_inset Flex Code
24068 \begin_layout Plain Layout
24077 \begin_layout Description
24078 \begin_inset Flex Code
24081 \begin_layout Plain Layout
24087 The file extension (including the dot).
24090 \begin_layout Description
24091 \begin_inset Flex Code
24094 \begin_layout Plain Layout
24100 This will be the string
24101 \begin_inset Quotes eld
24105 \begin_inset Quotes erd
24108 if the file is in JPEG format, otherwise it will be the string
24109 \begin_inset Quotes eld
24113 \begin_inset Quotes erd
24117 This is useful to avoid uneeded conversions for output formats that support
24118 both PNG and JPEG fomats.
24119 The predefined RasterImage template uses this macro for the pdf\SpecialChar TeX
24124 \begin_layout Description
24125 \begin_inset Flex Code
24128 \begin_layout Plain Layout
24134 The filename of the file specified in the external material dialog.
24135 This is either an absolute name, or it is relative to the \SpecialChar LyX
24139 \begin_layout Description
24140 \begin_inset Flex Code
24143 \begin_layout Plain Layout
24150 \begin_inset Flex Code
24153 \begin_layout Plain Layout
24159 (absolute name or relative to the \SpecialChar LyX
24163 \begin_layout Description
24164 \begin_inset Flex Code
24167 \begin_layout Plain Layout
24173 The file path, relative to the master \SpecialChar LyX
24177 \begin_layout Description
24178 \begin_inset Flex Code
24181 \begin_layout Plain Layout
24187 The file path, relative to the \SpecialChar LyX
24191 \begin_layout Description
24192 \begin_inset Flex Code
24195 \begin_layout Plain Layout
24201 This macro will expand to the absolute path of the system directory.
24202 This is typically used to point to the various helper scripts that are
24203 bundled with \SpecialChar LyX
24207 \begin_layout Description
24208 \begin_inset Flex Code
24211 \begin_layout Plain Layout
24217 A name and full path to a temporary file which will be automatically deleted
24218 whenever the containing document is closed, or the external material insertion
24222 \begin_layout Standard
24223 All path macros contain a trailing directory separator, so you can construct
24225 \begin_inset space \thinspace{}
24229 \begin_inset space \space{}
24232 the absolute filename with
24233 \begin_inset Flex Code
24236 \begin_layout Plain Layout
24237 $$AbsPath$$Basename$$Extension
24245 \begin_layout Standard
24246 The macros above are substituted in all commands unless otherwise noted.
24248 \begin_inset Flex Code
24251 \begin_layout Plain Layout
24257 supports additionally the following substitutions if they are enabled by
24259 \begin_inset Flex Code
24262 \begin_layout Plain Layout
24269 \begin_inset Flex Code
24272 \begin_layout Plain Layout
24281 \begin_layout Description
24282 \begin_inset Flex Code
24285 \begin_layout Plain Layout
24291 The front part of the resize command.
24294 \begin_layout Description
24295 \begin_inset Flex Code
24298 \begin_layout Plain Layout
24304 The back part of the resize command.
24307 \begin_layout Description
24308 \begin_inset Flex Code
24311 \begin_layout Plain Layout
24317 The front part of the rotation command.
24320 \begin_layout Description
24321 \begin_inset Flex Code
24324 \begin_layout Plain Layout
24330 The back part of the rotation command.
24333 \begin_layout Standard
24334 The value string of the
24335 \begin_inset Flex Code
24338 \begin_layout Plain Layout
24344 command supports additionally the following substitutions if they are enabled
24346 \begin_inset Flex Code
24349 \begin_layout Plain Layout
24356 \begin_inset Flex Code
24359 \begin_layout Plain Layout
24368 \begin_layout Description
24369 \begin_inset Flex Code
24372 \begin_layout Plain Layout
24381 \begin_layout Description
24382 \begin_inset Flex Code
24385 \begin_layout Plain Layout
24394 \begin_layout Description
24395 \begin_inset Flex Code
24398 \begin_layout Plain Layout
24407 \begin_layout Description
24408 \begin_inset Flex Code
24411 \begin_layout Plain Layout
24417 The rotation option.
24420 \begin_layout Standard
24421 You may ask why there are so many path macros.
24422 There are mainly two reasons:
24425 \begin_layout Enumerate
24426 Relative and absolute file names should remain relative or absolute, respectivel
24428 Users may have reasons to prefer either form.
24429 Relative names are useful for portable documents that should work on different
24430 machines, for example.
24431 Absolute names may be required by some programs.
24434 \begin_layout Enumerate
24436 treats relative file names differently than \SpecialChar LyX
24437 and other programs in nested
24439 For \SpecialChar LyX
24440 , a relative file name is always relative to the document that contains
24442 For \SpecialChar LaTeX
24443 , it is always relative to the master document.
24444 These two definitions are identical if you have only one document, but
24445 differ if you have a master document that includes part documents.
24446 That means that relative filenames must be transformed when presented to
24449 Fortunately \SpecialChar LyX
24450 does this automatically for you if you choose the right macros.
24453 \begin_layout Standard
24454 So which path macro should be used in new template definitions? The rule
24458 \begin_layout Itemize
24460 \begin_inset Flex Code
24463 \begin_layout Plain Layout
24469 if an absolute path is required.
24472 \begin_layout Itemize
24474 \begin_inset Flex Code
24477 \begin_layout Plain Layout
24478 $$AbsOrRelPathMaster
24483 if the substituted string is some kind of \SpecialChar LaTeX
24487 \begin_layout Itemize
24489 \begin_inset Flex Code
24492 \begin_layout Plain Layout
24493 $$AbsOrRelPathParent
24498 in order to preserve the user's choice.
24501 \begin_layout Standard
24502 There are special cases where this rule does not work and e.
24503 \begin_inset space \thinspace{}
24507 \begin_inset space \space{}
24510 relative names are needed, but normally it will work just fine.
24511 One example for such a case is the command
24512 \begin_inset Flex Code
24515 \begin_layout Plain Layout
24516 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
24521 in the XFig template above: We can't use the absolute name because the
24523 \begin_inset Flex Code
24526 \begin_layout Plain Layout
24532 files needs the relative name in order to rewrite the file content.
24535 \begin_layout Section
24536 Security discussion
24537 \begin_inset CommandInset label
24539 name "sec:Security-discussion"
24546 \begin_layout Standard
24547 The external material feature interfaces with a lot of external programs
24548 and does so automatically, so we have to consider the security implications
24550 In particular, since you have the option of including your own filenames
24551 and/or parameter strings and those are expanded into a command, it seems
24552 that it would be possible to create a malicious document which executes
24553 arbitrary commands when a user views or prints the document.
24554 This is something we definitely want to avoid.
24557 \begin_layout Standard
24558 However, since the external program commands are specified in the template
24559 configuration file only, there are no security issues if \SpecialChar LyX
24560 is properly configure
24561 d with safe templates only.
24562 This is so because the external programs are invoked with the
24563 \begin_inset Flex Code
24566 \begin_layout Plain Layout
24572 -system call rather than the
24573 \begin_inset Flex Code
24576 \begin_layout Plain Layout
24582 system-call, so it's not possible to execute arbitrary commands from the
24583 filename or parameter section via the shell.
24586 \begin_layout Standard
24587 This also implies that you are restricted in what command strings you can
24588 use in the external material templates.
24589 In particular, pipes and redirection are not readily available.
24590 This has to be so if \SpecialChar LyX
24591 should remain safe.
24592 If you want to use some of the shell features, you should write a safe
24593 script to do this in a controlled manner, and then invoke the script from
24594 the command string.
24598 \begin_layout Standard
24599 It is possible to design a template that interacts directly with the shell,
24600 but since this would allow a malicious user to execute arbitrary commands
24601 by writing clever filenames and/or parameters, we generally recommend that
24602 you only use safe scripts that work with the
24603 \begin_inset Flex Code
24606 \begin_layout Plain Layout
24612 system call in a controlled manner.
24613 Of course, for use in a controlled environment, it can be tempting to just
24614 fall back to use ordinary shell scripts.
24615 If you do so, be aware that you
24619 provide an easily exploitable security hole in your system.
24620 Of course it stands to reason that such unsafe templates will never be
24621 included in the standard \SpecialChar LyX
24622 distribution, although we do encourage people
24623 to submit new templates in the open source tradition.
24624 But \SpecialChar LyX
24625 as shipped from the official distribution channels will never have
24629 \begin_layout Standard
24630 Including external material provides a lot of power, and you have to be
24631 careful not to introduce security hazards with this power.
24632 A subtle error in a single line in an innocent looking script can open
24633 the door to huge security problems.
24634 So if you do not fully understand the issues, we recommend that you consult
24635 a knowledgeable security professional or the \SpecialChar LyX
24636 development team if you have
24637 any questions about whether a given template is safe or not.
24638 And do this before you use it in an uncontrolled environment.
24641 \begin_layout Chapter
24643 List of supported \SpecialChar LyX
24644 functions to be used in layouts
24645 \begin_inset CommandInset label
24647 name "chap:List-of-functions"
24654 \begin_layout Standard
24656 \begin_inset Tabular
24657 <lyxtabular version="3" rows="11" columns="8">
24658 <features tabularvalignment="middle">
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">
24665 <column alignment="left" valignment="top">
24666 <column alignment="left" valignment="top">
24668 <cell alignment="left" valignment="top" usebox="none">
24671 \begin_layout Plain Layout
24677 <cell alignment="left" valignment="top" usebox="none">
24680 \begin_layout Plain Layout
24686 <cell alignment="left" valignment="top" usebox="none">
24689 \begin_layout Plain Layout
24695 <cell alignment="left" valignment="top" usebox="none">
24698 \begin_layout Plain Layout
24704 <cell alignment="center" valignment="top" usebox="none">
24707 \begin_layout Plain Layout
24713 <cell alignment="center" valignment="top" usebox="none">
24716 \begin_layout Plain Layout
24722 <cell alignment="center" valignment="top" usebox="none">
24725 \begin_layout Plain Layout
24731 <cell alignment="center" valignment="top" usebox="none">
24734 \begin_layout Plain Layout
24742 <cell alignment="left" valignment="top" usebox="none">
24745 \begin_layout Plain Layout
24751 <cell alignment="left" valignment="top" usebox="none">
24754 \begin_layout Plain Layout
24760 <cell alignment="left" valignment="top" usebox="none">
24763 \begin_layout Plain Layout
24769 <cell alignment="left" valignment="top" usebox="none">
24772 \begin_layout Plain Layout
24778 <cell alignment="center" valignment="top" usebox="none">
24781 \begin_layout Plain Layout
24787 <cell alignment="center" valignment="top" usebox="none">
24790 \begin_layout Plain Layout
24796 <cell alignment="center" valignment="top" usebox="none">
24799 \begin_layout Plain Layout
24805 <cell alignment="center" valignment="top" usebox="none">
24808 \begin_layout Plain Layout
24816 <cell alignment="left" valignment="top" usebox="none">
24819 \begin_layout Plain Layout
24825 <cell alignment="left" valignment="top" usebox="none">
24828 \begin_layout Plain Layout
24834 <cell alignment="left" valignment="top" usebox="none">
24837 \begin_layout Plain Layout
24843 <cell alignment="left" valignment="top" usebox="none">
24846 \begin_layout Plain Layout
24852 <cell alignment="center" valignment="top" usebox="none">
24855 \begin_layout Plain Layout
24861 <cell alignment="center" valignment="top" usebox="none">
24864 \begin_layout Plain Layout
24870 <cell alignment="center" valignment="top" usebox="none">
24873 \begin_layout Plain Layout
24879 <cell alignment="center" valignment="top" usebox="none">
24882 \begin_layout Plain Layout
24890 <cell alignment="left" valignment="top" usebox="none">
24893 \begin_layout Plain Layout
24899 <cell alignment="left" valignment="top" usebox="none">
24902 \begin_layout Plain Layout
24908 <cell alignment="left" valignment="top" usebox="none">
24911 \begin_layout Plain Layout
24917 <cell alignment="left" valignment="top" usebox="none">
24920 \begin_layout Plain Layout
24926 <cell alignment="center" valignment="top" usebox="none">
24929 \begin_layout Plain Layout
24935 <cell alignment="center" valignment="top" usebox="none">
24938 \begin_layout Plain Layout
24944 <cell alignment="center" valignment="top" usebox="none">
24947 \begin_layout Plain Layout
24953 <cell alignment="center" valignment="top" usebox="none">
24956 \begin_layout Plain Layout
24964 <cell alignment="left" valignment="top" usebox="none">
24967 \begin_layout Plain Layout
24973 <cell alignment="left" valignment="top" usebox="none">
24976 \begin_layout Plain Layout
24982 <cell alignment="left" valignment="top" usebox="none">
24985 \begin_layout Plain Layout
24991 <cell alignment="left" valignment="top" usebox="none">
24994 \begin_layout Plain Layout
25000 <cell alignment="center" valignment="top" usebox="none">
25003 \begin_layout Plain Layout
25009 <cell alignment="center" valignment="top" usebox="none">
25012 \begin_layout Plain Layout
25018 <cell alignment="center" valignment="top" usebox="none">
25021 \begin_layout Plain Layout
25027 <cell alignment="center" valignment="top" usebox="none">
25030 \begin_layout Plain Layout
25038 <cell alignment="left" valignment="top" usebox="none">
25041 \begin_layout Plain Layout
25047 <cell alignment="left" valignment="top" usebox="none">
25050 \begin_layout Plain Layout
25056 <cell alignment="left" valignment="top" usebox="none">
25059 \begin_layout Plain Layout
25065 <cell alignment="left" valignment="top" usebox="none">
25068 \begin_layout Plain Layout
25074 <cell alignment="center" valignment="top" usebox="none">
25077 \begin_layout Plain Layout
25083 <cell alignment="center" valignment="top" usebox="none">
25086 \begin_layout Plain Layout
25092 <cell alignment="center" valignment="top" usebox="none">
25095 \begin_layout Plain Layout
25101 <cell alignment="center" valignment="top" usebox="none">
25104 \begin_layout Plain Layout
25112 <cell alignment="left" valignment="top" usebox="none">
25115 \begin_layout Plain Layout
25121 <cell alignment="left" valignment="top" usebox="none">
25124 \begin_layout Plain Layout
25130 <cell alignment="left" valignment="top" usebox="none">
25133 \begin_layout Plain Layout
25139 <cell alignment="left" valignment="top" usebox="none">
25142 \begin_layout Plain Layout
25148 <cell alignment="center" valignment="top" usebox="none">
25151 \begin_layout Plain Layout
25157 <cell alignment="center" valignment="top" usebox="none">
25160 \begin_layout Plain Layout
25166 <cell alignment="center" valignment="top" usebox="none">
25169 \begin_layout Plain Layout
25175 <cell alignment="center" valignment="top" usebox="none">
25178 \begin_layout Plain Layout
25186 <cell alignment="left" valignment="top" usebox="none">
25189 \begin_layout Plain Layout
25195 <cell alignment="left" valignment="top" usebox="none">
25198 \begin_layout Plain Layout
25204 <cell alignment="left" valignment="top" usebox="none">
25207 \begin_layout Plain Layout
25213 <cell alignment="left" valignment="top" usebox="none">
25216 \begin_layout Plain Layout
25222 <cell alignment="center" valignment="top" usebox="none">
25225 \begin_layout Plain Layout
25231 <cell alignment="center" valignment="top" usebox="none">
25234 \begin_layout Plain Layout
25240 <cell alignment="center" valignment="top" usebox="none">
25243 \begin_layout Plain Layout
25249 <cell alignment="center" valignment="top" usebox="none">
25252 \begin_layout Plain Layout
25260 <cell alignment="left" valignment="top" usebox="none">
25263 \begin_layout Plain Layout
25269 <cell alignment="left" valignment="top" usebox="none">
25272 \begin_layout Plain Layout
25278 <cell alignment="left" valignment="top" usebox="none">
25281 \begin_layout Plain Layout
25287 <cell alignment="left" valignment="top" usebox="none">
25290 \begin_layout Plain Layout
25296 <cell alignment="center" valignment="top" usebox="none">
25299 \begin_layout Plain Layout
25305 <cell alignment="center" valignment="top" usebox="none">
25308 \begin_layout Plain Layout
25314 <cell alignment="center" valignment="top" usebox="none">
25317 \begin_layout Plain Layout
25323 <cell alignment="center" valignment="top" usebox="none">
25326 \begin_layout Plain Layout
25334 <cell alignment="left" valignment="top" usebox="none">
25337 \begin_layout Plain Layout
25343 <cell alignment="left" valignment="top" usebox="none">
25346 \begin_layout Plain Layout
25352 <cell alignment="left" valignment="top" usebox="none">
25355 \begin_layout Plain Layout
25361 <cell alignment="left" valignment="top" usebox="none">
25364 \begin_layout Plain Layout
25370 <cell alignment="center" valignment="top" usebox="none">
25373 \begin_layout Plain Layout
25379 <cell alignment="center" valignment="top" usebox="none">
25382 \begin_layout Plain Layout
25388 <cell alignment="center" valignment="top" usebox="none">
25391 \begin_layout Plain Layout
25397 <cell alignment="center" valignment="top" usebox="none">
25400 \begin_layout Plain Layout
25408 <cell alignment="center" valignment="top" usebox="none">
25411 \begin_layout Plain Layout
25417 <cell alignment="center" valignment="top" usebox="none">
25420 \begin_layout Plain Layout
25426 <cell alignment="center" valignment="top" usebox="none">
25429 \begin_layout Plain Layout
25435 <cell alignment="center" valignment="top" usebox="none">
25438 \begin_layout Plain Layout
25444 <cell alignment="center" valignment="top" usebox="none">
25447 \begin_layout Plain Layout
25453 <cell alignment="center" valignment="top" usebox="none">
25456 \begin_layout Plain Layout
25462 <cell alignment="center" valignment="top" usebox="none">
25465 \begin_layout Plain Layout
25471 <cell alignment="center" valignment="top" usebox="none">
25474 \begin_layout Plain Layout
25488 \begin_layout Chapter
25489 Names of available colors to be used in layouts
25490 \begin_inset CommandInset label
25492 name "chap:Names-of-colors"
25499 \begin_layout Standard
25500 The colors listed here are the standard colors and the those that you can
25501 adjust in the \SpecialChar LyX
25505 \begin_layout Description
25518 No particular color – clear or default
25521 \begin_layout Description
25525 \begin_layout Description
25529 \begin_layout Description
25533 \begin_layout Description
25537 \begin_layout Description
25541 \begin_layout Description
25545 \begin_layout Description
25549 \begin_layout Description
25553 \begin_layout Description
25554 added_space Added space marker color
25557 \begin_layout Description
25558 addedtext Added text color
25561 \begin_layout Description
25562 appendix Appendix marker color
25565 \begin_layout Description
25566 background Background color
25569 \begin_layout Description
25570 bottomarea Bottom area color
25573 \begin_layout Description
25574 branchlabel Label color for branches
25577 \begin_layout Description
25578 buttonbg Color used for button background
25581 \begin_layout Description
25582 buttonhoverbg Color used for button background under focus
25585 \begin_layout Description
25586 buttonframe Color for inset button frames
25589 \begin_layout Description
25590 changebar Changebar color
25593 \begin_layout Description
25594 changedtextauthor1 Changed text color author 1
25597 \begin_layout Description
25598 changedtextauthor2 Changed text color author 2
25601 \begin_layout Description
25602 changedtextauthor3 Changed text color author 3
25605 \begin_layout Description
25606 changedtextauthor4 Changed text color author 4
25609 \begin_layout Description
25610 changedtextauthor5 Changed text color author 5
25613 \begin_layout Description
25614 collapsable_inset_frame Collapsable insets framecolor
25617 \begin_layout Description
25618 collapsable_inset_text Collapsable insets text color
25621 \begin_layout Description
25622 command Text color for command insets
25625 \begin_layout Description
25626 commandbg Background color for command insets
25629 \begin_layout Description
25630 commandframe Frame color for command insets
25633 \begin_layout Description
25634 comment color for comments
25637 \begin_layout Description
25638 commentbg Background color of comments
25641 \begin_layout Description
25642 cursor Cursor color
25645 \begin_layout Description
25646 deletedtext Deleted text color
25649 \begin_layout Description
25650 deletedtextmodifier Deleted text modifying color
25653 \begin_layout Description
25654 depthbar Color for the depth bars in the margin
25657 \begin_layout Description
25658 eolmarker End of line marker color
25661 \begin_layout Description
25662 error Color of the \SpecialChar LaTeX
25666 \begin_layout Description
25667 footlabel Label color for footnotes
25670 \begin_layout Description
25671 graphicsbg Graphics inset background color
25674 \begin_layout Description
25675 greyedout Label color for greyedout insets
25678 \begin_layout Description
25679 greyedoutbg Background color of greyedout inset
25682 \begin_layout Description
25683 greyedouttext Color for greyedout inset text
25686 \begin_layout Description
25687 indexlabel Label color for index insets
25690 \begin_layout Description
25691 ignore The color is ignored
25694 \begin_layout Description
25695 inherit The color is inherited
25698 \begin_layout Description
25699 inlinecompletion Inline completion color
25702 \begin_layout Description
25703 insetbg Inset marker background color
25706 \begin_layout Description
25707 insetframe Inset marker frame color
25710 \begin_layout Description
25711 language Color for marking foreign language words
25714 \begin_layout Description
25715 latex Text color in \SpecialChar LaTeX
25719 \begin_layout Description
25720 listingsbg Background color of listings inset
25723 \begin_layout Description
25724 marginlabel Label color for margin notes
25727 \begin_layout Description
25728 math Math inset text color
25731 \begin_layout Description
25732 mathbg Math inset background color
25735 \begin_layout Description
25736 mathcorners Math inset frame color not under focus
25739 \begin_layout Description
25740 mathframe Math inset frame color under focus
25743 \begin_layout Description
25744 mathline Math line color
25747 \begin_layout Description
25748 mathmacrobg Macro math inset background color
25751 \begin_layout Description
25752 mathmacroblend Macro math blended color
25755 \begin_layout Description
25756 mathmacroframe Macro math frame color
25759 \begin_layout Description
25760 mathmacrohoverbg Macro math inset background color hovered
25763 \begin_layout Description
25764 mathmacrolabel Macro math label color
25767 \begin_layout Description
25768 mathmacronewarg Macro template color for new parameters
25771 \begin_layout Description
25772 mathmacrooldarg Macro template color for old parameters
25775 \begin_layout Description
25776 newpage New page color
25779 \begin_layout Description
25780 nonunique_inlinecompletion Inline completion color for the non-unique part
25783 \begin_layout Description
25784 notebg Background color of notes
25787 \begin_layout Description
25788 notelabel Label color for notes
25791 \begin_layout Description
25792 pagebreak Page break/line break color
25795 \begin_layout Description
25796 paragraphmarker Color used for the pilcrow sign to mark the end of a paragraph
25799 \begin_layout Description
25800 phantomtext Text color for phantom insets
25803 \begin_layout Description
25804 preview The color used for previews
25807 \begin_layout Description
25808 previewframe Preview frame color
25811 \begin_layout Description
25812 regexpframe Color for regexp frame
25815 \begin_layout Description
25816 selection Background color of selected text
25819 \begin_layout Description
25820 selectiontext Foreground color of selected text
25823 \begin_layout Description
25824 shadedbg Background color of shaded box
25827 \begin_layout Description
25828 special Special chars text color
25831 \begin_layout Description
25832 tabularline Table line color
25835 \begin_layout Description
25836 tabularonoffline Table line color
25839 \begin_layout Description
25840 urllabel Label color for URL insets
25843 \begin_layout Description
25844 urltext Color for URL inset text