1 #LyX 2.4 created this file. For more info see https://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 bibliography=totoc,index=totoc,BCOR7.5mm,titlepage,captions=tableheading
40 \use_default_options false
44 \maintain_unincluded_children false
46 \language_package default
47 \inputencoding auto-legacy
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 \use_dash_ligatures true
62 \default_output_format pdf2
64 \bibtex_command default
65 \index_command default
69 \pdf_title "LyX Configuration Manual"
70 \pdf_author "LyX Team"
71 \pdf_subject "LyX-documentation Customization"
72 \pdf_keywords "LyX, documentation, customization"
74 \pdf_bookmarksnumbered true
75 \pdf_bookmarksopen true
76 \pdf_bookmarksopenlevel 1
81 \pdf_pdfusetitle false
82 \pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue,pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false"
85 \use_package amsmath 1
86 \use_package amssymb 1
89 \use_package mathdots 1
90 \use_package mathtools 1
92 \use_package stackrel 1
93 \use_package stmaryrd 1
94 \use_package undertilde 1
96 \cite_engine_type default
100 \paperorientation portrait
105 \notefontcolor #0000ff
117 \paragraph_separation indent
118 \paragraph_indentation default
120 \math_indentation default
121 \math_numbering_side default
122 \quotes_style english
126 \paperpagestyle headings
128 \tracking_changes true
129 \output_changes false
133 \author -712698321 "Jürgen Spitzmüller"
134 \author -495245474 "Jean-Marc Lasgouttes"
135 \author 731793113 "Richard Kimberly Heck" rikiheck@lyx.org
141 Customizing \SpecialChar LyX
142 : Features for the Advanced User
146 by the \SpecialChar LyX
151 \begin_layout Plain Layout
153 If you have comments or error corrections, please send them to the \SpecialChar LyX
156 \begin_inset CommandInset href
158 target "lyx-docs@lists.lyx.org"
166 \begin_inset Quotes eld
170 \begin_inset Quotes erd
173 in the subject header, and please cc the current maintainer of this file,
174 Richard Heck <rgheck@comcast.net>.
180 \begin_inset Newline newline
184 \begin_inset Newline newline
190 \begin_layout Standard
191 \begin_inset CommandInset toc
192 LatexCommand tableofcontents
199 \begin_layout Standard
200 \begin_inset Note Note
203 \begin_layout Plain Layout
204 Please use change tracking when modifying this document.
205 This makes it easier for our translators to recognize things that have
206 been changed, and it helps the maintainer keep up-to-date with what's been
215 \begin_layout Chapter
219 \begin_layout Standard
220 This manual covers the customization features present in \SpecialChar LyX
222 In it, we discuss issues like keyboard shortcuts, screen previewing options,
223 printer options, sending commands to \SpecialChar LyX
224 via the \SpecialChar LyX
225 Server, internationalization,
226 installing new \SpecialChar LaTeX
227 classes and \SpecialChar LyX
229 We can't possibly hope to touch on everything you can change—our developers
230 add new features faster than we can document them—but we will explain the
231 most common customizations and hopefully point you in the right direction
232 for some of the more obscure ones.
235 \begin_layout Standard
236 \begin_inset Branch OutDated
240 \begin_layout Standard
241 Information from previous versions of this document that now seems to be
242 outdated is contained in the OutDated branch of this document.
243 By default, this information will not appear in the \SpecialChar LaTeX
252 \begin_layout Chapter
257 \begin_layout Standard
258 This chapter aims to help you to find your way through the \SpecialChar LyX
261 Before continuing to read this chapter, you should find out where your
263 library and user directories are by using
264 \begin_inset Flex Noun
267 \begin_layout Plain Layout
268 Help\SpecialChar menuseparator
279 The library directory is the place where \SpecialChar LyX
280 places its system-wide configuration
281 files; the user directory is where you can place your modified versions.
282 We will call the former
283 \begin_inset Flex Code
286 \begin_layout Plain Layout
293 \begin_inset Flex Noun
296 \begin_layout Plain Layout
302 in the remainder of this document.
306 \begin_layout Section
308 \begin_inset Flex Code
311 \begin_layout Plain Layout
320 \begin_layout Standard
321 \begin_inset Flex Code
324 \begin_layout Plain Layout
330 and its sub-directories contain a number of files and that can be used
331 to customize \SpecialChar LyX
333 You can change many of these files from within \SpecialChar LyX
335 \begin_inset Flex Noun
338 \begin_layout Plain Layout
339 Tools\SpecialChar menuseparator
346 Most customization that you will want to do in \SpecialChar LyX
347 is possible through this
349 However, many other inner aspects of \SpecialChar LyX
350 can be customized by modifying the
352 \begin_inset Flex Code
355 \begin_layout Plain Layout
362 These files fall in different categories, described in the following subsection
366 \begin_layout Subsection
367 Automatically generated files
370 \begin_layout Standard
371 The files, which are to be found in
372 \begin_inset Flex Noun
375 \begin_layout Plain Layout
381 , are generated when you configure \SpecialChar LyX
383 They contain various default values that are guessed by inspection.
384 In general, it is not a good idea to modify them, since they might be overwritt
388 \begin_layout Labeling
389 \labelwidthstring 00.00.0000
390 \begin_inset Flex Code
393 \begin_layout Plain Layout
399 contains defaults for various commands.
402 \begin_layout Labeling
403 \labelwidthstring 00.00.0000
404 \begin_inset Flex Code
407 \begin_layout Plain Layout
413 contains the list of packages that have been recognized by \SpecialChar LyX
415 It is currently unused by the \SpecialChar LyX
416 program itself, but the information extracted,
417 and more, is made available with
418 \begin_inset Flex Noun
421 \begin_layout Plain Layout
422 Help\SpecialChar menuseparator
436 \begin_layout Labeling
437 \labelwidthstring 00.00.0000
438 \begin_inset Flex Code
441 \begin_layout Plain Layout
447 the list of text classes that have been found in your
448 \begin_inset Flex Code
451 \begin_layout Plain Layout
457 directories, along with the associated \SpecialChar LaTeX
458 document class and their description.
461 \begin_layout Labeling
462 \labelwidthstring 00.00.0000
463 \begin_inset Flex Code
466 \begin_layout Plain Layout
472 the list of layout modules found in your
473 \begin_inset Flex Code
476 \begin_layout Plain Layout
485 \begin_layout Labeling
486 \labelwidthstring 00.00.0000
487 \begin_inset Flex Code
490 \begin_layout Plain Layout
496 lists of various sorts of \SpecialChar LaTeX
497 -related files found on your system
500 \begin_layout Labeling
501 \labelwidthstring 00.00.0000
502 \begin_inset Flex Code
505 \begin_layout Plain Layout
506 doc/\SpecialChar LaTeX
512 is automatically generated during configuration from the file
513 \begin_inset Flex Code
516 \begin_layout Plain Layout
524 It contains information on your \SpecialChar LaTeX
528 \begin_layout Subsection
532 \begin_layout Standard
533 These directories are duplicated between
534 \begin_inset Flex Code
537 \begin_layout Plain Layout
544 \begin_inset Flex Code
547 \begin_layout Plain Layout
554 If a particular files exists in both places, the one in
555 \begin_inset Flex Code
558 \begin_layout Plain Layout
567 \begin_layout Labeling
568 \labelwidthstring 00.00.0000
569 \begin_inset Flex Code
572 \begin_layout Plain Layout
578 this directory contains files with the extension
579 \begin_inset Flex Code
582 \begin_layout Plain Layout
588 that define the keybindings used in \SpecialChar LyX
590 If there exists an internationalized version of the bind file named
591 \begin_inset Flex Code
594 \begin_layout Plain Layout
600 , that will be used first.
603 \begin_layout Labeling
604 \labelwidthstring 00.00.0000
605 \begin_inset Flex Code
608 \begin_layout Plain Layout
614 contains files with the extension
615 \begin_inset Flex Code
618 \begin_layout Plain Layout
624 which define the diverse citation possibilities (natbib, biblatex etc.).
626 \begin_inset CommandInset ref
628 reference "subsec:Cite-Engine-Files"
638 \begin_layout Labeling
639 \labelwidthstring 00.00.0000
640 \begin_inset Flex Code
643 \begin_layout Plain Layout
649 contains graphics files that can be included in documents.
653 \begin_layout Labeling
654 \labelwidthstring 00.00.0000
655 \begin_inset Flex Code
658 \begin_layout Plain Layout
664 contains \SpecialChar LyX
665 documentation files (including the one you are currently reading).
667 \begin_inset Flex Code
670 \begin_layout Plain Layout
677 deserves special attention, as noted above.
678 The internationalized help docs are in subdirectories
679 \begin_inset Flex Code
682 \begin_layout Plain Layout
689 \begin_inset Quotes eld
693 \begin_inset Quotes erd
696 is the ISO language code.
698 \begin_inset CommandInset ref
700 reference "cha:Internationalizing-LyX"
707 \begin_layout Labeling
708 \labelwidthstring 00.00.0000
709 \begin_inset Flex Code
712 \begin_layout Plain Layout
718 contains example files that explain how to use some features.
719 In the file browser, press the
720 \begin_inset Flex Noun
723 \begin_layout Plain Layout
732 \begin_layout Labeling
733 \labelwidthstring 00.00.0000
734 \begin_inset Flex Code
737 \begin_layout Plain Layout
743 contains image files that are used by the
744 \begin_inset Flex Noun
747 \begin_layout Plain Layout
754 In addition, it also contains the individual icons used in the toolbar
755 and the banners that can be shown when \SpecialChar LyX
759 \begin_layout Labeling
760 \labelwidthstring 00.00.0000
761 \begin_inset Flex Code
764 \begin_layout Plain Layout
770 contains keyboard keymapping files.
772 \begin_inset CommandInset ref
774 reference "sec:International-Keymap-Stuff"
781 \begin_layout Labeling
782 \labelwidthstring 00.00.0000
783 \begin_inset Flex Code
786 \begin_layout Plain Layout
792 contains the text class and module files described in
793 \begin_inset CommandInset ref
795 reference "cha:Installing-New-Document"
802 \begin_layout Labeling
803 \labelwidthstring 00.00.0000
804 \begin_inset Flex Code
807 \begin_layout Plain Layout
814 \begin_inset Flex Code
817 \begin_layout Plain Layout
823 Python scripts used to convert between \SpecialChar LyX
825 These can be run from the command line if, say, you want to batch-convert
829 \begin_layout Labeling
830 \labelwidthstring 00.00.0000
831 \begin_inset Flex Code
834 \begin_layout Plain Layout
840 contains some files that demonstrate the capabilities of the
841 \begin_inset Flex Noun
844 \begin_layout Plain Layout
855 Also contains some scripts used by \SpecialChar LyX
859 \begin_layout Labeling
860 \labelwidthstring 00.00.0000
861 \begin_inset Flex Code
864 \begin_layout Plain Layout
870 contains the standard \SpecialChar LyX
871 template files described in
872 \begin_inset CommandInset ref
874 reference "subsec:Creating-Templates"
881 \begin_layout Labeling
882 \labelwidthstring 00.00.0000
883 \begin_inset Flex Code
886 \begin_layout Plain Layout
892 contains files with the extension
893 \begin_inset Flex Code
896 \begin_layout Plain Layout
902 that define the user interface to \SpecialChar LyX
904 That is, the files define which items appear in which menus and the items
905 appearing on the toolbar.
908 \begin_layout Labeling
909 \labelwidthstring 00.00.0000
910 \begin_inset Flex Code
913 \begin_layout Plain Layout
919 contains files with the extension
920 \begin_inset Flex Code
923 \begin_layout Plain Layout
929 which define the templates for the insertion of external material to a
932 \begin_inset CommandInset ref
934 reference "chap:Including-External-Material"
941 \begin_layout Subsection
942 Files you don't want to modify
945 \begin_layout Standard
946 These files are used internally by \SpecialChar LyX
947 and you generally do not need to modify
948 them unless you are a developer.
951 \begin_layout Labeling
952 \labelwidthstring 00.00.0000
953 \begin_inset Flex Code
956 \begin_layout Plain Layout
962 this file contains the list of \SpecialChar LyX
964 The contents are displayed with the menu entry
965 \begin_inset Flex Noun
968 \begin_layout Plain Layout
969 Help\SpecialChar menuseparator
982 \begin_layout Labeling
983 \labelwidthstring 00.00.0000
984 \begin_inset Flex Code
987 \begin_layout Plain Layout
993 this is a \SpecialChar LaTeX
994 script used during the configuration process.
998 \begin_layout Labeling
999 \labelwidthstring 00.00.0000
1000 \begin_inset Flex Code
1003 \begin_layout Plain Layout
1009 this is a Python script that is used to re-configure \SpecialChar LyX
1011 It creates configuration files in the directory it was run from.
1014 \begin_layout Subsection
1015 Other files needing a line or two
1018 \begin_layout Labeling
1019 \labelwidthstring 00.00.0000
1020 \begin_inset Flex Code
1023 \begin_layout Plain Layout
1029 this contains tables describing how different character encodings can be
1033 \begin_layout Labeling
1034 \labelwidthstring 00.00.0000
1035 \begin_inset Flex Code
1038 \begin_layout Plain Layout
1044 this file contains a list of all the languages currently supported by \SpecialChar LyX
1048 \begin_layout Labeling
1049 \labelwidthstring 00.00.0000
1050 \begin_inset Flex Code
1053 \begin_layout Plain Layout
1059 contains information about the supported fonts.
1062 \begin_layout Labeling
1063 \labelwidthstring 00.00.0000
1064 \begin_inset Flex Code
1067 \begin_layout Plain Layout
1073 this file contains translations for internationalized paragraph styles
1075 \begin_inset CommandInset ref
1077 reference "subsec:I18n"
1084 \begin_layout Labeling
1085 \labelwidthstring 00.00.0000
1086 \begin_inset Flex Code
1089 \begin_layout Plain Layout
1095 this file contains information about Unicode-encoded glyphs and the way
1096 they are supported by \SpecialChar LyX
1097 via \SpecialChar LaTeX
1101 \begin_layout Section
1102 Your local configuration directory
1105 \begin_layout Standard
1106 Even if you are using \SpecialChar LyX
1107 as an unprivileged user, you might want to change
1109 configuration for your own use.
1111 \begin_inset Flex Code
1114 \begin_layout Plain Layout
1120 directory contains all your personal configuration files.
1121 This is the directory described as
1122 \begin_inset Quotes eld
1126 \begin_inset Quotes erd
1130 \begin_inset Flex Noun
1133 \begin_layout Plain Layout
1134 Help\SpecialChar menuseparator
1136 \begin_inset space ~
1145 This directory is used as a mirror of
1146 \begin_inset Flex Code
1149 \begin_layout Plain Layout
1155 , which means that every file in
1156 \begin_inset Flex Code
1159 \begin_layout Plain Layout
1165 is a replacement for the corresponding file in
1166 \begin_inset Flex Code
1169 \begin_layout Plain Layout
1176 Any configuration file described in the above sections can be placed either
1177 in the system-wide directory, in which case it will affect all users, or
1178 in your local directory for your own use.
1181 \begin_layout Standard
1182 To make things clearer, let's provide a few examples:
1185 \begin_layout Itemize
1186 The preferences set in the
1187 \begin_inset Flex Noun
1190 \begin_layout Plain Layout
1191 Tools\SpecialChar menuseparator
1197 dialog are saved to a file
1198 \begin_inset Flex Code
1201 \begin_layout Plain Layout
1208 \begin_inset Flex Code
1211 \begin_layout Plain Layout
1220 \begin_layout Itemize
1221 When you reconfigure using
1222 \begin_inset Flex Noun
1225 \begin_layout Plain Layout
1226 Tools\SpecialChar menuseparator
1234 \begin_inset Flex Code
1237 \begin_layout Plain Layout
1243 script, and the resulting files are written in your local configuration
1245 This means that any additional text class file that you might have added
1247 \begin_inset Flex Code
1250 \begin_layout Plain Layout
1256 will be added to the list of classes in the
1257 \begin_inset Flex Noun
1260 \begin_layout Plain Layout
1261 Document\SpecialChar menuseparator
1270 \begin_layout Itemize
1271 If you get some updated documentation from \SpecialChar LyX
1272 ftp site and cannot install
1273 it because you do not have sysadmin rights on your system, you can just
1275 \begin_inset Flex Code
1278 \begin_layout Plain Layout
1284 and the items in the
1285 \begin_inset Flex Noun
1288 \begin_layout Plain Layout
1294 menu will open them!
1297 \begin_layout Section
1298 Running \SpecialChar LyX
1299 with multiple configurations
1302 \begin_layout Standard
1303 The configuration freedom of the local configuration directory may not suffice
1304 if you want to have more than one configuration at your disposal.
1305 For example, you may want to be use different key bindings or printer settings
1307 You can achieve this by having several such directories.
1308 You then specify which directory to use at run-time.
1311 \begin_layout Standard
1312 Invoking \SpecialChar LyX
1313 with the command line switch
1314 \begin_inset Flex Code
1317 \begin_layout Plain Layout
1327 instructs the program to read the configuration from that directory, and
1328 not from the default directory.
1329 (You can determine the default directory by running \SpecialChar LyX
1331 \begin_inset Flex Code
1334 \begin_layout Plain Layout
1340 switch.) If the specified directory does not exist, \SpecialChar LyX
1342 for you, just like it does for the default directory on the first time
1343 you run the program.
1344 You can modify the configuration options in this additional user directory
1345 exactly as you would for the default directory.
1346 These directories are completely independent (but read on).
1347 Note that setting the environment variable
1348 \begin_inset Flex Code
1351 \begin_layout Plain Layout
1357 to some value has exactly the same effect.
1360 \begin_layout Standard
1361 Having several configurations also requires more maintenance: if you want
1362 to add a new layout to
1363 \begin_inset Flex Code
1366 \begin_layout Plain Layout
1372 which you want available from all your configurations, you must add it
1373 to each directory separately.
1374 You can avoid this with the following trick: after \SpecialChar LyX
1375 creates the additional
1376 directory, most of the subdirectories (see above) are empty.
1377 If you want the new configuration to mirror an existing one, replace the
1378 empty subdirectory with a symbolic link to the matching subdirectory in
1379 the existing configuration.
1381 \begin_inset Flex Code
1384 \begin_layout Plain Layout
1390 subdirectory, however, since it contains a file written by the configuration
1391 script (also accessible through
1392 \begin_inset Flex Noun
1395 \begin_layout Plain Layout
1396 Tools\SpecialChar menuseparator
1402 ) which is configuration-specific.
1405 \begin_layout Chapter
1406 The Preferences dialog
1409 \begin_layout Standard
1410 All options of the preferences dialog are described in the Appendix
1412 The Preferences Dialog
1419 For some options you might find here more details.
1422 \begin_layout Section
1424 \begin_inset CommandInset label
1433 \begin_layout Standard
1434 The first step is to define your file formats if they are not already defined.
1436 \begin_inset Flex Noun
1439 \begin_layout Plain Layout
1440 Tools\SpecialChar menuseparator
1448 \begin_inset Flex Noun
1451 \begin_layout Plain Layout
1452 File Handling\SpecialChar menuseparator
1459 \begin_inset Flex Noun
1462 \begin_layout Plain Layout
1468 button to define your new format.
1470 \begin_inset Flex Noun
1473 \begin_layout Plain Layout
1479 field contains the name used to identify the format in the GUI.
1481 \begin_inset Flex Noun
1484 \begin_layout Plain Layout
1490 is used to identify the format internally.
1491 You will also need to enter a file extension.
1492 These are all required.
1494 \begin_inset Flex Noun
1497 \begin_layout Plain Layout
1503 field is used to provide a keyboard shortcut on the menus.
1504 (For example, pressing
1505 \begin_inset Flex Noun
1508 \begin_layout Plain Layout
1515 \begin_inset Flex Noun
1518 \begin_layout Plain Layout
1519 Document\SpecialChar menuseparator
1520 View (Other Formats)\SpecialChar menuseparator
1529 \begin_layout Standard
1531 \begin_inset Flex Noun
1534 \begin_layout Plain Layout
1541 \begin_inset Flex Noun
1544 \begin_layout Plain Layout
1551 For example, you might want to use
1552 \begin_inset Flex Noun
1555 \begin_layout Plain Layout
1561 to view PostScript files.
1562 You can enter the command needed to start the program in the corresponding
1564 In defining this command, you can use the four variables listed in the
1566 The viewer is launched when you view an image in \SpecialChar LyX
1568 \begin_inset Flex Noun
1571 \begin_layout Plain Layout
1572 Document\SpecialChar menuseparator
1579 The editor is for example launched when you right-click on an image and
1581 \begin_inset Flex Noun
1584 \begin_layout Plain Layout
1590 in the appearing context menu.
1593 \begin_layout Standard
1595 \begin_inset Flex Noun
1598 \begin_layout Plain Layout
1604 type of a format is optional, but if it is specified, it must be unique
1606 It is used to detect files of this format from the file contents.
1607 For some important file formats there is no MIME type officially registered
1609 \begin_inset CommandInset href
1612 target "http://www.iana.org/assignments/media-types/"
1618 Therefore \SpecialChar LyX
1619 uses the extended list of MIME types as specified by
1620 \begin_inset CommandInset href
1622 name "freedesktop.org"
1623 target "http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec"
1631 \begin_layout Standard
1633 \begin_inset Flex Noun
1636 \begin_layout Plain Layout
1642 option tells \SpecialChar LyX
1643 that a format is suitable for document export.
1644 If this is set and if a suitable conversion route exists (see
1645 \begin_inset CommandInset ref
1647 reference "sec:Converters"
1651 ), the format will appear in the
1652 \begin_inset Flex Noun
1655 \begin_layout Plain Layout
1656 File\SpecialChar menuseparator
1663 The format will also appear in the
1664 \begin_inset Flex Noun
1667 \begin_layout Plain Layout
1668 Document\SpecialChar menuseparator
1674 menu if a viewer is specified for the format.
1675 Pure image formats, such as
1676 \begin_inset Flex Code
1679 \begin_layout Plain Layout
1685 , should not use this option.
1686 Formats that can both represent vector graphics and documents like
1687 \begin_inset Flex Code
1690 \begin_layout Plain Layout
1699 \begin_layout Standard
1701 \begin_inset Flex Noun
1704 \begin_layout Plain Layout
1705 Vector graphics format
1710 tells \SpecialChar LyX
1711 that a format can contain vector graphics.
1712 This information is used to determine the target format of included graphics
1714 \begin_inset Flex Noun
1717 \begin_layout Plain Layout
1724 Included graphics may need to be converted to either
1725 \begin_inset Flex Noun
1728 \begin_layout Plain Layout
1735 \begin_inset Flex Noun
1738 \begin_layout Plain Layout
1745 \begin_inset Flex Noun
1748 \begin_layout Plain Layout
1755 \begin_inset Flex Noun
1758 \begin_layout Plain Layout
1764 cannot handle other image formats.
1765 If an included graphic is not already in
1766 \begin_inset Flex Noun
1769 \begin_layout Plain Layout
1776 \begin_inset Flex Noun
1779 \begin_layout Plain Layout
1786 \begin_inset Flex Noun
1789 \begin_layout Plain Layout
1795 format, it is converted to
1796 \begin_inset Flex Noun
1799 \begin_layout Plain Layout
1805 if the vector format option is set, and otherwise to
1806 \begin_inset Flex Noun
1809 \begin_layout Plain Layout
1818 \begin_layout Section
1822 \begin_layout Standard
1823 Since all conversions from one format to another take place in \SpecialChar LyX
1825 directory, it is sometimes necessary to modify a file before copying it
1826 to the temporary directory in order that the conversion may be performed.
1830 \begin_layout Plain Layout
1831 For example, the file may refer to other files—images, for example—using
1832 relative file names, and these may become invalid when the file is copied
1833 to the temporary directory.
1838 This is done by a Copier: It copies a file to (or from) the temporary directory
1839 and may modify it in the process.
1842 \begin_layout Standard
1843 The definitions of the copiers may use eight variables:
1846 \begin_layout Labeling
1847 \labelwidthstring 00.00.0000
1848 \begin_inset Flex Code
1851 \begin_layout Plain Layout
1857 The \SpecialChar LyX
1858 system directory (e.
1859 \begin_inset space \thinspace{}
1863 \begin_inset space \space{}
1867 \begin_inset Flex Noun
1870 \begin_layout Plain Layout
1879 \begin_layout Labeling
1880 \labelwidthstring 00.00.0000
1881 \begin_inset Flex Code
1884 \begin_layout Plain Layout
1893 \begin_layout Labeling
1894 \labelwidthstring 00.00.0000
1895 \begin_inset Flex Code
1898 \begin_layout Plain Layout
1907 \begin_layout Labeling
1908 \labelwidthstring 00.00.0000
1909 \begin_inset Flex Code
1912 \begin_layout Plain Layout
1918 The base name (without filename extension) in the \SpecialChar LyX
1922 \begin_layout Labeling
1923 \labelwidthstring 00.00.0000
1924 \begin_inset Flex Code
1927 \begin_layout Plain Layout
1933 The full directory path of the \SpecialChar LyX
1937 \begin_layout Labeling
1938 \labelwidthstring 00.00.0000
1939 \begin_inset Flex Code
1942 \begin_layout Plain Layout
1948 The full pathname to the original \SpecialChar LyX
1949 file being processed
1952 \begin_layout Labeling
1953 \labelwidthstring 00.00.0000
1954 \begin_inset Flex Code
1957 \begin_layout Plain Layout
1963 The filename (without any directory path) of the \SpecialChar LyX
1967 \begin_layout Labeling
1968 \labelwidthstring 00.00.0000
1969 \begin_inset Flex Code
1972 \begin_layout Plain Layout
1978 The `\SpecialChar LaTeX
1982 \begin_layout Standard
1983 The latter should be the filename as it would be used in a \SpecialChar LaTeX
1991 It is relevant only when exporting files suitable for such inclusion.
1994 \begin_layout Standard
1995 Copiers can be used to do almost anything with output files.
1996 For example, suppose you want generated pdf files to be copied to a special
1998 \begin_inset Flex Code
2001 \begin_layout Plain Layout
2008 Then you could write a shell script such as this one:
2011 \begin_layout Standard
2012 \begin_inset listings
2016 \begin_layout Plain Layout
2021 \begin_layout Plain Layout
2026 \begin_layout Plain Layout
2028 TOFILE=`basename $2`
2031 \begin_layout Plain Layout
2033 cp $FROMFILE /home/you/pdf/$TOFILE
2038 Save it in your local \SpecialChar LyX
2040 \begin_inset Flex Code
2043 \begin_layout Plain Layout
2044 /home/you/.lyx/scripts/pdfcopier.sh
2049 —and make it executable, if you need to do so on your platform.
2051 \begin_inset Flex Noun
2054 \begin_layout Plain Layout
2055 Tools\SpecialChar menuseparator
2061 dialog, select under
2062 \begin_inset Flex Noun
2065 \begin_layout Plain Layout
2066 File Handling\SpecialChar menuseparator
2073 \begin_inset Flex Noun
2076 \begin_layout Plain Layout
2082 format—or one of the other pdf formats—and enter
2083 \begin_inset Flex Code
2086 \begin_layout Plain Layout
2087 pdfcopier.sh $$i $$o
2093 \begin_inset Flex Noun
2096 \begin_layout Plain Layout
2106 \begin_layout Standard
2107 Copiers are used by \SpecialChar LyX
2108 in various of its own conversions.
2109 For example, if appropriate programs are found, \SpecialChar LyX
2110 will automatically install
2112 \begin_inset Flex Noun
2115 \begin_layout Plain Layout
2122 \begin_inset Flex Noun
2125 \begin_layout Plain Layout
2127 \begin_inset space ~
2136 When these formats are exported, the copier sees that not just the main
2137 HTML file but various associated files (style files, images, etc.) are also
2139 All these files are written to a subdirectory of the directory in which
2140 the original \SpecialChar LyX
2145 \begin_layout Plain Layout
2146 This copier can be customized.
2148 \begin_inset Quotes eld
2152 \begin_inset Quotes erd
2155 argument takes a comma-separated list of extensions to be copied; if it
2156 is omitted, all files will be copied.
2158 \begin_inset Quotes eld
2162 \begin_inset Quotes erd
2165 argument determines the extension added to the generated directory.
2167 \begin_inset Quotes eld
2171 \begin_inset Flex Noun
2174 \begin_layout Plain Layout
2181 \begin_inset Quotes erd
2184 , so HTML generated from
2185 \begin_inset Flex Noun
2188 \begin_layout Plain Layout
2189 /path/to/filename.lyx
2195 \begin_inset Flex Noun
2198 \begin_layout Plain Layout
2199 /path/to/filename.html.LyXconv
2213 \begin_layout Section
2215 \begin_inset CommandInset label
2217 name "sec:Converters"
2224 \begin_layout Standard
2225 You can define your own Converters to convert files between different formats.
2227 \begin_inset Flex Noun
2230 \begin_layout Plain Layout
2231 Tools\SpecialChar menuseparator
2232 Preferences\SpecialChar menuseparator
2233 File Handling\SpecialChar menuseparator
2242 \begin_layout Standard
2243 To define a new converter, select the
2244 \begin_inset Flex Noun
2247 \begin_layout Plain Layout
2249 \begin_inset space ~
2258 \begin_inset Flex Noun
2261 \begin_layout Plain Layout
2263 \begin_inset space ~
2271 from the drop-down lists, enter the command needed for the conversion,
2273 \begin_inset Flex Noun
2276 \begin_layout Plain Layout
2283 Several variables can be used in the definition of converters:
2286 \begin_layout Labeling
2287 \labelwidthstring 00.00.0000
2288 \begin_inset Flex Code
2291 \begin_layout Plain Layout
2297 The \SpecialChar LyX
2301 \begin_layout Labeling
2302 \labelwidthstring 00.00.0000
2303 \begin_inset Flex Code
2306 \begin_layout Plain Layout
2315 \begin_layout Labeling
2316 \labelwidthstring 00.00.0000
2317 \begin_inset Flex Code
2320 \begin_layout Plain Layout
2329 \begin_layout Labeling
2330 \labelwidthstring 00.00.0000
2331 \begin_inset Flex Code
2334 \begin_layout Plain Layout
2340 The base filename of the input file (i.
2341 \begin_inset space \thinspace{}
2344 g., without the extension)
2347 \begin_layout Labeling
2348 \labelwidthstring 00.00.0000
2349 \begin_inset Flex Code
2352 \begin_layout Plain Layout
2358 The path to the input file
2361 \begin_layout Labeling
2362 \labelwidthstring 00.00.0000
2363 \begin_inset Flex Code
2366 \begin_layout Plain Layout
2372 The path to the original input file (this is different from $$p when a
2373 chain of converters is called)
2376 \begin_layout Labeling
2377 \labelwidthstring 00.00.0000
2378 \begin_inset Flex Code
2381 \begin_layout Plain Layout
2387 The iconv name for the encoding of the document.
2390 \begin_layout Standard
2392 \begin_inset Flex Noun
2395 \begin_layout Plain Layout
2397 \begin_inset space ~
2405 field you can enter the following flags, separated by commas:
2408 \begin_layout Labeling
2409 \labelwidthstring 00.00.0000
2410 \begin_inset Flex Code
2413 \begin_layout Plain Layout
2415 \change_inserted -712698321 1524656940
2423 This converter runs some form of \SpecialChar LaTeX
2425 This will make \SpecialChar LyX
2426 's \SpecialChar LaTeX
2427 error logs available.
2429 \change_inserted -712698321 1524657018
2431 \begin_inset Flex Code
2434 \begin_layout Plain Layout
2436 \change_inserted -712698321 1524657012
2444 value specifies the form of \SpecialChar LaTeX
2446 \begin_inset Flex Code
2449 \begin_layout Plain Layout
2451 \change_inserted -712698321 1524657005
2452 latex, pdflatex, platex, xetex, luatex
2460 If no value is specified,
2461 \begin_inset Flex Code
2464 \begin_layout Plain Layout
2466 \change_inserted -712698321 1524657018
2479 \begin_layout Labeling
2480 \labelwidthstring 00.00.0000
2481 \begin_inset Flex Code
2484 \begin_layout Plain Layout
2486 \change_inserted -712698321 1524656935
2494 Needs the \SpecialChar LaTeX
2496 \begin_inset Flex Noun
2499 \begin_layout Plain Layout
2505 file for the conversion.
2507 \change_inserted -712698321 1524657047
2509 \begin_inset Flex Code
2512 \begin_layout Plain Layout
2514 \change_inserted -712698321 1524657030
2520 value specifies the form of \SpecialChar LaTeX
2521 that is run in order to generate the
2522 \begin_inset Flex Noun
2525 \begin_layout Plain Layout
2527 \change_inserted -712698321 1524657047
2534 \begin_inset Flex Code
2537 \begin_layout Plain Layout
2539 \change_inserted -712698321 1524657030
2540 latex, pdflatex, platex, xetex, luatex
2546 If no value is specified,
2547 \begin_inset Flex Code
2550 \begin_layout Plain Layout
2552 \change_inserted -712698321 1524657030
2563 \begin_layout Labeling
2564 \labelwidthstring 00.00.0000
2565 \begin_inset Flex Code
2568 \begin_layout Plain Layout
2575 \begin_inset Quotes eld
2579 \begin_inset Quotes erd
2582 file from the backend, which in practice means a \SpecialChar LaTeX
2583 file like the one we
2584 would export, without
2585 \begin_inset Flex Code
2588 \begin_layout Plain Layout
2597 \begin_layout Labeling
2598 \labelwidthstring 00.00.0000
2599 \begin_inset Flex Code
2602 \begin_layout Plain Layout
2611 \begin_layout Standard
2612 The following three flags are not really flags at all because they take
2614 \begin_inset Flex Noun
2617 \begin_layout Plain Layout
2619 \begin_inset space ~
2623 \begin_inset space ~
2634 \begin_layout Labeling
2635 \labelwidthstring 00.00.0000
2637 \change_inserted -712698321 1523206314
2638 \begin_inset Flex Code
2641 \begin_layout Plain Layout
2643 \change_inserted -712698321 1523206193
2649 The name of the driver that needs to be loaded with the
2653 package for this converter.
2654 The loading of the correct driver is necessary to get some PDF-specific
2663 \begin_layout Labeling
2664 \labelwidthstring 00.00.0000
2665 \begin_inset Flex Code
2668 \begin_layout Plain Layout
2674 If set, the converter's standard error will be redirected to a file
2675 \begin_inset Flex Code
2678 \begin_layout Plain Layout
2684 , and the script given as argument will be run as:
2685 \begin_inset Flex Code
2688 \begin_layout Plain Layout
2689 script < infile.out > infile.log
2695 The argument may contain
2696 \begin_inset Flex Code
2699 \begin_layout Plain Layout
2708 \begin_layout Labeling
2709 \labelwidthstring 00.00.0000
2710 \begin_inset Flex Code
2713 \begin_layout Plain Layout
2719 The name of the directory in which the converter will dump the generated
2722 will not create this directory, and it does not copy anything into it,
2723 though it will copy this directory to the destination.
2724 The argument may contain
2725 \begin_inset Flex Code
2728 \begin_layout Plain Layout
2734 , which will be replaced by the base name of the input and output files,
2735 respectively, when the directory is copied.
2736 \begin_inset Newline newline
2739 Note that resultdir and usetempdir make no sense together.
2740 The latter will be ignored if the former is given.
2743 \begin_layout Labeling
2744 \labelwidthstring 00.00.0000
2745 \begin_inset Flex Code
2748 \begin_layout Plain Layout
2754 Determines the output file name and may, contain
2755 \begin_inset Flex Code
2758 \begin_layout Plain Layout
2765 Sensible only with resultdir and optional even then; if not given, it defaults
2769 \begin_layout Standard
2771 \change_inserted -712698321 1523206384
2772 A suitable hyperref-driver is set for some converters that are installed
2773 with \SpecialChar LyX
2776 \change_deleted -712698321 1523206388
2778 \change_inserted -712698321 1523206389
2782 \change_inserted -712698321 1523206400
2786 \change_inserted -712698321 1523206407
2790 \change_inserted -712698321 1523206437
2794 \change_deleted -712698321 1523206442
2795 that are installed with \SpecialChar LyX
2802 \begin_layout Standard
2803 You do not have to define converters for all formats between which you want
2805 For example, you will note that there is no `\SpecialChar LyX
2806 to PostScript' converter,
2807 but \SpecialChar LyX
2808 will export PostScript.
2809 It does so by first creating a \SpecialChar LaTeX
2810 file (no converter needs to be defined
2811 for this) which is then converted to DVI using the `\SpecialChar LaTeX
2813 and finally converting the resulting DVI file to PostScript.
2815 finds such `chains' of converters automatically, and it will always choose
2816 the shortest possible chain.
2817 You can, though, still define multiple conversion methods between file
2819 For example, the standard \SpecialChar LyX
2820 configuration provides five ways to convert
2825 \begin_layout Enumerate
2827 \begin_inset Flex Noun
2830 \begin_layout Plain Layout
2839 \begin_layout Enumerate
2840 via (DVI and) PostScript, using
2841 \begin_inset Flex Noun
2844 \begin_layout Plain Layout
2853 \begin_layout Enumerate
2855 \begin_inset Flex Noun
2858 \begin_layout Plain Layout
2867 \begin_layout Enumerate
2869 \begin_inset Flex Noun
2872 \begin_layout Plain Layout
2882 \begin_layout Enumerate
2884 \begin_inset Flex Noun
2887 \begin_layout Plain Layout
2897 \begin_layout Standard
2898 To define such alternate chains, you must define multiple target `file formats',
2900 \begin_inset CommandInset ref
2902 reference "sec:Formats"
2907 For example, in the standard configuration, the formats named
2908 \begin_inset Flex Noun
2911 \begin_layout Plain Layout
2918 \begin_inset Flex Noun
2921 \begin_layout Plain Layout
2928 \begin_inset Flex Noun
2931 \begin_layout Plain Layout
2938 \begin_inset Flex Noun
2941 \begin_layout Plain Layout
2948 \begin_inset Flex Noun
2951 \begin_layout Plain Layout
2958 \begin_inset Flex Noun
2961 \begin_layout Plain Layout
2968 \begin_inset Flex Noun
2971 \begin_layout Plain Layout
2978 \begin_inset Flex Noun
2981 \begin_layout Plain Layout
2989 \begin_inset Flex Noun
2992 \begin_layout Plain Layout
2999 \begin_inset Flex Noun
3002 \begin_layout Plain Layout
3009 ) are defined, all of which share the extension
3010 \begin_inset Flex Noun
3013 \begin_layout Plain Layout
3019 , and which correspond to the conversion methods just mentioned.
3022 \begin_layout Chapter
3023 Internationalizing \SpecialChar LyX
3025 \begin_inset CommandInset label
3027 name "cha:Internationalizing-LyX"
3034 \begin_layout Standard
3036 supports using a translated interface.
3037 Last time we checked, \SpecialChar LyX
3038 provided text in thirty languages.
3039 The language of choice is called your
3044 (For further reading on locale settings, see also the documentation for
3045 locale that comes with your operating system.
3046 For Linux, the manual page for
3047 \begin_inset Flex Code
3050 \begin_layout Plain Layout
3056 could be a good place to start).
3059 \begin_layout Standard
3060 Notice that these translations will work, but do contain a few flaws.
3061 In particular, all dialogs have been designed with the English text in
3062 mind, which means that some of the translated text will be too large to
3063 fit within the space allocated.
3064 This is only a display problem and will not cause any harm.
3065 Also, you will find that some of the translations do not define shortcut
3066 keys for everything.
3067 Sometimes, there are simply not enough free letters to do it.
3068 Other times, the translator just hasn't got around to doing it yet.
3069 Our localization team, which you may wish to join,
3073 \begin_layout Plain Layout
3074 If you are a fluent speaker of a language other than English, joining these
3075 teams is a great way to give back to the \SpecialChar LyX
3081 will of course try to fix these shortcomings in future versions of \SpecialChar LyX
3085 \begin_layout Section
3086 Translating \SpecialChar LyX
3090 \begin_layout Subsection
3091 Translating the graphical user interface (text messages).
3094 \begin_layout Standard
3097 \begin_inset Flex Code
3100 \begin_layout Plain Layout
3106 library to handle the internationalization of the interface.
3107 To have \SpecialChar LyX
3108 speak your favorite language in all menus and dialogs, you need
3110 \begin_inset Flex Code
3113 \begin_layout Plain Layout
3119 -file for that language.
3120 When this is available, you'll have to generate a
3121 \begin_inset Flex Code
3124 \begin_layout Plain Layout
3130 -file from it and install the
3131 \begin_inset Flex Code
3134 \begin_layout Plain Layout
3141 The process of doing all of this is explained in the documentation for
3143 \begin_inset Flex Code
3146 \begin_layout Plain Layout
3153 It is possible to do this just for yourself, but if you're going to do
3154 it, you might as well share the results of your labors with the rest of
3155 the \SpecialChar LyX
3157 Send a message to the \SpecialChar LyX
3158 developers' list for more information about how
3162 \begin_layout Standard
3163 In short, this is what you should do (xx denotes the language code):
3166 \begin_layout Itemize
3167 Check out the \SpecialChar LyX
3170 \begin_inset CommandInset href
3172 name "information on the web"
3173 target "https://www.lyx.org/HowToUseGIT"
3181 \begin_layout Itemize
3183 \begin_inset Flex Code
3186 \begin_layout Plain Layout
3192 to the folder of the
3193 \begin_inset Flex Code
3196 \begin_layout Plain Layout
3204 \begin_inset Flex Code
3207 \begin_layout Plain Layout
3215 \begin_inset Flex Code
3218 \begin_layout Plain Layout
3224 doesn't exist anywhere, it can be remade with the console command
3225 \begin_inset Flex Code
3228 \begin_layout Plain Layout
3234 in that directory, or you can use an existing po-file for some other language
3238 \begin_layout Itemize
3240 \begin_inset Flex Code
3243 \begin_layout Plain Layout
3253 \begin_layout Plain Layout
3254 This is just a text file, so it can be edited in any text editor.
3255 But there are also specialized programs that support such editing, such
3260 (for all platforms) or
3269 contains a `mode' for editing
3270 \begin_inset Flex Code
3273 \begin_layout Plain Layout
3280 \begin_inset Flex URL
3283 \begin_layout Plain Layout
3285 https://www.gnu.org/software/gettext/manual/html_node/PO-Mode.html#PO-Mode
3295 For some menu- and widget-labels, there are also shortcut keys that should
3297 Those keys are marked after a `|', and should be translated according to
3298 the words and phrases of the language.
3299 You should also fill also out the information at the beginning of the new
3301 \begin_inset Flex Code
3304 \begin_layout Plain Layout
3310 -file with your email-address, etc., so people know where to reach you with
3311 suggestions and entertaining flames.
3314 \begin_layout Standard
3315 If you are just doing this on your own, then:
3318 \begin_layout Itemize
3320 \begin_inset Flex Code
3323 \begin_layout Plain Layout
3330 This can be done with
3331 \begin_inset Flex Code
3334 \begin_layout Plain Layout
3335 msgfmt -o xx.mo < xx.po
3343 \begin_layout Itemize
3345 \begin_inset Flex Code
3348 \begin_layout Plain Layout
3354 -file to your locale-tree, at the correct directory for application messages
3359 xx, and under the name
3360 \begin_inset Flex Code
3363 \begin_layout Plain Layout
3370 \begin_inset space \thinspace{}
3374 \begin_inset space \space{}
3378 \begin_inset Flex Code
3381 \begin_layout Plain Layout
3382 /usr/local/share/locale/xx/LC_MESSAGES/lyx.mo
3392 \begin_layout Standard
3393 As said, however, it would be best if the new
3394 \begin_inset Flex Code
3397 \begin_layout Plain Layout
3403 file could be added to the \SpecialChar LyX
3404 distribution, so others can use it.
3405 Adding it involves making additional changes to \SpecialChar LyX
3407 So send an email to the developers' mailing list if you're interested in
3411 \begin_layout Subsubsection
3415 \begin_layout Standard
3416 Sometimes it turns out that one English message needs to be translated into
3417 different messages in the target language.
3418 One example is the message
3419 \begin_inset Flex Code
3422 \begin_layout Plain Layout
3428 which has the German translation
3436 , depending upon exactly what the English
3437 \begin_inset Quotes eld
3441 \begin_inset Quotes erd
3446 \begin_inset Flex Code
3449 \begin_layout Plain Layout
3455 does not handle such ambiguous translations.
3456 Therefore you have to add some context information to the message: Instead
3458 \begin_inset Flex Code
3461 \begin_layout Plain Layout
3468 \begin_inset Flex Code
3471 \begin_layout Plain Layout
3472 To[[as in 'From format x to format y']]
3478 \begin_inset Flex Code
3481 \begin_layout Plain Layout
3482 To[[as in 'From page x to page y']].
3487 Now the two occurrences of
3488 \begin_inset Flex Code
3491 \begin_layout Plain Layout
3498 \begin_inset Flex Code
3501 \begin_layout Plain Layout
3507 and can be translated correctly to
3518 \begin_layout Standard
3519 Of course the context information needs to be stripped off the original
3520 message when no translation is used.
3521 Therefore you have to put it in double square brackets at the end of the
3522 message (see the example above).
3523 The translation mechanism of \SpecialChar LyX
3524 ensures that everything in double square
3525 brackets at the end of messages is removed before displaying the message.
3528 \begin_layout Subsection
3529 Translating the documentation.
3532 \begin_layout Standard
3533 The online documentation (in the
3534 \begin_inset Flex Noun
3537 \begin_layout Plain Layout
3543 -menu) can (and should!) be translated.
3544 If there are translated versions of the documentation available
3548 \begin_layout Plain Layout
3549 As of March 2008, at least some of the documents have been translated into
3550 fourteen languages, with the Tutorial available in a few more.
3555 and the locale is set accordingly, these will be used automagically by
3559 looks for translated versions as
3560 \begin_inset Flex Code
3563 \begin_layout Plain Layout
3564 LyXDir/doc/xx/DocName.lyx
3570 \begin_inset Flex Code
3573 \begin_layout Plain Layout
3579 is the code for the language currently in use.
3580 If there are no translated documents, the default English versions will
3582 Note that the translated versions must have the same filenames (
3583 \begin_inset Flex Code
3586 \begin_layout Plain Layout
3592 above) as the original.
3593 If you feel up to translating the documentation (an excellent way to proof-read
3594 the original documentation by the way!), there are a few things you should
3598 \begin_layout Itemize
3599 Check out the documentation translation web page at
3600 \begin_inset CommandInset href
3602 name "https://www.lyx.org/Translation"
3603 target "https://www.lyx.org/Translation"
3609 That way, you can find out which (if any) documents have already been translate
3610 d into your language.
3611 You can also find out who (if anyone) is organizing the effort to translate
3612 the documentation into your language.
3613 If no one is organizing the effort, please let us know that you're interested.
3616 \begin_layout Standard
3617 Once you get to actually translating, here's a few hints for you that may
3621 \begin_layout Itemize
3622 Join the documentation team! There is information on how to do that in
3623 \begin_inset Flex Code
3626 \begin_layout Plain Layout
3633 \begin_inset Flex Noun
3636 \begin_layout Plain Layout
3637 Help\SpecialChar menuseparator
3643 ), which by the way is the first document you should translate.
3646 \begin_layout Itemize
3647 Learn the typographic conventions for the language you are translating to.
3648 Typography is an ancient art and over the centuries, a great variety of
3649 conventions have developed throughout different parts of the world.
3650 Also study the professional terminology amongst typographers in your country.
3651 Inventing your own terminology will only confuse the users.
3654 (Warning! Typography is addictive!)
3657 \begin_layout Itemize
3658 Make a copy of the document.
3659 This will be your working copy.
3660 You can use this as your personal translated help-file by placing it in
3662 \begin_inset Flex Code
3665 \begin_layout Plain Layout
3672 \begin_inset Note Greyedout
3675 \begin_layout Plain Layout
3680 For a complex document with external material (images, etc.), if you make
3682 \begin_inset space \thinspace{}
3686 \begin_inset space \space{}
3689 in a temp dir, beware that the links to external material may be broken
3690 when the document is moved to a different place.
3691 The best way is to retrieve the \SpecialChar LyX
3693 \begin_inset Flex URL
3696 \begin_layout Plain Layout
3698 https://www.lyx.org/HowToUseGIT
3703 ) and to edit the doc file in place.
3711 \begin_layout Itemize
3712 Sometimes the original document (from the \SpecialChar LyX
3713 team) will be updated.
3714 Use the source viewer at
3715 \begin_inset CommandInset href
3717 name "https://www.lyx.org/trac/timeline"
3718 target "https://www.lyx.org/trac/timeline"
3723 to see what has been changed.
3724 That way you can easily see which parts of the translated document need
3728 \begin_layout Standard
3729 If you ever find an error in the original document, fix it and notify the
3730 rest of the documentation team of the changes! (You didn't forget to join
3731 the documentation team, did you?)
3734 \begin_layout Standard
3735 \begin_inset Branch OutDated
3739 \begin_layout Section
3740 International Keyboard Support
3743 \begin_layout Standard
3746 [Editor's Note: The following section is by
3754 It needs to be fixed to conform to the new Documentation Style sheet and
3755 to make use of the new v1.0 features.
3756 The whole thing also needs to be merged with the section following it.-jw
3757 It may also be badly out of date.-rh (2008)]
3760 \begin_layout Subsection
3761 Defining Own Keymaps: Keymap File Format
3764 \begin_layout Standard
3765 Let's look at a keyboard definition file a little closer.
3766 It is a plain text file defining
3769 \begin_layout Itemize
3770 key-to-key or key-to-string translations
3773 \begin_layout Itemize
3777 \begin_layout Itemize
3778 dead keys exceptions
3781 \begin_layout Standard
3782 To define key-to-key or key-to-string translation, use this command:
3785 \begin_layout Quotation
3786 \begin_inset Flex Code
3789 \begin_layout Plain Layout
3798 \begin_inset Flex Code
3801 \begin_layout Plain Layout
3810 \begin_layout Standard
3812 \begin_inset Flex Code
3815 \begin_layout Plain Layout
3821 is the key to be translated and
3822 \begin_inset Flex Code
3825 \begin_layout Plain Layout
3831 is the string to be inserted into the document.
3832 To define dead keys, use:
3835 \begin_layout Quotation
3836 \begin_inset Flex Code
3839 \begin_layout Plain Layout
3848 \begin_inset Flex Code
3851 \begin_layout Plain Layout
3860 \begin_layout Standard
3862 \begin_inset Flex Code
3865 \begin_layout Plain Layout
3871 is a keyboard key and
3872 \begin_inset Flex Code
3875 \begin_layout Plain Layout
3882 The following dead keys are supported (shortcut name is in parentheses):
3885 \begin_layout Quotation
3889 \begin_inset space \hfill{}
3895 \begin_layout Quotation
3897 \begin_inset space \hfill{}
3903 \begin_layout Quotation
3905 \begin_inset space \hfill{}
3911 \begin_layout Quotation
3913 \begin_inset space \hfill{}
3919 \begin_layout Quotation
3921 \begin_inset space \hfill{}
3927 \begin_layout Quotation
3929 \begin_inset space \hfill{}
3936 \begin_layout Plain Layout
3948 \begin_layout Quotation
3950 \begin_inset space \hfill{}
3956 \begin_layout Quotation
3958 \begin_inset space \hfill{}
3965 \begin_layout Plain Layout
3977 \begin_layout Quotation
3979 \begin_inset space \hfill{}
3985 \begin_layout Quotation
3987 \begin_inset space \hfill{}
3993 \begin_layout Quotation
3995 \begin_inset space \hfill{}
4002 \begin_layout Plain Layout
4014 \begin_layout Quotation
4016 \begin_inset space \hfill{}
4023 \begin_layout Plain Layout
4035 \begin_layout Quotation
4037 \begin_inset space \hfill{}
4043 \begin_layout Quotation
4044 hungarian umlaut (hug)
4045 \begin_inset space \hfill{}
4051 \begin_layout Quotation
4053 \begin_inset space \hfill{}
4059 \begin_layout Quotation
4061 \begin_inset space \hfill{}
4068 \begin_layout Plain Layout
4080 \begin_layout Standard
4081 Since in many international keyboards there are exceptions to what some
4082 dead keys should do, you can define them using
4085 \begin_layout Quotation
4086 \begin_inset Flex Code
4089 \begin_layout Plain Layout
4097 deadkey key outstring
4100 \begin_layout Standard
4101 For example, on Slovak keyboard, if you enter caron-o, it generates circumflex-o
4105 \begin_layout Quotation
4106 \begin_inset Flex Code
4109 \begin_layout Plain Layout
4122 \begin_layout Standard
4123 to make it work correctly.
4124 Also, you have to define as exceptions dead keys over i and j, to remove
4125 the dot from them before inserting an accent mark.
4126 I will change this when the time comes, but so far I haven't had time.
4129 \begin_layout Standard
4130 Oh, and about characters: backslash is escaped, so to enter it, you'll need
4133 \begin_inset Flex Code
4136 \begin_layout Plain Layout
4142 have different meaning.
4144 \begin_inset Flex Code
4147 \begin_layout Plain Layout
4153 marks comments, quotes start and end \SpecialChar LaTeX
4155 To enter quote, you'll need to use
4156 \begin_inset Flex Code
4159 \begin_layout Plain Layout
4168 \begin_inset Flex Code
4171 \begin_layout Plain Layout
4178 \begin_inset Flex Code
4181 \begin_layout Plain Layout
4192 \begin_layout Standard
4193 If you make a keyboard description file that works for your language, please
4194 mail it to me, so I can include it in the next keymap distribution.
4197 \begin_layout Standard
4198 More keywords will be supported in keymap configuration file in future,
4202 \begin_layout Itemize
4203 \begin_inset Flex Code
4206 \begin_layout Plain Layout
4217 \begin_inset space \hfill{}
4221 \begin_inset Flex Code
4224 \begin_layout Plain Layout
4233 \begin_layout Itemize
4234 \begin_inset Flex Code
4237 \begin_layout Plain Layout
4248 \begin_inset space \hfill{}
4252 \begin_inset Flex Code
4255 \begin_layout Plain Layout
4261 an external keymap translation program
4264 \begin_layout Standard
4265 Also, it should look into
4266 \begin_inset Flex Code
4269 \begin_layout Plain Layout
4275 file for defaults, too (for example, a
4276 \begin_inset Flex Code
4279 \begin_layout Plain Layout
4287 option to include default keyboard).
4295 \begin_layout Section
4296 International Keymap Stuff
4297 \begin_inset CommandInset label
4299 name "sec:International-Keymap-Stuff"
4306 \begin_layout Standard
4307 \begin_inset Note Note
4310 \begin_layout Plain Layout
4311 In doing the revisions on this document in March 2008, I did not look over
4312 this stuff, as I do not understand it.
4313 It would be good if someone else could do so.
4322 \begin_layout Standard
4323 The next two sections describe the
4324 \begin_inset Flex Code
4327 \begin_layout Plain Layout
4336 \begin_inset Flex Code
4339 \begin_layout Plain Layout
4347 file syntax in detail.
4348 These sections should help you design your own key map if the ones provided
4349 do not meet your needs.
4352 \begin_layout Subsection
4356 \begin_layout Standard
4360 \begin_inset Flex Code
4363 \begin_layout Plain Layout
4369 file maps keystrokes to characters or strings.
4370 As the name suggests, it sets a keyboard mapping.
4372 \begin_inset Flex Code
4375 \begin_layout Plain Layout
4386 \begin_inset Flex Code
4389 \begin_layout Plain Layout
4404 \begin_inset Flex Code
4407 \begin_layout Plain Layout
4420 \begin_inset Flex Code
4423 \begin_layout Plain Layout
4432 \begin_inset Flex Code
4435 \begin_layout Plain Layout
4443 are described in this section.
4446 \begin_layout Labeling
4447 \labelwidthstring 00.00.0000
4448 \begin_inset Flex Code
4451 \begin_layout Plain Layout
4459 Map a character to a string
4462 \begin_layout LyX-Code
4477 \begin_layout Standard
4510 the double-quote (")
4527 must be escaped with a preceding backslash (
4538 \begin_layout Standard
4540 \begin_inset Flex Noun
4543 \begin_layout Plain Layout
4551 statement to cause the symbol
4552 \begin_inset Flex Noun
4555 \begin_layout Plain Layout
4563 to be output for the keystroke
4564 \begin_inset Flex Noun
4567 \begin_layout Plain Layout
4578 \begin_layout LyX-Code
4584 \begin_layout Labeling
4585 \labelwidthstring 00.00.0000
4586 \begin_inset Flex Code
4589 \begin_layout Plain Layout
4597 Specify an accent character
4600 \begin_layout LyX-Code
4609 \begin_layout Standard
4610 This will make the cha
4648 This is the dead key
4652 \begin_layout Plain Layout
4659 refers to a key that does not produce a character by itself, but when followed
4660 with another key, produces the desired accent character.
4661 For example, a German characte
4663 r with an umlaut like
4673 can be produced in this manner.
4682 \begin_layout Standard
4695 and then another key not in
4712 followed by the other, not allowed key, as output.
4716 \begin_inset Flex Noun
4719 \begin_layout Plain Layout
4727 cancels a dead key, so if
4738 \begin_inset Flex Noun
4741 \begin_layout Plain Layout
4750 , the cursor will not go one position backwards but will instead cancel
4766 might have had on the next keystroke.
4770 \begin_layout Standard
4771 The following example specifies that the character ' is to be an acute accent,
4772 allowed on the characters a, e, i, o, u, A, E, I, O, and U:
4775 \begin_layout LyX-Code
4778 kmod ' acute aeiouAEIOU
4781 \begin_layout Labeling
4782 \labelwidthstring 00.00.0000
4783 \begin_inset Flex Code
4786 \begin_layout Plain Layout
4792 Specify an exception to the accent character
4795 \begin_layout LyX-Code
4804 \begin_layout Standard
4805 This defines an exce
4846 have been assigned a keystroke with a previous
4849 \begin_inset Flex Code
4852 \begin_layout Plain Layout
4876 must not belong in the
4923 If such a declaration does not exist in
4931 \begin_inset Flex Code
4934 \begin_layout Plain Layout
4968 \begin_inset Flex Code
4971 \begin_layout Plain Layout
4985 \begin_layout Standard
4986 The following command produces causes äi to be produced when you enter acute-i
4990 \begin_layout LyX-Code
5004 \begin_layout Labeling
5005 \labelwidthstring 00.00.0000
5006 \begin_inset Flex Code
5009 \begin_layout Plain Layout
5015 Combine two accent characters
5018 \begin_layout LyX-Code
5024 accent1 accent2 allowed
5027 \begin_layout Standard
5028 This one is getting pretty esoteric.
5029 It allows you to combine the effect
5085 \begin_inset Flex Code
5088 \begin_layout Plain Layout
5116 \begin_layout Standard
5117 Consider this example from the
5118 \begin_inset Flex Code
5121 \begin_layout Plain Layout
5132 \begin_layout LyX-Code
5135 kmod ; acute aeioyvhAEIOYVH
5139 kcomb acute umlaut iyIY
5142 \begin_layout Standard
5143 This allows you to press
5144 \begin_inset Flex Noun
5147 \begin_layout Plain Layout
5155 and get the effect of
5156 \begin_inset Flex Code
5159 \begin_layout Plain Layout
5178 in this case cancels the last dead key, so if you press
5179 \begin_inset Flex Noun
5182 \begin_layout Plain Layout
5191 \begin_inset Flex Code
5194 \begin_layout Plain Layout
5207 \begin_layout Subsection
5211 \begin_layout Standard
5213 \begin_inset Flex Code
5216 \begin_layout Plain Layout
5224 mapping is performed, a
5225 \begin_inset Flex Code
5228 \begin_layout Plain Layout
5238 file maps the strings that the symbols generate to characters in the current
5240 The \SpecialChar LyX
5241 distribution currently includes at least the
5242 \begin_inset Flex Code
5245 \begin_layout Plain Layout
5254 \begin_inset Flex Code
5257 \begin_layout Plain Layout
5268 \begin_layout Standard
5270 \begin_inset Flex Code
5273 \begin_layout Plain Layout
5281 file is a sequence of declarations of the form
5284 \begin_layout LyX-Code
5297 \begin_layout Standard
5298 For example, in order to map
5299 \begin_inset Flex Noun
5302 \begin_layout Plain Layout
5312 to the corresponding character in the iso-8859-1 set (233), the following
5316 \begin_layout LyX-Code
5324 \begin_layout Standard
5326 \begin_inset Flex Code
5329 \begin_layout Plain Layout
5338 \begin_inset Flex Code
5341 \begin_layout Plain Layout
5359 the same character can apply to more than one string.
5361 \begin_inset Flex Code
5364 \begin_layout Plain Layout
5375 \begin_layout LyX-Code
5387 \begin_inset Newline newline
5403 \begin_layout Standard
5405 cannot find a mapping for the string produced by the keystroke or a
5406 deadkey sequence, it will check if it looks like an accented char and try
5407 to draw an accent over the character on screen.
5410 \begin_layout Subsection
5414 \begin_layout Standard
5415 There is a second way to add support for international characters through
5416 so-called dead-keys.
5417 A dead-key works in combination with a letter to produce an accented character.
5418 Here, we'll explain how to create a really simple dead-key to illustrate
5422 \begin_layout Standard
5423 Suppose you happen to need the circumflex character,
5424 \begin_inset Quotes eld
5428 \begin_inset Quotes erd
5433 \begin_inset Flex Noun
5436 \begin_layout Plain Layout
5443 \begin_inset space ~
5447 \begin_inset Flex Noun
5450 \begin_layout Plain Layout
5456 ] to the \SpecialChar LyX
5458 \begin_inset Flex Code
5461 \begin_layout Plain Layout
5468 \begin_inset Flex Code
5471 \begin_layout Plain Layout
5478 Now, whenever you type the
5479 \begin_inset Flex Noun
5482 \begin_layout Plain Layout
5488 -key followed by a letter, that letter will have a circumflex accent on
5490 For example, the sequence
5491 \begin_inset Quotes eld
5495 \begin_inset Flex Noun
5498 \begin_layout Plain Layout
5505 \begin_inset Quotes erd
5508 produces the letter:
5509 \begin_inset Quotes eld
5513 \begin_inset Quotes erd
5517 If you tried to type
5518 \begin_inset Quotes eld
5522 \begin_inset Flex Noun
5525 \begin_layout Plain Layout
5532 \begin_inset Quotes erd
5535 , however, \SpecialChar LyX
5536 will complain with a beep, since a
5537 \begin_inset Quotes eld
5541 \begin_inset Flex Noun
5544 \begin_layout Plain Layout
5551 \begin_inset Quotes erd
5554 never takes a circumflex accent.
5556 \begin_inset Flex Noun
5559 \begin_layout Plain Layout
5565 after a dead-key produces the bare-accent.
5566 Please note this last point! If you bind a key to a dead-key, you'll need
5567 to rebind the character on that key to yet another key.
5569 \begin_inset Flex Noun
5572 \begin_layout Plain Layout
5578 to a cedilla is a bad idea, since you'll only get cedillas instead of commas.
5581 \begin_layout Standard
5582 One common way to bind dead-keys is to use
5583 \begin_inset Flex Noun
5586 \begin_layout Plain Layout
5593 \begin_inset Flex Noun
5596 \begin_layout Plain Layout
5603 \begin_inset Flex Noun
5606 \begin_layout Plain Layout
5612 in combination with an accent, like
5613 \begin_inset Quotes eld
5617 \begin_inset Flex Noun
5620 \begin_layout Plain Layout
5627 \begin_inset Quotes erd
5631 \begin_inset Quotes eld
5635 \begin_inset Flex Noun
5638 \begin_layout Plain Layout
5645 \begin_inset Quotes erd
5649 \begin_inset Quotes eld
5653 \begin_inset Flex Noun
5656 \begin_layout Plain Layout
5663 \begin_inset Quotes erd
5667 Another way involves using
5668 \begin_inset Flex Code
5671 \begin_layout Plain Layout
5678 \begin_inset Flex Code
5681 \begin_layout Plain Layout
5687 to set up the special
5688 \begin_inset Flex Code
5691 \begin_layout Plain Layout
5699 \begin_inset Flex Code
5702 \begin_layout Plain Layout
5708 acts in some ways just like
5709 \begin_inset Flex Noun
5712 \begin_layout Plain Layout
5718 and permits you to bind keys to accented characters.
5719 You can also turn keys into dead-keys by binding them to something like
5721 \begin_inset Flex Code
5724 \begin_layout Plain Layout
5730 and then binding this symbolic key to the corresponding \SpecialChar LyX
5735 \begin_layout Plain Layout
5740 : This is exactly what I do in my
5741 \begin_inset Flex Code
5744 \begin_layout Plain Layout
5751 \begin_inset Flex Code
5754 \begin_layout Plain Layout
5762 \begin_inset Flex Noun
5765 \begin_layout Plain Layout
5767 \begin_inset space ~
5776 \begin_inset Flex Code
5779 \begin_layout Plain Layout
5785 and a bunch of these
5786 \begin_inset Quotes eld
5790 \begin_inset Flex Code
5793 \begin_layout Plain Layout
5800 \begin_inset Quotes erd
5803 symbolic keys bound such things as
5804 \begin_inset Flex Noun
5807 \begin_layout Plain Layout
5809 \begin_inset space ~
5818 \begin_inset Flex Noun
5821 \begin_layout Plain Layout
5823 \begin_inset space ~
5832 This is how I produce my accented characters.
5837 You can make just about anything into the
5838 \begin_inset Flex Code
5841 \begin_layout Plain Layout
5848 \begin_inset Flex Noun
5851 \begin_layout Plain Layout
5857 keys, a spare function key, etc.
5858 As for the \SpecialChar LyX
5859 commands that produce accents, check the entry for
5860 \begin_inset Flex Code
5863 \begin_layout Plain Layout
5874 You'll find the complete list there.
5877 \begin_layout Subsection
5878 Saving your Language Configuration
5881 \begin_layout Standard
5882 You can edit your preferences so that your desired language environment
5883 is automatically configured when \SpecialChar LyX
5885 \begin_inset Flex Noun
5888 \begin_layout Plain Layout
5889 Edit\SpecialChar menuseparator
5898 \begin_layout Chapter
5899 Installing New Document Classes, Layouts, and Templates
5900 \begin_inset CommandInset label
5902 name "cha:Installing-New-Document"
5907 \begin_inset Argument 1
5910 \begin_layout Plain Layout
5911 Installing New Document Classes
5919 \begin_layout Standard
5920 In this chapter, we describe the procedures for creating and installing
5921 new \SpecialChar LyX
5922 layout and template files, as well as offer a refresher on correctly
5923 installing new \SpecialChar LaTeX
5928 \begin_layout Standard
5929 First, let us a say a few words about how one ought to think about the relation
5930 between \SpecialChar LyX
5931 and \SpecialChar LaTeX
5933 The thing to understand is that, in a certain sense, \SpecialChar LyX
5934 doesn't know anything
5935 about \SpecialChar LaTeX
5937 Indeed, from \SpecialChar LyX
5938 's point of view, \SpecialChar LaTeX
5939 is just one of several
5940 \begin_inset Quotes eld
5944 \begin_inset Quotes erd
5947 in which it is capable of producing output.
5948 Other such formats are DocBook, plaintext, and XHTML.
5950 is, of course, a particularly important format, but very little of the
5951 information \SpecialChar LyX
5952 has about \SpecialChar LaTeX
5953 is actually contained in the program itself.
5957 \begin_layout Plain Layout
5958 Some commands are sufficiently complex that they are
5959 \begin_inset Quotes eld
5963 \begin_inset Quotes erd
5966 into \SpecialChar LyX
5968 But the developers generally regard this as a Bad Thing.
5973 Rather, that information, even for the standard classes like
5974 \begin_inset Flex Code
5977 \begin_layout Plain Layout
5983 , is contained in `layout files'.
5984 Similarly, \SpecialChar LyX
5985 itself does not know much about DocBook or XHTML.
5986 What it knows is contained in layout files.
5989 \begin_layout Standard
5990 You can think of the layout file for a given document class as a translation
5991 manual between \SpecialChar LyX
5992 constructs—paragraphs with their corresponding styles,
5993 certain sorts of insets, etc—and the corresponding \SpecialChar LaTeX
5996 Almost everything \SpecialChar LyX
5998 \begin_inset Flex Code
6001 \begin_layout Plain Layout
6007 , for example, is contained in the file
6008 \begin_inset Flex Code
6011 \begin_layout Plain Layout
6017 and in various other files it includes.
6018 For this reason, anyone intending to write layout files should plan to
6019 study the existing files.
6020 A good place to start is with
6021 \begin_inset Flex Code
6024 \begin_layout Plain Layout
6030 , which is included in
6031 \begin_inset Flex Code
6034 \begin_layout Plain Layout
6041 \begin_inset Flex Code
6044 \begin_layout Plain Layout
6050 , and many of the other layout files for document classes.
6051 This file is where sections and the like are defined:
6052 \begin_inset Flex Code
6055 \begin_layout Plain Layout
6061 tells \SpecialChar LyX
6062 how paragraphs that are marked with the Section, Subsection, etc,
6063 styles can be translated into corresponding \SpecialChar LaTeX
6064 , DocBook, and XHTML commands
6067 \begin_inset Flex Code
6070 \begin_layout Plain Layout
6076 file basically just includes several of these
6077 \begin_inset Flex Code
6080 \begin_layout Plain Layout
6089 \begin_layout Standard
6090 Defining the \SpecialChar LyX
6092 correspondence is not the only thing layout files do, though.
6093 Their other job is to define how the \SpecialChar LyX
6094 constructs themselves will appear
6096 The fact that layout files have these two jobs is often a source of confusion,
6097 because they are completely separate.
6098 Telling \SpecialChar LyX
6099 how to translate a certain paragraph style into \SpecialChar LaTeX
6102 how to display it; conversely, telling \SpecialChar LyX
6103 how to display a certain paragraph
6104 style does not tell \SpecialChar LyX
6105 how to translate it into \SpecialChar LaTeX
6106 (let alone tell \SpecialChar LaTeX
6109 So, in general, when you define a new \SpecialChar LyX
6110 construct, you must always do two
6111 quite separate things: (i)
6112 \begin_inset space ~
6115 tell \SpecialChar LyX
6116 how to translate it into \SpecialChar LaTeX
6118 \begin_inset space ~
6121 tell \SpecialChar LyX
6125 \begin_layout Standard
6126 Much the same is true, of course, as regards \SpecialChar LyX
6127 's other backend formats, though
6128 XHTML is in some ways different, because in that case \SpecialChar LyX
6133 able, to some extent, to use information about how it should display a
6134 paragraph on the screen to output information (in the form of CSS) about
6135 how the paragraph should be displayed in a browser.
6136 Even in this case, however, the distinction between what \SpecialChar LyX
6138 and how things are rendered externally remains in force, and the two can
6139 be controlled separately.
6141 \begin_inset CommandInset ref
6143 reference "sec:Tags-for-XHTML"
6150 \begin_layout Section
6151 Installing new \SpecialChar LaTeX
6155 \begin_layout Standard
6156 Some installations may not include a \SpecialChar LaTeX
6157 package or class file that you would
6158 like to use within \SpecialChar LyX
6160 For example, you might need Foil\SpecialChar TeX
6161 , a package for preparing slides for overhead
6163 Modern \SpecialChar LaTeX
6164 distributions like \SpecialChar TeX
6165 Live (2008 or newer) or MiK\SpecialChar TeX
6166 provide a user interface
6167 for installing such packages.
6168 For example, with MiK\SpecialChar TeX
6169 , you start the program
6170 \begin_inset Quotes eld
6174 \begin_inset space ~
6178 \begin_inset Quotes erd
6181 to get a list of available packages.
6182 To install one of them, right click on it or use the corresponding toolbar
6186 \begin_layout Standard
6187 If your \SpecialChar LaTeX
6188 distribution does not provide such a `package manager', or if the
6189 package is not available from your distribution, then follow these steps
6190 to install it manually:
6193 \begin_layout Enumerate
6194 Get the package from
6195 \begin_inset CommandInset href
6198 target "http://www.ctan.org/"
6206 \begin_layout Enumerate
6207 If the package contains a file with the ending
6208 \begin_inset Quotes eld
6212 \begin_inset Flex Code
6215 \begin_layout Plain Layout
6222 \begin_inset Quotes erd
6225 (is the case for Foil\SpecialChar TeX
6226 ) then open a console, change to the folder of this
6227 file and execute the command
6228 \begin_inset Flex Code
6231 \begin_layout Plain Layout
6238 You have now unpacked the package and have all files to install it.
6239 Most \SpecialChar LaTeX
6240 -packages are not packed and you can skip this step.
6243 \begin_layout Enumerate
6244 Now you need to decide if the package should be available for all users
6249 \begin_layout Enumerate
6250 On *nix systems (Linux, OSX, etc.), if you want the new package to be available
6251 for all users on your system, then install it in your `local' \SpecialChar TeX
6253 install it in your own `user' \SpecialChar TeX
6255 Where these trees should be created, if they do not already exist, depends
6257 To find this out, look in the file
6258 \begin_inset Flex Code
6261 \begin_layout Plain Layout
6271 \begin_layout Plain Layout
6272 This is usually in the directory
6273 \begin_inset Flex Code
6276 \begin_layout Plain Layout
6282 , though you can execute the command
6283 \begin_inset Flex Code
6286 \begin_layout Plain Layout
6297 The location of the `local' \SpecialChar TeX
6298 tree is defined by the
6299 \begin_inset Flex Code
6302 \begin_layout Plain Layout
6308 variable; this is usually somewhere like
6309 \begin_inset Flex Code
6312 \begin_layout Plain Layout
6313 /usr/local/share/texmf
6318 or /usr/local/texlive/XXXX where XXXX is the year of the installed \SpecialChar TeX
6321 The location of the `user' \SpecialChar TeX
6323 \begin_inset Flex Code
6326 \begin_layout Plain Layout
6333 \begin_inset Flex Code
6336 \begin_layout Plain Layout
6343 \begin_inset Flex Code
6346 \begin_layout Plain Layout
6355 (If these variables are not predefined, you have to define them.) You'll
6356 probably need root permissions to create or modify the `local' tree, but
6357 not for your `user' tree.
6358 \begin_inset Newline newline
6361 In general, it is recommended to install in the user tree because your user
6362 will not be modified or even overwritten when you upgrade your system.
6363 It will typically also be backed up together with everything else when
6364 you backup your home directory (which, of course, you do on a regular basis).
6367 \begin_layout Enumerate
6368 On Windows, if you want the new package to be available for all users on
6369 your system, change to the folder where \SpecialChar LaTeX
6370 is installed and then change to
6372 \begin_inset Flex Code
6375 \begin_layout Plain Layout
6386 (For MiK\SpecialChar TeX
6387 , this would be by default the folder
6388 \begin_inset Flex Code
6391 \begin_layout Plain Layout
6409 \begin_layout Plain Layout
6410 Note that this will be the correct path only on English installations.
6411 On a German one, it would be
6412 \begin_inset Flex Code
6415 \begin_layout Plain Layout
6429 , and similarly for other languages.
6434 Create there a new folder
6435 \begin_inset Flex Code
6438 \begin_layout Plain Layout
6444 and copy all files of the package into it.
6446 \begin_inset Newline newline
6449 If the package should only available for you or you don't have admin permissions
6450 , do the same, but in the local \SpecialChar LaTeX
6453 \begin_inset space \thinspace{}
6456 g., for MiK\SpecialChar TeX
6458 \begin_inset space ~
6461 2.8 under Windows XP, this would be the folder:
6462 \begin_inset Newline newline
6468 \begin_inset Flex Code
6471 \begin_layout Plain Layout
6474 Documents and Settings
6486 \begin_inset Newline newline
6492 \begin_inset Phantom HPhantom
6495 \begin_layout Plain Layout
6506 \begin_inset Flex Code
6509 \begin_layout Plain Layout
6522 \begin_inset Newline newline
6525 On Vista, it would be:
6526 \begin_inset Newline newline
6530 \begin_inset Flex Code
6533 \begin_layout Plain Layout
6559 \begin_layout Enumerate
6560 Now one only need to tell \SpecialChar LaTeX
6561 that there are new files.
6562 This depends on the used \SpecialChar LaTeX
6567 \begin_layout Enumerate
6568 For \SpecialChar TeX
6569 Live execute the command
6570 \begin_inset Flex Code
6573 \begin_layout Plain Layout
6580 If you installed the package for all users, then you will probably need
6581 to have root permissions for that.
6584 \begin_layout Enumerate
6585 For MiK\SpecialChar TeX
6586 , if you have installed the package for all users, start the program
6588 \begin_inset Quotes eld
6592 \begin_inset space ~
6596 \begin_inset Quotes erd
6599 and press the button marked
6600 \begin_inset Quotes eld
6604 \begin_inset Quotes erd
6608 Otherwise start the program
6609 \begin_inset Quotes eld
6613 \begin_inset Quotes erd
6620 \begin_layout Enumerate
6621 Finally, you need to tell \SpecialChar LyX
6622 that there are new packages available.
6623 So, in \SpecialChar LyX
6625 \begin_inset Flex Noun
6628 \begin_layout Plain Layout
6631 \SpecialChar menuseparator
6637 and then restart \SpecialChar LyX
6641 \begin_layout Standard
6642 Now the package is installed.
6643 In our example, the document class
6644 \begin_inset Flex Code
6647 \begin_layout Plain Layout
6653 will now be available under
6654 \begin_inset Flex Noun
6657 \begin_layout Plain Layout
6658 Document\SpecialChar menuseparator
6659 Settings\SpecialChar menuseparator
6666 \begin_inset Quotes eld
6670 \begin_inset Quotes erd
6677 \begin_layout Standard
6678 If you would like to use a \SpecialChar LaTeX
6679 document class that is not even listed in the
6681 \begin_inset Flex Noun
6684 \begin_layout Plain Layout
6685 Document\SpecialChar menuseparator
6686 Settings\SpecialChar menuseparator
6692 , then you need to create a `layout' file for it.
6693 That is the topic of the next section.
6696 \begin_layout Section
6697 Types of layout files
6700 \begin_layout Standard
6701 This section describes the various sorts of \SpecialChar LyX
6702 files that contain layout informati
6704 These files describe various paragraph and character styles, determining
6705 how \SpecialChar LyX
6706 should display them and how they should be translated into \SpecialChar LaTeX
6708 XHTML, or whatever output format is being used.
6712 \begin_layout Standard
6713 We shall try to provide a thorough description of the process of writing
6715 However, there are so many different types of documents supported even
6716 by just \SpecialChar LaTeX
6717 that we can't hope to cover every different possibility or problem
6718 you might encounter.
6719 The \SpecialChar LyX
6720 users' list is frequented by people with lots of experience with layout
6721 design who are willing to share what they've learned, so please feel free
6722 to ask questions there.
6725 \begin_layout Standard
6726 As you prepare to write a new layout, it is extremely helpful to look at
6727 the layouts distributed with \SpecialChar LyX
6729 If you write a \SpecialChar LyX
6730 layout for a \SpecialChar LaTeX
6731 document class that might also be used by
6732 others, or write a module that might be useful to others, then you should
6733 consider posting your layout to the
6734 \begin_inset CommandInset href
6736 name "layout section on the LyX wiki"
6737 target "https://wiki.lyx.org/Layouts/Layouts"
6742 or even to the \SpecialChar LyX
6743 developers' list, so that it might be included in \SpecialChar LyX
6748 \begin_layout Plain Layout
6749 Note that \SpecialChar LyX
6750 is licensed under the General Public License, so any material
6751 that is contributed to \SpecialChar LyX
6752 must be similarly licensed.
6760 \begin_layout Subsection
6762 \begin_inset CommandInset label
6764 name "subsec:Layout-modules"
6771 \begin_layout Standard
6772 We have spoken to this point about `layout files'.
6773 But there are different sorts of files that contain layout information.
6774 Layout files, strictly so called, have the
6775 \begin_inset Flex Code
6778 \begin_layout Plain Layout
6784 extension and provide \SpecialChar LyX
6785 with information about document classes.
6786 Since \SpecialChar LyX
6787 1.6 layout information can also be contained in layout
6792 \begin_inset Flex Code
6795 \begin_layout Plain Layout
6802 Modules are to \SpecialChar LaTeX
6803 packages much as layouts are to \SpecialChar LaTeX
6804 classes, and some modules—such
6806 \begin_inset Flex Code
6809 \begin_layout Plain Layout
6815 module—specifically provide support for one package.
6816 In a sense, layout modules are similar to included
6820 \begin_layout Plain Layout
6821 These can have any extension, but by convention have the
6822 \begin_inset Flex Code
6825 \begin_layout Plain Layout
6837 \begin_inset Flex Code
6840 \begin_layout Plain Layout
6846 —in that modules are not specific to a given document class but may be used
6847 with many different classes.
6848 The difference is that using an included file with
6849 \begin_inset Flex Code
6852 \begin_layout Plain Layout
6858 requires editing that file.
6859 Modules, by contrast, are selected in the
6860 \begin_inset Flex Noun
6863 \begin_layout Plain Layout
6864 Document\SpecialChar menuseparator
6873 \begin_layout Standard
6874 Building modules is the easiest way to get started with layout editing,
6875 since it can be as simple as adding a single new paragraph style or flex
6877 But modules may, in principle, contain anything a layout file can contain.
6880 \begin_layout Standard
6881 After creating a new module and copying it to the
6882 \begin_inset Flex Code
6885 \begin_layout Plain Layout
6891 folder, you will need to reconfigure and then restart \SpecialChar LyX
6894 However, changes you make to the module will be seen immediately, if you
6896 \begin_inset Flex Noun
6899 \begin_layout Plain Layout
6900 Document\SpecialChar menuseparator
6906 , highlight something, and then hit
6907 \begin_inset Quotes eld
6911 \begin_inset Quotes erd
6917 It is strongly recommended that you save your work before doing this
6922 it is strongly recommended that you not attempt to edit modules while simultaneo
6923 usly working on actual documents
6926 Though of course the developers strive to keep \SpecialChar LyX
6927 stable in such situations,
6928 syntax errors and the like in your module file could cause strange behavior.
6931 \begin_layout Subsubsection
6935 \begin_layout Standard
6936 Modules are to \SpecialChar LyX
6937 as packages are to \SpecialChar LaTeX
6939 Sometimes, however, you find yourself wanting a specific inset or character
6940 style just for one document and writing a module that will also be available
6941 to other documents makes little sense.
6942 What you need is \SpecialChar LyX
6944 \begin_inset Quotes eld
6948 \begin_inset Quotes erd
6954 \begin_layout Standard
6955 You will find it under
6957 Document\SpecialChar menuseparator
6958 Settings\SpecialChar menuseparator
6962 The large text box allows you to enter anything that you might enter in
6963 a layout file or module.
6964 You can think of a document's local layout, in fact, as a module that belongs
6966 So, in particular, you must enter a
6967 \begin_inset Flex Code
6970 \begin_layout Plain Layout
6977 Any format is acceptable, but one would normally use the format current
6979 (In \SpecialChar LyX
6986 , the current layout format is
6995 \begin_layout Standard
6996 When you have entered something in the
6997 \begin_inset Flex Code
7000 \begin_layout Plain Layout
7006 pane, \SpecialChar LyX
7008 \begin_inset Quotes eld
7012 \begin_inset Quotes erd
7015 button at the bottom.
7016 Clicking this button will cause \SpecialChar LyX
7017 to determine whether what you have entered
7018 is valid layout information for the chosen format.
7020 will report the result but, unfortunately, will not tell you what errors
7021 there might have been.
7022 These will be written to the terminal, however, if \SpecialChar LyX
7023 is started from a terminal.
7024 You will not be permitted to save your local layout until you have entered
7028 \begin_layout Standard
7029 The warnings at the end of the previous section apply here, too.
7030 Do not play with local layout while you are actually working, especially
7031 if you have not saved your document.
7032 That said, using local layout with a test document can be a very convenient
7033 way to try out layout ideas, or even to start developing a module.
7036 \begin_layout Subsection
7038 \begin_inset Flex Noun
7041 \begin_layout Plain Layout
7050 \begin_layout Standard
7051 There are two situations you are likely to encounter when wanting to support
7052 a new \SpecialChar LaTeX
7053 document class, involving style (
7054 \begin_inset Flex Code
7057 \begin_layout Plain Layout
7063 ) files and \SpecialChar LaTeX2e
7065 \begin_inset Flex Code
7068 \begin_layout Plain Layout
7075 Supporting a style file is usually fairly easy.
7076 Supporting a new class file is a bit harder.
7077 We'll discuss the former in this section and the latter in the next.
7078 Similar remarks apply, of course, if you want to support a new DocBook
7082 \begin_layout Standard
7083 The easier case is the one in which your new document class is provided
7084 as a style file that is to be used in conjunction with an already supported
7086 For the sake of the example, we'll assume that the style file is called
7088 \begin_inset Flex Noun
7091 \begin_layout Plain Layout
7097 and that it is meant to be used with
7098 \begin_inset Flex Noun
7101 \begin_layout Plain Layout
7107 , which is a standard class.
7111 \begin_layout Standard
7112 Start by copying the existing class's layout file into your local directory:
7116 \begin_layout Plain Layout
7117 Of course, which directory is your local directory will vary by platform,
7118 and \SpecialChar LyX
7119 allows you to specify your local directory on startup, too, using
7121 \begin_inset Flex Code
7124 \begin_layout Plain Layout
7138 \begin_layout LyX-Code
7139 cp report.layout ~/.lyx/layouts/myclass.layout
7142 \begin_layout Standard
7144 \begin_inset Flex Code
7147 \begin_layout Plain Layout
7153 and change the line:
7156 \begin_layout LyX-Code
7159 DeclareLaTeXClass{Report (Standard Class)}
7162 \begin_layout Standard
7166 \begin_layout LyX-Code
7169 DeclareLaTeXClass[report, myclass.sty]{Report (My Class)}
7172 \begin_layout Standard
7176 \begin_layout LyX-Code
7178 \begin_inset Newline newline
7184 \begin_inset Newline newline
7190 \begin_layout Standard
7191 near the top of the file.
7194 \begin_layout Standard
7195 Start \SpecialChar LyX
7197 \begin_inset Flex Noun
7200 \begin_layout Plain Layout
7201 Tools\SpecialChar menuseparator
7208 Then restart \SpecialChar LyX
7209 and try creating a new document.
7211 \begin_inset Flex Noun
7214 \begin_layout Plain Layout
7220 " as a document class option in the
7221 \begin_inset Flex Noun
7224 \begin_layout Plain Layout
7225 Document\SpecialChar menuseparator
7232 It is likely that some of the sectioning commands and such in your new
7233 class will work differently from how they worked in the base class—
7234 \begin_inset Flex Code
7237 \begin_layout Plain Layout
7243 in this example—so you can fiddle around with the settings for the different
7244 sections if you wish.
7245 The layout information for sections is contained in
7246 \begin_inset Flex Code
7249 \begin_layout Plain Layout
7255 , but you do not need to copy and change this file.
7256 Instead, you can simply add your changes to your layout file, after the
7258 \begin_inset Flex Code
7261 \begin_layout Plain Layout
7267 , which itself includes
7268 \begin_inset Flex Code
7271 \begin_layout Plain Layout
7278 For example, you might add these lines:
7281 \begin_layout LyX-Code
7285 \begin_layout LyX-Code
7289 \begin_layout LyX-Code
7293 \begin_layout LyX-Code
7297 \begin_layout LyX-Code
7301 \begin_layout Standard
7302 to change the font for chapter headings to sans-serif.
7303 This will override (or, in this case, add to) the existing declaration
7304 for the Chapter style.
7308 \begin_layout Standard
7309 Your new package may also provide commands or environments not present in
7311 In this case, you will want to add these to the layout file.
7313 \begin_inset CommandInset ref
7315 reference "sec:TextClass"
7319 for information on how to do so.
7322 \begin_layout Standard
7324 \begin_inset Flex Noun
7327 \begin_layout Plain Layout
7333 can be used with several different document classes, and even if it cannot,
7334 you might find it easiest just to write a module that you can load with
7336 The simplest possible such module would be:
7339 \begin_layout LyX-Code
7342 DeclareLyXModule{My Class}
7345 \begin_layout LyX-Code
7349 \begin_layout LyX-Code
7350 #Support for myclass.sty.
7353 \begin_layout LyX-Code
7355 \begin_inset Newline newline
7361 \begin_layout LyX-Code
7369 \begin_inset Newline newline
7375 \begin_layout LyX-Code
7377 \begin_inset Newline newline
7383 \begin_inset Newline newline
7389 \begin_layout Standard
7390 A more complex module might modify the behavior of some existing constructs
7391 or define some new ones.
7393 \begin_inset CommandInset ref
7395 reference "sec:TextClass"
7402 \begin_layout Subsection
7404 \begin_inset Flex Noun
7407 \begin_layout Plain Layout
7416 \begin_layout Standard
7417 There are two possibilities here.
7418 One is that the class file is itself based upon an existing document class.
7419 For example, many thesis classes are based upon
7420 \begin_inset Flex Noun
7423 \begin_layout Plain Layout
7430 To see whether yours is, look for a line like
7433 \begin_layout LyX-Code
7439 \begin_layout Standard
7441 If so, then you may proceed largely as in the previous section, though
7443 \begin_inset Flex Code
7446 \begin_layout Plain Layout
7447 Declare\SpecialChar LaTeX
7453 line will be different.
7454 If your new class is
7455 \begin_inset Flex Code
7458 \begin_layout Plain Layout
7464 and it is based upon
7465 \begin_inset Flex Code
7468 \begin_layout Plain Layout
7474 , then the line should read:
7478 \begin_layout Plain Layout
7479 And it will be easiest if you save the file to
7480 \begin_inset Flex Code
7483 \begin_layout Plain Layout
7490 assumes that the document class has the same name as the layout file.
7499 \begin_layout LyX-Code
7502 DeclareLaTeXClass[thesis,book]{thesis}
7505 \begin_layout Standard
7506 If, on the other hand, the new class is not based upon an existing class,
7507 you will probably have to
7508 \begin_inset Quotes eld
7512 \begin_inset Quotes erd
7516 We strongly suggest copying an existing layout file which uses a similar
7518 class and then modifying it, if you can do so.
7519 At least use an existing file as a starting point so you can find out what
7520 items you need to worry about.
7521 Again, the specifics are covered below.
7524 \begin_layout Subsection
7526 \begin_inset CommandInset label
7528 name "subsec:Creating-Templates"
7535 \begin_layout Standard
7536 Once you have written a layout file for a new document class, you might
7537 want to consider writing a
7542 A template acts as a kind of tutorial for your layout, showing how it might
7543 be used, though containing dummy content.
7544 You can of course look at the various templates included with \SpecialChar LyX
7548 \begin_layout Standard
7549 Templates are created just like usual documents: using \SpecialChar LyX
7551 The only difference is that usual documents contain all possible settings,
7552 including the font scheme and the paper size.
7553 Usually a user doesn't want a template to overwrite his preferred settings
7554 for such parameters.
7555 For that reason, the designer of a template should remove the corresponding
7557 \begin_inset Flex Code
7560 \begin_layout Plain Layout
7569 \begin_inset Flex Code
7572 \begin_layout Plain Layout
7580 from the template \SpecialChar LyX
7582 This can be done with any simple text-editor, for example
7583 \begin_inset Flex Code
7586 \begin_layout Plain Layout
7593 \begin_inset Flex Code
7596 \begin_layout Plain Layout
7605 \begin_layout Standard
7606 Put the edited template files you create in
7607 \begin_inset Flex Code
7610 \begin_layout Plain Layout
7616 , copy the ones you use from the global template directory in
7617 \begin_inset Flex Code
7620 \begin_layout Plain Layout
7626 to the same place, and redefine the template path in the
7627 \begin_inset Flex Noun
7630 \begin_layout Plain Layout
7631 Tools\SpecialChar menuseparator
7632 Preferences\SpecialChar menuseparator
7641 \begin_layout Standard
7642 Note, by the way, that there is a template which has a particular meaning:
7643 \begin_inset Newline linebreak
7647 \begin_inset Flex Code
7650 \begin_layout Plain Layout
7657 This template is loaded every time you create a new document with
7658 \begin_inset Flex Noun
7661 \begin_layout Plain Layout
7662 File\SpecialChar menuseparator
7668 in order to provide useful defaults.
7669 To create this template from inside \SpecialChar LyX
7670 , all you have to do is to open a document
7671 with the correct settings, and use the
7672 \begin_inset Flex Noun
7675 \begin_layout Plain Layout
7676 Save as Document Defaults
7684 \begin_layout Subsection
7685 Upgrading old layout files
7688 \begin_layout Standard
7689 The format of layout files changes with each \SpecialChar LyX
7690 release, so old layout files
7691 need to be converted to the new format.
7693 reads a layout file in an older format, it automatically calls the
7695 \begin_inset Flex Code
7698 \begin_layout Plain Layout
7704 to convert it to a temporary file in current format.
7705 The original file is left untouched.
7706 If you use the layout file often, then, you may want to convert it permanently,
7707 so that \SpecialChar LyX
7708 does not have to do so itself every time.
7709 To do this, you can call the converter manually:
7712 \begin_layout Enumerate
7714 \begin_inset Flex Code
7717 \begin_layout Plain Layout
7724 \begin_inset Flex Code
7727 \begin_layout Plain Layout
7736 \begin_layout Enumerate
7738 \begin_inset Newline newline
7742 \begin_inset Flex Code
7745 \begin_layout Plain Layout
7746 python LyXDir/scripts/layout2layout.py myclass.old myclass.layout
7752 \begin_inset Newline newline
7756 \begin_inset Flex Code
7759 \begin_layout Plain Layout
7765 is the name of your \SpecialChar LyX
7769 \begin_layout Standard
7770 Note that manual conversion does not affect included files, so these will
7771 have to be converted separately.
7774 \begin_layout Subsection
7775 \begin_inset CommandInset label
7777 name "subsec:Cite-Engine-Files"
7784 \begin_layout Standard
7785 A specific form of layout files are the so-called
7786 \begin_inset Flex Code
7789 \begin_layout Plain Layout
7795 files that are located in the
7796 \begin_inset Flex Code
7799 \begin_layout Plain Layout
7806 Their purpose is to define the specifics of \SpecialChar LaTeX
7807 packages aimed at bibliography
7820 , but also the way how normal Bib\SpecialChar TeX
7821 citations (without additional packages)
7822 are handled in \SpecialChar LyX
7823 is defined in such a file.
7827 \begin_layout Standard
7828 More specifically, it is defined which packages \SpecialChar LyX
7829 needs to load, which citation
7830 commands are available, how these are to be displayed in \SpecialChar LyX
7832 the dialogs, the context menus) as well as in the XHTML and plain text
7834 Furthermore, the files specify available style variants (author-year, numerical
7835 , etc.) and their specifics.
7836 The cite engine files are also used to generate the options that are available
7839 Document\SpecialChar menuseparator
7840 Settings\SpecialChar menuseparator
7841 Bibliography\SpecialChar menuseparator
7847 \begin_layout Standard
7848 Even though a cite engine file is essentially a normal layout file that
7849 could theoretically include any layout information, it usually primarily
7850 includes some specific parameters such as
7851 \begin_inset Flex Code
7854 \begin_layout Plain Layout
7861 \begin_inset Flex Code
7864 \begin_layout Plain Layout
7871 \begin_inset Flex Code
7874 \begin_layout Plain Layout
7881 \begin_inset Flex Code
7884 \begin_layout Plain Layout
7891 The syntax of the latter two is described in
7892 \begin_inset CommandInset ref
7894 reference "subsec:Citation-engine-description"
7902 \begin_inset CommandInset ref
7904 reference "subsec:Citation-format-description"
7908 , as well as in the files themselves.
7911 \begin_layout Section
7912 \begin_inset CommandInset label
7914 name "sec:TextClass"
7918 The layout file format
7921 \begin_layout Standard
7922 The following sections describe how layout files are structured and written.
7923 Our advice is to go slowly, save and test often.
7924 It is really not that hard, except that the multitude of options can become
7925 overwhelming, especially if you try to check out too many at once.
7926 It becomes easier if you use existing layouts of \SpecialChar LyX
7927 as examples/reference
7928 or if you modify an existing layout to your needs.
7931 \begin_layout Standard
7932 Note that all the tags used in layout files are case-insensitive.
7934 \begin_inset Flex Code
7937 \begin_layout Plain Layout
7944 \begin_inset Flex Code
7947 \begin_layout Plain Layout
7954 \begin_inset Flex Code
7957 \begin_layout Plain Layout
7963 are really the same tag.
7964 The possible arguments are printed in brackets after the tag's name.
7965 The default argument is typeset
7966 \begin_inset Flex Code
7969 \begin_layout Plain Layout
7978 If the argument has a data type like
7979 \begin_inset Quotes eld
7983 \begin_inset Quotes erd
7987 \begin_inset Quotes eld
7991 \begin_inset Quotes erd
7994 , the default is shown like this:
7995 \begin_inset Flex Code
7998 \begin_layout Plain Layout
8009 \begin_layout Subsection
8010 The document class declaration and classification
8013 \begin_layout Standard
8014 Lines in a layout file which begin with
8015 \begin_inset Flex Code
8018 \begin_layout Plain Layout
8025 There is one exception to this rule.
8027 \begin_inset Flex Code
8030 \begin_layout Plain Layout
8036 files should begin with lines like:
8039 \begin_layout LyX-Code
8042 #% Do not delete the line below; configure depends on this
8045 \begin_layout LyX-Code
8050 DeclareLaTeXClass{Article (Standard Class)}
8053 \begin_layout LyX-Code
8058 DeclareCategory{Articles}
8061 \begin_layout Standard
8062 The second and third lines are used when you (re)configure \SpecialChar LyX
8064 The layout file is read by the \SpecialChar LaTeX
8066 \begin_inset Flex Code
8069 \begin_layout Plain Layout
8075 , in a special mode where
8076 \begin_inset Flex Code
8079 \begin_layout Plain Layout
8086 The first line is just a \SpecialChar LaTeX
8087 comment, the second one contains the mandatory
8088 declaration of the text class and the third line contains the optional
8089 classification of the class.
8090 If these lines appear in a file named
8091 \begin_inset Flex Code
8094 \begin_layout Plain Layout
8100 , then they define a text class of name
8101 \begin_inset Flex Code
8104 \begin_layout Plain Layout
8110 (the name of the layout file) which uses the \SpecialChar LaTeX
8112 \begin_inset Flex Code
8115 \begin_layout Plain Layout
8121 (the default is to use the same name as the layout).
8123 \begin_inset Quotes eld
8126 Article (Standard Class)
8127 \begin_inset Quotes erd
8130 that appears above is used as a description of the text class in the
8131 \begin_inset Flex Noun
8134 \begin_layout Plain Layout
8135 Document\SpecialChar menuseparator
8143 \begin_inset Quotes eld
8147 \begin_inset Quotes erd
8150 in the example) is also used in the
8151 \begin_inset Flex Noun
8154 \begin_layout Plain Layout
8155 Document\SpecialChar menuseparator
8161 dialog: the text classes are grouped by these categories (which are usually
8162 genres, so typical categories are
8163 \begin_inset Quotes eld
8167 \begin_inset Quotes erd
8171 \begin_inset Quotes eld
8175 \begin_inset Quotes erd
8179 \begin_inset Quotes eld
8183 \begin_inset Quotes erd
8187 \begin_inset Quotes eld
8191 \begin_inset Quotes erd
8195 \begin_inset Quotes eld
8199 \begin_inset Quotes erd
8203 \begin_inset Quotes eld
8207 \begin_inset Quotes erd
8211 If no category has been declared, the class will be put in the
8212 \begin_inset Quotes eld
8216 \begin_inset Quotes erd
8222 \begin_layout Standard
8223 Let's assume that you wrote your own text class that uses the
8224 \begin_inset Flex Code
8227 \begin_layout Plain Layout
8233 document class, but where you changed the appearance of the section headings.
8234 If you put it in a file
8235 \begin_inset Flex Code
8238 \begin_layout Plain Layout
8244 , the header of this file should be:
8247 \begin_layout LyX-Code
8250 #% Do not delete the line below; configure depends on this
8253 \begin_layout LyX-Code
8258 DeclareLaTeXClass[article]{Article (with My Own Headings)}
8261 \begin_layout LyX-Code
8266 DeclareCategory{Articles}
8269 \begin_layout Standard
8270 This declares a text class
8271 \begin_inset Flex Code
8274 \begin_layout Plain Layout
8280 , associated with the \SpecialChar LaTeX
8282 \begin_inset Flex Code
8285 \begin_layout Plain Layout
8292 \begin_inset Quotes eld
8295 Article (with My Own Headings)
8296 \begin_inset Quotes erd
8300 If your text class depends on several packages, you can declare it as:
8303 \begin_layout LyX-Code
8306 #% Do not delete the line below; configure depends on this
8309 \begin_layout LyX-Code
8314 DeclareLaTeXClass[article,foo.sty]{Article (with My Own Headings)}
8317 \begin_layout LyX-Code
8322 DeclareCategory{Articles}
8325 \begin_layout Standard
8326 This indicates that your text class uses the
8327 \begin_inset Flex Code
8330 \begin_layout Plain Layout
8337 Finally, it is also possible to declare classes for DocBook code.
8338 Typical declarations will look like:
8341 \begin_layout LyX-Code
8344 #% Do not delete the line below; configure depends on this
8347 \begin_layout LyX-Code
8352 DeclareDocBookClass[article]{SGML (DocBook Article)}
8355 \begin_layout LyX-Code
8360 DeclareCategory{Articles (DocBook)}
8363 \begin_layout Standard
8364 Note that these declarations can also be given an optional parameter declaring
8365 the name of the document class (but not a list).
8368 \begin_layout Standard
8369 So, to be as explicit as possible, the form of the layout declaration is:
8372 \begin_layout LyX-Code
8377 DeclareLaTeXClass[class,package.sty]{layout description}
8380 \begin_layout LyX-Code
8385 DeclareCategory{category}
8388 \begin_layout Standard
8389 The class need only be specified if the name of the \SpecialChar LaTeX
8391 name of the layout file are different or if there are packages to load.
8392 If the name of the class file is not specified, then \SpecialChar LyX
8394 that it is the same as the name of the layout file.
8397 \begin_layout Standard
8398 When the text class has been modified to your taste, all you have to do
8399 is to copy it either to
8400 \begin_inset Flex Code
8403 \begin_layout Plain Layout
8410 \begin_inset Flex Code
8413 \begin_layout Plain Layout
8420 \begin_inset Flex Noun
8423 \begin_layout Plain Layout
8424 Tools\SpecialChar menuseparator
8430 , exit \SpecialChar LyX
8432 Then your new text class should be available along with the others.
8435 \begin_layout Standard
8436 Once the layout file is installed, you can edit it and see your changes
8437 without having to reconfigure or to restart \SpecialChar LyX
8442 \begin_layout Plain Layout
8443 In versions of \SpecialChar LyX
8444 prior to 1.6, this was not true.
8445 As a result, editing layout files was very time consuming, since you had
8446 constantly to restart \SpecialChar LyX
8452 You can force a reload of the current layout by using the \SpecialChar LyX
8454 \begin_inset Flex Noun
8457 \begin_layout Plain Layout
8464 There is no default binding for this function—though, of course, you can
8465 bind it to a key yourself.
8466 But you will normally use this function simply by entering it in the mini-buffe
8471 \begin_layout Standard
8477 \begin_inset Flex Noun
8480 \begin_layout Plain Layout
8486 is very much an `advanced feature'.
8491 recommended that you save your work before using this function.
8496 recommended that you not attempt to edit layout information while simultaneousl
8497 y working on a document that you care about.
8498 Use a test document.
8499 Syntax errors and the like in your layout file could cause peculiar behavior.
8500 In particular, such errors could cause \SpecialChar LyX
8501 to regard the current layout as
8502 invalid and to attempt to switch to some other layout.
8506 \begin_layout Plain Layout
8507 Really bad syntax errors may even caused \SpecialChar LyX
8509 This is because certain sorts of errors may make \SpecialChar LyX
8520 The \SpecialChar LyX
8521 team strives to keep \SpecialChar LyX
8522 stable in such situations, but safe is better
8527 \begin_layout Plain Layout
8528 While we're giving advice: make regular backups.
8529 And be nice to your mother.
8537 \begin_layout Subsection
8538 The Module declaration
8541 \begin_layout Standard
8542 A module must begin with a line like the following:
8545 \begin_layout LyX-Code
8548 DeclareLyXModule[endnotes.sty]{Endnotes}
8549 \change_inserted -712698321 1554395911
8553 \begin_layout LyX-Code
8555 \change_inserted -712698321 1554395924
8560 DeclareCategory{Foot- and Endnotes}
8561 \change_deleted -712698321 1554395911
8569 \begin_layout Standard
8570 The mandatory argument
8571 \change_inserted -712698321 1554395956
8580 , in curly brackets, is the name of the module, as it should appear in
8581 \begin_inset Flex Noun
8584 \begin_layout Plain Layout
8585 Document\SpecialChar menuseparator
8586 Settings\SpecialChar menuseparator
8593 The argument in square brackets is optional: It declares any \SpecialChar LaTeX
8595 on which the module depends.
8596 It is also possible to use the form
8597 \begin_inset Flex Noun
8600 \begin_layout Plain Layout
8606 as an optional argument, which declares that the module can only be used
8607 when there exists a conversion chain between the formats `
8608 \begin_inset Flex Code
8611 \begin_layout Plain Layout
8618 \begin_inset Flex Code
8621 \begin_layout Plain Layout
8629 \change_inserted -712698321 1554396133
8636 declaration is not strictly mandatory, but you should add it, since it
8637 is helpful to find the module.
8638 Please have a look at the existing module categories and if appropriate,
8644 \begin_layout Standard
8646 \change_inserted -712698321 1554395988
8649 declaration should then be followed by lines like the following:
8653 \begin_layout Plain Layout
8654 Preferably in English if the module should be published with \SpecialChar LyX
8656 This description will appear in the list of messages to be translated and
8657 will be thus translated with the next interface update.
8665 \begin_layout LyX-Code
8669 \begin_layout LyX-Code
8670 #Adds an endnote command, in addition to footnotes.
8674 \begin_layout LyX-Code
8675 #You will need to add
8677 theendnotes in TeX code where you
8680 \begin_layout LyX-Code
8681 #want the endnotes to appear.
8685 \begin_layout LyX-Code
8689 \begin_layout LyX-Code
8690 #Requires: somemodule | othermodule
8693 \begin_layout LyX-Code
8694 #Excludes: badmodule
8697 \begin_layout Standard
8698 The description is used in
8699 \begin_inset Flex Noun
8702 \begin_layout Plain Layout
8703 Document\SpecialChar menuseparator
8704 Settings\SpecialChar menuseparator
8710 to provide the user with information about what the module does.
8712 \begin_inset Flex Code
8715 \begin_layout Plain Layout
8721 line is used to identify other modules with which this one must be used;
8723 \begin_inset Flex Code
8726 \begin_layout Plain Layout
8732 line is used to identify modules with which this one may not be used.
8733 Both are optional, and, as shown, multiple modules should be separated
8734 with the pipe symbol: |.
8735 Note that the required modules are treated disjunctively:
8739 of the required modules must be used.
8744 excluded module may be used.
8745 Note that modules are identified here by their filenames without the
8746 \begin_inset Flex Code
8749 \begin_layout Plain Layout
8757 \begin_inset Flex Code
8760 \begin_layout Plain Layout
8767 \begin_inset Flex Code
8770 \begin_layout Plain Layout
8779 \begin_layout Subsection
8780 The CiteEngine file declaration
8783 \begin_layout Standard
8784 A cite engine file must begin with a line like the following:
8787 \begin_layout LyX-Code
8790 DeclareLyXCiteEngineModule[biblatex.sty]{Biblatex}
8793 \begin_layout Standard
8794 The mandatory argument, in curly brackets, is the name of the cite style,
8795 as it should appear in
8796 \begin_inset Flex Noun
8799 \begin_layout Plain Layout
8800 Document\SpecialChar menuseparator
8801 Settings\SpecialChar menuseparator
8808 The argument in square brackets is optional: It declares any \SpecialChar LaTeX
8810 on which the cite engine depends.
8813 \begin_layout Standard
8814 The cite engine declaration should then be followed by lines like the following:
8818 \begin_layout Plain Layout
8819 Preferably in English if the module should be published with \SpecialChar LyX
8821 This description will appear in the list of messages to be translated and
8822 will be thus translated with the next interface update.
8830 \begin_layout LyX-Code
8834 \begin_layout LyX-Code
8835 # Biblatex supports many author-year and numerical styles.
8838 \begin_layout LyX-Code
8839 # It is mainly aimed at the Humanities.
8843 \begin_layout LyX-Code
8844 # customizable, fully localized and provides many features
8847 \begin_layout LyX-Code
8848 # that are not possible with BibTeX.
8849 The use of 'biber' as
8852 \begin_layout LyX-Code
8853 # bibliography processor is advised.
8856 \begin_layout LyX-Code
8860 \begin_layout Standard
8861 The description is used in
8862 \begin_inset Flex Noun
8865 \begin_layout Plain Layout
8866 Document\SpecialChar menuseparator
8867 Settings\SpecialChar menuseparator
8873 to provide the user with information about the cite engine.
8876 \begin_layout Subsection
8880 \begin_layout Standard
8881 The first non-comment line of any layout file, included file, or module
8886 contain the file format number:
8889 \begin_layout Description
8890 \begin_inset Flex Code
8893 \begin_layout Plain Layout
8900 \begin_inset Flex Code
8903 \begin_layout Plain Layout
8909 ] The format number of the layout file.
8912 \begin_layout Standard
8913 This tag was introduced with \SpecialChar LyX
8915 \begin_inset space ~
8919 Layout files from older \SpecialChar LyX
8920 versions do not have an explicit file format and
8921 are considered to have
8922 \begin_inset Flex Code
8925 \begin_layout Plain Layout
8927 \begin_inset space ~
8936 The format for the present version of \SpecialChar LyX
8938 But each version of \SpecialChar LyX
8939 is capable of reading earlier versions' layout files,
8940 just as they are capable of reading files produced by earlier versions
8943 There is, however, no provision for converting to earlier formats.
8946 \begin_layout Subsection
8947 \begin_inset CommandInset label
8949 name "subsec:General-text-class"
8953 General text class parameters
8956 \begin_layout Standard
8957 These are general parameters that govern the behavior of an entire document
8963 mean that they must appear in
8964 \begin_inset Flex Code
8967 \begin_layout Plain Layout
8973 files rather than in modules.
8974 A module can contain any layout tag.)
8977 \begin_layout Description
8979 \change_inserted -712698321 1526899478
8980 \begin_inset Flex Code
8983 \begin_layout Plain Layout
8985 \change_inserted -712698321 1526898610
8986 AddToCiteEngine <engine>
8991 Extends the possibilities for displaying citation references.
8993 \begin_inset CommandInset ref
8995 reference "subsec:Citation-engine-description"
9004 \begin_inset Flex Code
9007 \begin_layout Plain Layout
9009 \change_inserted -712698321 1526898823
9020 \begin_layout Description
9021 \begin_inset Flex Code
9024 \begin_layout Plain Layout
9030 Adds information that will be output in the
9031 \begin_inset Flex Code
9034 \begin_layout Plain Layout
9040 block when the document is output to XHTML.
9041 Typically, this would be used to output CSS style information, but it can
9042 be used for anything that can appear in
9043 \begin_inset Flex Code
9046 \begin_layout Plain Layout
9054 \begin_inset Quotes eld
9058 \begin_inset Flex Code
9061 \begin_layout Plain Layout
9068 \begin_inset Quotes erd
9074 \begin_layout Description
9075 \begin_inset Flex Code
9078 \begin_layout Plain Layout
9084 Adds information to the document preamble.
9086 \begin_inset Newline newline
9090 \begin_inset Quotes eld
9094 \begin_inset Flex Code
9097 \begin_layout Plain Layout
9104 \begin_inset Quotes erd
9110 \begin_layout Description
9111 \begin_inset Flex Code
9114 \begin_layout Plain Layout
9120 Defines the possibilities for displaying citation references.
9122 \begin_inset CommandInset ref
9124 reference "subsec:Citation-engine-description"
9133 \begin_inset Quotes eld
9137 \begin_inset Flex Code
9140 \begin_layout Plain Layout
9147 \begin_inset Quotes erd
9151 Primarily used in cite engine files (see
9152 \begin_inset CommandInset ref
9154 reference "subsec:Cite-Engine-Files"
9163 \change_inserted -712698321 1526898530
9164 Note that if you specify this in a layout file or module, any cite engine
9165 definition will be overridden.
9167 \begin_inset Flex Code
9170 \begin_layout Plain Layout
9172 \change_inserted -712698321 1526898530
9185 \begin_layout Description
9186 \begin_inset Flex Code
9189 \begin_layout Plain Layout
9195 Defines formats for use in the display of bibliographic information.
9197 \begin_inset CommandInset ref
9199 reference "subsec:Citation-format-description"
9205 \begin_inset Quotes eld
9209 \begin_inset Flex Code
9212 \begin_layout Plain Layout
9219 \begin_inset Quotes erd
9223 Primarily used in cite engine files (see
9224 \begin_inset CommandInset ref
9226 reference "subsec:Cite-Engine-Files"
9235 \change_inserted -712698321 1526898585
9236 A cite format defined in a layout or module will override the cite engine
9242 \begin_layout Description
9243 \begin_inset Flex Code
9246 \begin_layout Plain Layout
9253 \begin_inset Flex Code
9256 \begin_layout Plain Layout
9265 \begin_inset Flex Code
9268 \begin_layout Plain Layout
9274 ] Determines whether
9278 or Bib\SpecialChar TeX
9279 is used to generate a Bibliography.
9280 Primarily used in cite engine files (see
9281 \begin_inset CommandInset ref
9283 reference "subsec:Cite-Engine-Files"
9293 \begin_layout Description
9294 \begin_inset Flex Code
9297 \begin_layout Plain Layout
9303 Describes various global options supported by the document class.
9305 \begin_inset CommandInset ref
9307 reference "subsec:ClassOptions"
9313 \begin_inset Quotes eld
9317 \begin_inset Flex Code
9320 \begin_layout Plain Layout
9327 \begin_inset Quotes erd
9333 \begin_layout Description
9334 \begin_inset Flex Code
9337 \begin_layout Plain Layout
9344 \begin_inset Flex Code
9347 \begin_layout Plain Layout
9356 \begin_inset space \thinspace{}
9360 \begin_inset Flex Code
9363 \begin_layout Plain Layout
9369 ] Whether the class should
9373 to having one or two columns.
9374 Can be changed in the
9375 \begin_inset Flex Noun
9378 \begin_layout Plain Layout
9379 Document\SpecialChar menuseparator
9388 \begin_layout Description
9389 \begin_inset Flex Code
9392 \begin_layout Plain Layout
9399 \begin_inset Flex Code
9402 \begin_layout Plain Layout
9408 ] This sequence defines the properties for a counter.
9409 If the counter does not yet exist, it is created; if it does exist, it
9412 \begin_inset Quotes eld
9416 \begin_inset Flex Code
9419 \begin_layout Plain Layout
9426 \begin_inset Quotes erd
9430 \begin_inset Newline newline
9434 \begin_inset CommandInset ref
9436 reference "subsec:Counters"
9440 for details on counters.
9443 \begin_layout Description
9444 \begin_inset Flex Code
9447 \begin_layout Plain Layout
9453 Sets the default font used to display the document.
9455 \begin_inset CommandInset ref
9457 reference "subsec:Font-description"
9461 for how to declare fonts.
9463 \begin_inset Quotes eld
9467 \begin_inset Flex Code
9470 \begin_layout Plain Layout
9477 \begin_inset Quotes erd
9483 \begin_layout Description
9484 \begin_inset Flex Code
9487 \begin_layout Plain Layout
9494 \begin_inset Flex Code
9497 \begin_layout Plain Layout
9503 ] Specifies a module to be included by default with this document class.
9504 The module is specified as filename without the
9505 \begin_inset Flex Code
9508 \begin_layout Plain Layout
9515 The user can still remove the module, but it will be active at the outset.
9516 (This applies only when new files are created, or when this class is chosen
9517 for an existing document.)
9520 \begin_layout Description
9521 \begin_inset Flex Code
9524 \begin_layout Plain Layout
9531 \begin_inset Flex Code
9534 \begin_layout Plain Layout
9540 ] This is the style that will be assigned to new paragraphs, usually
9541 \begin_inset Flex Noun
9544 \begin_layout Plain Layout
9551 This will default to the first defined style if not given, but you are
9552 encouraged to use this directive.
9555 \begin_layout Description
9556 \begin_inset Flex Code
9559 \begin_layout Plain Layout
9566 \begin_inset Flex Code
9569 \begin_layout Plain Layout
9575 ] This tag indicates that the module (which is specified by filename without
9577 \begin_inset Flex Code
9580 \begin_layout Plain Layout
9586 extension) cannot be used with this document class.
9587 This might be used in a journal-specific layout file to prevent, say, the
9589 \begin_inset Flex Code
9592 \begin_layout Plain Layout
9598 module that numbers theorems by section.
9603 be used in a module.
9604 Modules have their own way of excluding other modules (see
9605 \begin_inset CommandInset ref
9607 reference "subsec:Layout-modules"
9614 \begin_layout Description
9615 \begin_inset Flex Code
9618 \begin_layout Plain Layout
9624 Defines a new float.
9626 \begin_inset CommandInset ref
9628 reference "subsec:Floats"
9634 \begin_inset Quotes eld
9638 \begin_inset Flex Code
9641 \begin_layout Plain Layout
9648 \begin_inset Quotes erd
9654 \begin_layout Description
9655 \begin_inset Flex Code
9658 \begin_layout Plain Layout
9664 Sets the information that will be output in the
9665 \begin_inset Flex Code
9668 \begin_layout Plain Layout
9674 block when this document class is output to XHTML.
9675 Note that this will completely override any prior
9676 \begin_inset Flex Code
9679 \begin_layout Plain Layout
9686 \begin_inset Flex Code
9689 \begin_layout Plain Layout
9697 \begin_inset Newline newline
9701 \begin_inset Flex Code
9704 \begin_layout Plain Layout
9710 if you just want to add material to the preamble.) Must end with
9711 \begin_inset Quotes eld
9715 \begin_inset Flex Code
9718 \begin_layout Plain Layout
9725 \begin_inset Quotes erd
9731 \begin_layout Description
9732 \begin_inset Flex Code
9735 \begin_layout Plain Layout
9742 \begin_inset Flex Code
9745 \begin_layout Plain Layout
9751 ] The style to use for the table of contents, bibliography, and so forth,
9752 when the document is output to HTML.
9753 For articles, this should normally be
9754 \begin_inset Flex Code
9757 \begin_layout Plain Layout
9764 \begin_inset Flex Code
9767 \begin_layout Plain Layout
9774 If it is not given, then \SpecialChar LyX
9775 will attempt to figure out which layout to use.
9778 \begin_layout Description
9779 \begin_inset Flex Code
9782 \begin_layout Plain Layout
9789 \begin_inset Flex Code
9792 \begin_layout Plain Layout
9798 ] Modifies the properties of the given counter.
9799 If the counter does not exist, the statement is ignored.
9801 \begin_inset Quotes eld
9805 \begin_inset Flex Code
9808 \begin_layout Plain Layout
9815 \begin_inset Quotes erd
9819 \begin_inset Newline newline
9823 \begin_inset CommandInset ref
9825 reference "subsec:Counters"
9829 for details on counters.
9832 \begin_layout Description
9833 \begin_inset Flex Code
9836 \begin_layout Plain Layout
9843 \begin_inset Flex Code
9846 \begin_layout Plain Layout
9852 ] This allows you to include another layout definition file within yours
9853 to avoid duplicating commands.
9854 Common examples are the standard layout files, for example,
9855 \begin_inset Flex Code
9858 \begin_layout Plain Layout
9864 , which contains most of the basic layouts.
9867 \begin_layout Description
9868 \begin_inset Flex Code
9871 \begin_layout Plain Layout
9878 \begin_inset Flex Code
9881 \begin_layout Plain Layout
9887 ] This section (re-)defines the layout of an inset.
9888 It can be applied to an existing inset or to a new, user-defined inset,
9889 e.g., a new character style.
9891 \begin_inset Quotes eld
9895 \begin_inset Flex Code
9898 \begin_layout Plain Layout
9905 \begin_inset Quotes erd
9909 \begin_inset Newline newline
9913 \begin_inset CommandInset ref
9915 reference "subsec:Flex-insets-and"
9919 for more information.
9923 \begin_layout Description
9924 \begin_inset Flex Code
9927 \begin_layout Plain Layout
9934 \begin_inset Flex Code
9937 \begin_layout Plain Layout
9943 ] A string that indicates the width of the left margin on the screen, for
9945 \begin_inset Quotes eld
9949 \begin_inset Flex Code
9952 \begin_layout Plain Layout
9959 \begin_inset Quotes erd
9963 (Note that this is not a `length', like
9964 \begin_inset Quotes eld
9968 \begin_inset Quotes erd
9974 \begin_layout Description
9975 \begin_inset Flex Code
9978 \begin_layout Plain Layout
9985 \begin_inset Flex Code
9988 \begin_layout Plain Layout
9994 ] An integer that determines the maximal number of names displayed in an
9995 author-year citation before the citation switches to
9996 \begin_inset Quotes eld
10000 \begin_inset Quotes erd
10004 Primarily used in cite engine files (see
10005 \begin_inset CommandInset ref
10007 reference "subsec:Cite-Engine-Files"
10017 \begin_layout Description
10018 \begin_inset Flex Code
10021 \begin_layout Plain Layout
10028 \begin_inset Flex Code
10031 \begin_layout Plain Layout
10037 ] Modifies the properties of the given paragraph style.
10038 If the style does not exist, this section is ignored.
10040 \begin_inset Quotes eld
10044 \begin_inset Flex Code
10047 \begin_layout Plain Layout
10054 \begin_inset Quotes erd
10060 \begin_layout Description
10061 \begin_inset Flex Code
10064 \begin_layout Plain Layout
10071 \begin_inset Flex Code
10074 \begin_layout Plain Layout
10080 ] Deletes an existing counter, usually one defined in an included file.
10083 \begin_layout Description
10084 \begin_inset Flex Code
10087 \begin_layout Plain Layout
10094 \begin_inset Flex Code
10097 \begin_layout Plain Layout
10103 ] Deletes an existing float.
10104 This is particularly useful when you want to suppress a float that has
10105 been defined in an input file.
10108 \begin_layout Description
10109 \begin_inset Flex Code
10112 \begin_layout Plain Layout
10119 \begin_inset Flex Code
10122 \begin_layout Plain Layout
10128 ] Deletes an existing style.
10131 \begin_layout Description
10132 \begin_inset Flex Code
10135 \begin_layout Plain Layout
10142 \begin_inset Flex Code
10145 \begin_layout Plain Layout
10152 \begin_inset Flex Code
10155 \begin_layout Plain Layout
10161 ] Define a new table of contents with type
10162 \begin_inset Flex Code
10165 \begin_layout Plain Layout
10172 \begin_inset Flex Code
10175 \begin_layout Plain Layout
10182 See also the AddToToc commands.
10185 \begin_layout Description
10186 \begin_inset Flex Code
10189 \begin_layout Plain Layout
10196 \begin_inset Flex Code
10199 \begin_layout Plain Layout
10205 ] The file format (as defined in the \SpecialChar LyX
10206 preferences) produced by this document
10208 It is mainly useful when
10209 \begin_inset Flex Code
10212 \begin_layout Plain Layout
10219 \begin_inset Flex Code
10222 \begin_layout Plain Layout
10228 and one wants to define a new type of literate document.
10229 The format is reset to
10230 \begin_inset Quotes eld
10234 \begin_inset Flex Code
10237 \begin_layout Plain Layout
10244 \begin_inset Quotes erd
10248 \begin_inset Quotes eld
10252 \begin_inset Flex Code
10255 \begin_layout Plain Layout
10262 \begin_inset Quotes erd
10265 when the corresponding
10266 \begin_inset Flex Code
10269 \begin_layout Plain Layout
10275 parameter is encountered.
10278 \begin_layout Description
10279 \begin_inset Flex Code
10282 \begin_layout Plain Layout
10289 \begin_inset Flex Code
10292 \begin_layout Plain Layout
10303 \begin_inset Flex Code
10306 \begin_layout Plain Layout
10313 \begin_inset Flex Code
10316 \begin_layout Plain Layout
10322 ] Specifies what sort of output documents using this class will produce.
10325 \begin_layout Description
10326 \begin_inset Flex Code
10329 \begin_layout Plain Layout
10336 \begin_inset Flex Code
10339 \begin_layout Plain Layout
10346 \begin_inset Flex Code
10349 \begin_layout Plain Layout
10355 ] Specifies options, given in the second string, for the package named by
10358 \begin_inset Quotes eld
10362 \begin_inset Flex Code
10365 \begin_layout Plain Layout
10366 PackageOptions natbib square
10372 \begin_inset Quotes erd
10376 \begin_inset Flex Code
10379 \begin_layout Plain Layout
10385 to be loaded with the
10386 \begin_inset Flex Code
10389 \begin_layout Plain Layout
10396 (For \SpecialChar TeX
10397 perts, this causes \SpecialChar LyX
10399 \begin_inset Flex Code
10402 \begin_layout Plain Layout
10405 PassOptionsToPackage{natbib}{square}
10411 \begin_inset Flex Code
10414 \begin_layout Plain Layout
10423 \begin_layout Description
10424 \begin_inset Flex Code
10427 \begin_layout Plain Layout
10434 \begin_inset Flex Code
10437 \begin_layout Plain Layout
10446 \begin_inset Flex Code
10449 \begin_layout Plain Layout
10456 \begin_inset Flex Code
10459 \begin_layout Plain Layout
10465 ] The default pagestyle.
10466 Can be changed in the
10467 \begin_inset Flex Noun
10470 \begin_layout Plain Layout
10471 Document\SpecialChar menuseparator
10480 \begin_layout Description
10481 \begin_inset Flex Code
10484 \begin_layout Plain Layout
10490 Sets the preamble for the \SpecialChar LaTeX
10492 Note that this will completely override any prior
10493 \begin_inset Flex Code
10496 \begin_layout Plain Layout
10503 \begin_inset Flex Code
10506 \begin_layout Plain Layout
10514 \begin_inset Flex Code
10517 \begin_layout Plain Layout
10523 if you just want to add material to the preamble.) Must end with
10524 \begin_inset Quotes eld
10528 \begin_inset Flex Code
10531 \begin_layout Plain Layout
10538 \begin_inset Quotes erd
10544 \begin_layout Description
10545 \begin_inset Flex Code
10548 \begin_layout Plain Layout
10555 \begin_inset Flex Code
10558 \begin_layout Plain Layout
10565 \begin_inset Flex Code
10568 \begin_layout Plain Layout
10577 \begin_inset space \thinspace{}
10581 \begin_inset Flex Code
10584 \begin_layout Plain Layout
10590 ] Whether the class already provides the feature
10591 \begin_inset Flex Code
10594 \begin_layout Plain Layout
10601 A feature is in general the name of a package (e.
10602 \begin_inset space \thinspace{}
10606 \begin_inset space \space{}
10610 \begin_inset Flex Code
10613 \begin_layout Plain Layout
10620 \begin_inset Flex Code
10623 \begin_layout Plain Layout
10630 \begin_inset space \thinspace{}
10634 \begin_inset space \space{}
10638 \begin_inset Flex Code
10641 \begin_layout Plain Layout
10648 \begin_inset Flex Code
10651 \begin_layout Plain Layout
10659 \begin_inset CommandInset ref
10661 reference "chap:List-of-functions"
10665 for the list of features.
10668 \begin_layout Description
10669 \begin_inset Flex Code
10672 \begin_layout Plain Layout
10679 \begin_inset Flex Code
10682 \begin_layout Plain Layout
10688 ] Indicates that this layout provides the functionality of the module mentioned,
10689 which should be specified by the filename without the
10690 \begin_inset Flex Code
10693 \begin_layout Plain Layout
10700 This will typically be used if the layout includes the module directly,
10701 rather than using the
10702 \begin_inset Flex Code
10705 \begin_layout Plain Layout
10711 tag to indicate that it ought to be used.
10712 It could also be used in a module that provided an alternate implementation
10713 of the same functionality.
10716 \begin_layout Description
10717 \begin_inset Flex Code
10720 \begin_layout Plain Layout
10727 \begin_inset Flex Code
10730 \begin_layout Plain Layout
10736 ] Creates a new paragraph style if it does not already exist.
10737 If the style does exist, this section is ignored.
10739 \begin_inset Quotes eld
10743 \begin_inset Flex Code
10746 \begin_layout Plain Layout
10753 \begin_inset Quotes erd
10759 \begin_layout Description
10760 \begin_inset Flex Code
10763 \begin_layout Plain Layout
10770 \begin_inset Flex Code
10773 \begin_layout Plain Layout
10779 ] Whether the class requires the feature
10780 \begin_inset Flex Code
10783 \begin_layout Plain Layout
10790 Multiple features must be separated by commas.
10791 Note that you can only request supported features.
10793 \begin_inset CommandInset ref
10795 reference "chap:List-of-functions"
10799 for the list of features.).
10800 If you require a package with specific options, you can additionally use
10802 \begin_inset Flex Code
10805 \begin_layout Plain Layout
10814 \begin_layout Description
10815 \begin_inset Flex Code
10818 \begin_layout Plain Layout
10825 \begin_inset Flex Code
10828 \begin_layout Plain Layout
10834 ] A string that indicates the width of the right margin on the screen, for
10836 \begin_inset Quotes eld
10840 \begin_inset Flex Code
10843 \begin_layout Plain Layout
10850 \begin_inset Quotes erd
10856 \begin_layout Description
10857 \begin_inset Flex Code
10860 \begin_layout Plain Layout
10867 \begin_inset Flex Code
10870 \begin_layout Plain Layout
10876 ] Sets which divisions get numbered.
10878 \begin_inset Newline newline
10882 \begin_inset Flex Code
10885 \begin_layout Plain Layout
10891 counter in \SpecialChar LaTeX
10895 \begin_layout Description
10896 \begin_inset Flex Code
10899 \begin_layout Plain Layout
10906 \begin_inset Flex Code
10909 \begin_layout Plain Layout
10918 \begin_inset space \thinspace{}
10922 \begin_inset Flex Code
10925 \begin_layout Plain Layout
10931 ] Whether the class-default should be printing on one or both sides of the
10933 Can be changed in the
10934 \begin_inset Flex Noun
10937 \begin_layout Plain Layout
10938 Document\SpecialChar menuseparator
10947 \begin_layout Description
10948 \begin_inset Flex Code
10951 \begin_layout Plain Layout
10958 \begin_inset Flex Code
10961 \begin_layout Plain Layout
10967 ] This sequence defines a paragraph style.
10968 If the style does not yet exist, it is created; if it does exist, its parameter
10971 \begin_inset Quotes eld
10975 \begin_inset Flex Code
10978 \begin_layout Plain Layout
10985 \begin_inset Quotes erd
10989 \begin_inset Newline newline
10993 \begin_inset CommandInset ref
10995 reference "subsec:Paragraph-Styles"
10999 for details on paragraph styles.
11000 \change_inserted -712698321 1553617804
11004 \begin_layout Description
11006 \change_inserted -712698321 1553617862
11007 \begin_inset Flex Code
11010 \begin_layout Plain Layout
11012 \change_inserted -712698321 1553617809
11019 \begin_inset Flex Code
11022 \begin_layout Plain Layout
11024 \change_inserted -712698321 1553617805
11030 ] defines the default table style that is used when inserting a table.
11031 The following styles are available:
11035 \begin_layout Itemize
11037 \change_inserted -712698321 1554308039
11038 \begin_inset Flex Code
11041 \begin_layout Plain Layout
11043 \change_inserted -712698321 1554307928
11044 Formal_with_Footline
11052 \begin_inset Quotes eld
11056 \begin_inset Quotes erd
11059 ) style with horizontal lines only, using a bold top and bottom line, the
11060 first and last row are additionally separated from the table body with
11061 a thin middle line.
11064 \begin_layout Itemize
11066 \change_inserted -712698321 1554308087
11067 \begin_inset Flex Code
11070 \begin_layout Plain Layout
11072 \change_inserted -712698321 1554308042
11073 Formal_without_Footline
11078 : same as the above, but the last row is not separated with a middle line
11082 \begin_layout Itemize
11084 \change_inserted -712698321 1553618031
11085 \begin_inset Flex Code
11088 \begin_layout Plain Layout
11090 \change_inserted -712698321 1553618006
11096 : Simple table lines.
11099 \begin_layout Itemize
11101 \change_inserted -712698321 1553618309
11102 \begin_inset Flex Code
11105 \begin_layout Plain Layout
11107 \change_inserted -712698321 1553618031
11114 \begin_inset Flex Code
11117 \begin_layout Plain Layout
11119 \change_inserted -712698321 1553618043
11125 , but with the header column offset with a second horizontal line.
11126 This is also the default style of \SpecialChar LyX
11130 \begin_layout Itemize
11132 \change_inserted -712698321 1553618280
11133 \begin_inset Flex Code
11136 \begin_layout Plain Layout
11138 \change_inserted -712698321 1553618261
11144 : Table without lines.
11150 \begin_layout Description
11151 \begin_inset Flex Code
11154 \begin_layout Plain Layout
11161 \begin_inset Flex Code
11164 \begin_layout Plain Layout
11170 ] The name of the command or environment to be used with
11171 \begin_inset Flex Code
11174 \begin_layout Plain Layout
11183 \begin_layout Description
11184 \begin_inset Flex Code
11187 \begin_layout Plain Layout
11194 \begin_inset Flex Code
11197 \begin_layout Plain Layout
11206 \begin_inset Flex Code
11209 \begin_layout Plain Layout
11215 ] Indicates what kind of markup is used to define the title of a document.
11217 \begin_inset Flex Code
11220 \begin_layout Plain Layout
11226 means that the macro with name
11227 \begin_inset Flex Code
11230 \begin_layout Plain Layout
11236 will be inserted after the last layout which has
11237 \begin_inset Quotes eld
11241 \begin_inset Flex Code
11244 \begin_layout Plain Layout
11246 \begin_inset space ~
11255 \begin_inset Quotes erd
11260 \begin_inset Flex Code
11263 \begin_layout Plain Layout
11269 corresponds to the case where all layouts which have
11270 \begin_inset Quotes eld
11274 \begin_inset Flex Code
11277 \begin_layout Plain Layout
11279 \begin_inset space ~
11288 \begin_inset Quotes erd
11291 should be enclosed into the
11292 \begin_inset Flex Code
11295 \begin_layout Plain Layout
11304 \begin_layout Description
11305 \begin_inset Flex Code
11308 \begin_layout Plain Layout
11315 \begin_inset Flex Code
11318 \begin_layout Plain Layout
11324 ] Sets which divisions are included in the table of contents.
11326 \begin_inset Flex Code
11329 \begin_layout Plain Layout
11335 counter in \SpecialChar LaTeX
11339 \begin_layout Subsection
11340 \begin_inset Flex Code
11343 \begin_layout Plain Layout
11350 \begin_inset CommandInset label
11352 name "subsec:ClassOptions"
11359 \begin_layout Standard
11361 \begin_inset Flex Code
11364 \begin_layout Plain Layout
11370 section can contain the following entries:
11373 \begin_layout Description
11374 \begin_inset Flex Code
11377 \begin_layout Plain Layout
11384 \begin_inset Flex Code
11387 \begin_layout Plain Layout
11393 ] The list of available font sizes for the document's main font, separated
11395 \begin_inset Quotes eld
11399 \begin_inset Flex Code
11402 \begin_layout Plain Layout
11409 \begin_inset Quotes erd
11415 \begin_layout Description
11416 \begin_inset Flex Code
11419 \begin_layout Plain Layout
11425 Used to set the DTD line with XML-based output classes.
11427 \begin_inset space \thinspace{}
11431 \begin_inset Quotes eld
11434 -//OASIS//DTD DocBook V4.2//EN
11435 \begin_inset Quotes erd
11441 \begin_layout Description
11442 \begin_inset Flex Code
11445 \begin_layout Plain Layout
11452 \begin_inset Flex Code
11455 \begin_layout Plain Layout
11456 string="empty|plain|headings|fancy"
11461 ] The list of available page sty\SpecialChar softhyphen
11463 \begin_inset Quotes eld
11467 \begin_inset Flex Code
11470 \begin_layout Plain Layout
11477 \begin_inset Quotes erd
11483 \begin_layout Description
11484 \begin_inset Flex Code
11487 \begin_layout Plain Layout
11494 \begin_inset Flex Code
11497 \begin_layout Plain Layout
11503 ] Some document class options, separated by a comma, that will be added
11504 to the optional part of the
11505 \begin_inset Flex Code
11508 \begin_layout Plain Layout
11519 \begin_layout Standard
11521 \begin_inset Flex Code
11524 \begin_layout Plain Layout
11530 section must end with
11531 \begin_inset Quotes eld
11535 \begin_inset Flex Code
11538 \begin_layout Plain Layout
11545 \begin_inset Quotes erd
11551 \begin_layout Subsection
11553 \begin_inset CommandInset label
11555 name "subsec:Paragraph-Styles"
11562 \begin_layout Standard
11563 A paragraph style description looks like this:
11567 \begin_layout Plain Layout
11568 Note that this will either define a new style or modify an existing one.
11576 \begin_layout LyX-Code
11583 \begin_layout LyX-Code
11587 \begin_layout LyX-Code
11591 \begin_layout Standard
11592 where the following commands are allowed:
11595 \begin_layout Description
11596 \begin_inset Flex Code
11599 \begin_layout Plain Layout
11606 \begin_inset Flex Code
11609 \begin_layout Plain Layout
11615 =""] This paragraph will appear in the table of contents of the given type.
11616 An empty string disables.
11617 See also the OutlinerName and the IsTocCaption commands.
11621 \begin_layout Description
11622 \begin_inset Flex Code
11625 \begin_layout Plain Layout
11632 \begin_inset Flex Code
11635 \begin_layout Plain Layout
11640 , left, right, center
11645 ] Paragraph alignment.
11648 \begin_layout Description
11649 \begin_inset Flex Code
11652 \begin_layout Plain Layout
11659 \begin_inset Flex Code
11662 \begin_layout Plain Layout
11667 , left, right, center
11672 ] A comma separated list of permitted alignments.
11673 (Some \SpecialChar LaTeX
11674 styles prohibit certain alignments, since those wouldn't make sense.
11675 For example a right-aligned or centered enumeration isn't possible.)
11678 \begin_layout Description
11679 \begin_inset Flex Code
11682 \begin_layout Plain Layout
11689 \begin_inset Flex Code
11692 \begin_layout Plain Layout
11698 ] Defines argument number <int> of a command\SpecialChar breakableslash
11699 environment associated with
11701 This is useful for things like section headings, and only makes sense with
11704 Every (optional or required) argument of a command or environment – except
11705 for the required argument that is associated with the content of the paragraph
11706 itself – has a separate definition, where the number specifies the order
11708 The definition must end with
11709 \begin_inset Flex Code
11712 \begin_layout Plain Layout
11719 So a command with two optional arguments has:
11723 \begin_layout Quote
11729 \begin_layout Quote
11735 \begin_layout Quote
11741 \begin_layout Quote
11747 \begin_layout Quote
11753 \begin_layout Quote
11759 \begin_layout Standard
11761 \begin_inset Flex Code
11764 \begin_layout Plain Layout
11770 definition, the following specifications are possible:
11773 \begin_layout Itemize
11774 \begin_inset Flex Code
11777 \begin_layout Plain Layout
11784 \begin_inset Flex Code
11787 \begin_layout Plain Layout
11793 The string that will appear both in the menu (to insert this argument)
11794 and on the argument inset button (unless you also specify a separate
11795 \begin_inset Flex Code
11798 \begin_layout Plain Layout
11805 For the menu, you can define an accelerator by appending the respective
11806 character to the string, divided by
11807 \begin_inset Quotes eld
11811 \begin_inset Quotes erd
11815 \begin_inset space \thinspace{}
11819 \begin_inset space \space{}
11823 \begin_inset Quotes eld
11827 \begin_inset Flex Code
11830 \begin_layout Plain Layout
11837 \begin_inset Quotes erd
11843 \begin_layout Itemize
11844 \begin_inset Flex Code
11847 \begin_layout Plain Layout
11854 \begin_inset Flex Code
11857 \begin_layout Plain Layout
11863 A separate string for the menu.
11864 You can define an accelerator by appending the respective character to
11865 the string, divided by
11866 \begin_inset Quotes eld
11870 \begin_inset Quotes erd
11874 \begin_inset space \thinspace{}
11878 \begin_inset space \space{}
11882 \begin_inset Quotes eld
11886 \begin_inset Flex Code
11889 \begin_layout Plain Layout
11896 \begin_inset Quotes erd
11900 This specification is optional.
11901 If it is not given the
11902 \begin_inset Flex Code
11905 \begin_layout Plain Layout
11911 will be used instead for the menu.
11914 \begin_layout Itemize
11915 \begin_inset Flex Code
11918 \begin_layout Plain Layout
11925 \begin_inset Flex Code
11928 \begin_layout Plain Layout
11934 A longer explanatory text that appears in the tooltip when hovering over
11935 the argument inset.
11938 \begin_layout Itemize
11939 \begin_inset Flex Code
11942 \begin_layout Plain Layout
11949 \begin_inset Flex Code
11952 \begin_layout Plain Layout
11961 \begin_inset space \thinspace{}
11965 \begin_inset Flex Code
11968 \begin_layout Plain Layout
11974 ] Declare if this is a mandatory (1) or an optional (0) argument.
11975 Mandatory arguments will be output empty if not given, while optional arguments
11976 will not be output at all.
11977 By default, mandatory arguments are delimited by
11978 \begin_inset Flex Code
11981 \begin_layout Plain Layout
11987 , while optional arguments are delimited by
11988 \begin_inset Flex Code
11991 \begin_layout Plain Layout
12000 \begin_layout Itemize
12001 \begin_inset Flex Code
12004 \begin_layout Plain Layout
12011 \begin_inset Flex Code
12014 \begin_layout Plain Layout
12020 defines another argument (by its number) which this argument requires to
12021 be output if it is itself output.
12023 \begin_inset space \thinspace{}
12026 g., in \SpecialChar LaTeX
12027 commands, optional arguments often require previous optional arguments
12028 to be output (at least empty), as in
12029 \begin_inset Flex Code
12032 \begin_layout Plain Layout
12035 command[][argument]{text}
12041 This can be achieved by the statement
12042 \begin_inset Flex Code
12045 \begin_layout Plain Layout
12052 \begin_inset Flex Code
12055 \begin_layout Plain Layout
12064 \begin_layout Itemize
12065 \begin_inset Flex Code
12068 \begin_layout Plain Layout
12075 \begin_inset Flex Code
12078 \begin_layout Plain Layout
12084 defines a custom left delimiter (instead of
12085 \begin_inset Flex Code
12088 \begin_layout Plain Layout
12095 \begin_inset Flex Code
12098 \begin_layout Plain Layout
12105 A line break in the output can be indicated by
12106 \begin_inset Flex Code
12109 \begin_layout Plain Layout
12118 \begin_layout Itemize
12119 \begin_inset Flex Code
12122 \begin_layout Plain Layout
12129 \begin_inset Flex Code
12132 \begin_layout Plain Layout
12138 defines a custom right delimiter (instead of
12139 \begin_inset Flex Code
12142 \begin_layout Plain Layout
12149 \begin_inset Flex Code
12152 \begin_layout Plain Layout
12159 A line break in the output can be indicated by
12160 \begin_inset Flex Code
12163 \begin_layout Plain Layout
12172 \begin_layout Itemize
12173 \begin_inset Flex Code
12176 \begin_layout Plain Layout
12183 \begin_inset Flex Code
12186 \begin_layout Plain Layout
12192 defines an argument that is inserted if and only if no user-specified arguments
12194 \begin_inset space \thinspace{}
12198 \begin_inset space \space{}
12201 if no argument inset has been inserted (note that also an empty argument
12202 inset omits the DefaultArg).
12203 Multiple arguments need to be separated by comma.
12206 \begin_layout Itemize
12207 \begin_inset Flex Code
12210 \begin_layout Plain Layout
12217 \begin_inset Flex Code
12220 \begin_layout Plain Layout
12226 defines an argument that is inserted in any case (alone or in addition
12227 to user-specified arguments).
12228 Multiple arguments need to be separated by comma.
12231 \begin_layout Itemize
12232 \begin_inset Flex Code
12235 \begin_layout Plain Layout
12241 The font used for the argument content, see
12242 \begin_inset CommandInset ref
12244 reference "subsec:Font-description"
12251 \begin_layout Itemize
12252 \begin_inset Flex Code
12255 \begin_layout Plain Layout
12261 The font used for the label; see
12262 \begin_inset CommandInset ref
12264 reference "subsec:Font-description"
12271 \begin_layout Itemize
12272 \begin_inset Flex Code
12275 \begin_layout Plain Layout
12282 \begin_inset Flex Code
12285 \begin_layout Plain Layout
12290 , Minimalistic, Conglomerate
12295 ] describes the rendering style used for the inset's frame and buttons.
12298 \begin_layout Itemize
12299 \begin_inset Flex Code
12302 \begin_layout Plain Layout
12309 \begin_inset Flex Code
12312 \begin_layout Plain Layout
12319 \begin_inset Flex Code
12322 \begin_layout Plain Layout
12328 , this argument is automatically inserted when the respective style is selected.
12329 Currently, only one argument per style\SpecialChar breakableslash
12330 layout can be automatically inserted.
12333 \begin_layout Itemize
12334 \begin_inset Flex Code
12337 \begin_layout Plain Layout
12344 \begin_inset Flex Code
12347 \begin_layout Plain Layout
12354 \begin_inset Flex Code
12357 \begin_layout Plain Layout
12363 , this argument will be inserted with a copy of the co-text (either selected
12364 text or the whole paragraph) as content.
12367 \begin_layout Itemize
12368 \begin_inset Flex Code
12371 \begin_layout Plain Layout
12378 \begin_inset Flex Code
12381 \begin_layout Plain Layout
12391 ] Whether the contents of this argument should be output in raw form, meaning
12392 without special translations that \SpecialChar LaTeX
12395 \begin_inset Flex Code
12398 \begin_layout Plain Layout
12404 status is inherited by the inset or paragraph layout the argument belongs
12405 to, true and false change the status for the given argument only.
12408 \begin_layout Itemize
12409 \begin_inset Flex Code
12412 \begin_layout Plain Layout
12419 \begin_inset Flex Code
12422 \begin_layout Plain Layout
12423 string of characters
12432 Defines individual characters
12433 \begin_inset Newline linebreak
12436 that should be output in raw form, meaning without special translations
12437 that \SpecialChar LaTeX
12439 Note that, contrary to PassThru, this needs to be explicitly defined for
12441 That is, arguments do not inherit PassThruChars from their parent inset
12445 \begin_layout Itemize
12446 \begin_inset Flex Code
12449 \begin_layout Plain Layout
12456 \begin_inset Flex Code
12459 \begin_layout Plain Layout
12468 \begin_inset space \thinspace{}
12472 \begin_inset Flex Code
12475 \begin_layout Plain Layout
12481 ] If this is set to 1, the argument will output its content in the corresponding
12482 item in the table of contents.
12486 \begin_layout Standard
12487 By default, the text entered in the \SpecialChar LyX
12488 workarea in the respective layout is
12489 the last (mandatory) argument of a command if the
12490 \begin_inset Flex Code
12493 \begin_layout Plain Layout
12500 \begin_inset Flex Code
12503 \begin_layout Plain Layout
12510 However, arguments with the prefix
12511 \begin_inset Flex Code
12514 \begin_layout Plain Layout
12520 are output after this workarea argument.
12521 Note that post-argument numbering restarts at 1, so the first argument
12522 following the workarea argument is
12523 \begin_inset Flex Code
12526 \begin_layout Plain Layout
12533 Post-arguments are ignored in any other
12534 \begin_inset Flex Code
12537 \begin_layout Plain Layout
12544 \begin_inset Flex Code
12547 \begin_layout Plain Layout
12556 \begin_layout Standard
12558 \begin_inset Flex Code
12561 \begin_layout Plain Layout
12570 \begin_inset Flex Code
12573 \begin_layout Plain Layout
12582 \begin_inset Flex Code
12585 \begin_layout Plain Layout
12591 followed by the number (e.
12592 \begin_inset space \thinspace{}
12596 \begin_inset space \space{}
12600 \begin_inset Flex Code
12603 \begin_layout Plain Layout
12610 \change_inserted -712698321 1534487781
12614 \begin_layout Standard
12616 \change_inserted -712698321 1534488561
12617 Finally, there is a special argument type with the prefix
12618 \begin_inset Flex Code
12621 \begin_layout Plain Layout
12623 \change_inserted -712698321 1534487844
12632 It is not really an argument, but uses the argument interface (thus, the
12633 prefix is also followed by a number, e.
12634 \begin_inset space \thinspace{}
12639 \begin_inset Flex Code
12642 \begin_layout Plain Layout
12644 \change_inserted -712698321 1534488412
12645 Argument listpreamble:1
12651 As the name implies, it is targeted at lists such as
12668 Its content will be output at the list start, before the first
12669 \begin_inset Flex Code
12672 \begin_layout Plain Layout
12674 \change_inserted -712698321 1534488058
12684 , on an own line (a place that is otherwise not accessible in \SpecialChar LyX
12686 This way, users can insert redefinitions (of lengths etc.) to individual
12688 By default, these arguments do not have a delimiter.
12694 \begin_layout Description
12695 \begin_inset Flex Code
12698 \begin_layout Plain Layout
12704 Includes a comma-separated list of layouts that should be nested in and
12705 after the current layout.
12706 Only makes sense for nestable layouts (such as environments).
12708 \begin_inset Quotes eld
12712 \begin_inset Flex Code
12715 \begin_layout Plain Layout
12722 \begin_inset Quotes erd
12727 \begin_inset Flex Code
12730 \begin_layout Plain Layout
12739 \begin_layout Description
12740 \begin_inset Flex Code
12743 \begin_layout Plain Layout
12749 Note that this will completely override any prior
12750 \begin_inset Flex Code
12753 \begin_layout Plain Layout
12759 declaration for this style.
12761 \begin_inset Quotes eld
12765 \begin_inset Flex Code
12768 \begin_layout Plain Layout
12775 \begin_inset Quotes erd
12780 \begin_inset CommandInset ref
12782 reference "subsec:I18n"
12786 for details on its use.
12789 \begin_layout Description
12790 \begin_inset Flex Code
12793 \begin_layout Plain Layout
12800 \begin_inset Flex Code
12803 \begin_layout Plain Layout
12813 \begin_layout Plain Layout
12814 Note that a `float' here is a real number, such as: 1.5.
12819 The vertical space with which the last of a chain of paragraphs with this
12820 style is separated from the following paragraph.
12821 If the next paragraph has another style, the separations are not simply
12822 added, but the maximum is taken.
12825 \begin_layout Description
12826 \begin_inset Flex Code
12829 \begin_layout Plain Layout
12836 \begin_inset Flex Code
12839 \begin_layout Plain Layout
12845 ] The category for this style.
12846 This is used to group related styles in the style combobox on the toolbar.
12847 Any string can be used, but you may want to use existing categories with
12852 \begin_layout Description
12853 \begin_inset Flex Code
12856 \begin_layout Plain Layout
12862 Depth of XML command.
12863 Used only with XML-type formats.
12866 \begin_layout Description
12867 \begin_inset Flex Code
12870 \begin_layout Plain Layout
12877 \begin_inset Flex Code
12880 \begin_layout Plain Layout
12886 ] Copies all the features of an existing style into the current one.
12890 \begin_layout Description
12891 \begin_inset Flex Code
12894 \begin_layout Plain Layout
12901 \begin_inset Flex Code
12904 \begin_layout Plain Layout
12910 ] The name of a style whose preamble should be output
12915 This allows to ensure some ordering of the preamble snippets when macros
12916 definitions depend on one another.
12920 \begin_layout Plain Layout
12921 Note that, besides that functionality, there is no way to ensure any ordering
12923 The ordering that you see in a given version of \SpecialChar LyX
12924 may change without warning
12933 \begin_layout Description
12934 \begin_inset Flex Code
12937 \begin_layout Plain Layout
12944 \begin_inset Flex Code
12947 \begin_layout Plain Layout
12952 , Box, Filled_Box, Static
12957 ] The type of label that stands at the end of the paragraph (or sequence
12959 \begin_inset Flex Code
12962 \begin_layout Plain Layout
12969 \begin_inset Newline newline
12973 \begin_inset Flex Code
12976 \begin_layout Plain Layout
12983 \begin_inset Flex Code
12986 \begin_layout Plain Layout
12993 \begin_inset Flex Code
12996 \begin_layout Plain Layout
13004 \begin_inset Flex Code
13007 \begin_layout Plain Layout
13014 \begin_inset Quotes eld
13018 \begin_inset Quotes erd
13022 \begin_inset Flex Code
13025 \begin_layout Plain Layout
13032 \begin_inset space \space{}
13036 \begin_inset Flex Code
13039 \begin_layout Plain Layout
13045 ) is a white (resp.
13046 \begin_inset space ~
13049 black) square suitable for end of proof markers,
13050 \begin_inset Flex Code
13053 \begin_layout Plain Layout
13059 is an explicit text string.
13062 \begin_layout Description
13063 \begin_inset Flex Code
13066 \begin_layout Plain Layout
13073 \begin_inset Flex Code
13076 \begin_layout Plain Layout
13082 ] The string used for a label with a
13083 \begin_inset Flex Code
13086 \begin_layout Plain Layout
13093 \begin_inset Newline newline
13097 \begin_inset Flex Code
13100 \begin_layout Plain Layout
13110 \begin_layout Description
13111 \begin_inset Flex Code
13114 \begin_layout Plain Layout
13120 The font used for both the text body
13126 \begin_inset CommandInset ref
13128 reference "subsec:Font-description"
13133 Note that defining this font automatically defines the
13134 \begin_inset Flex Code
13137 \begin_layout Plain Layout
13144 So you should define this one first if you also want to define
13145 \begin_inset Flex Code
13148 \begin_layout Plain Layout
13157 \begin_layout Description
13158 \begin_inset Flex Code
13161 \begin_layout Plain Layout
13168 \begin_inset Flex Code
13171 \begin_layout Plain Layout
13177 ] Used for backporting new styles to stable \SpecialChar LyX
13179 The first stable version that supports this tag is \SpecialChar LyX
13181 The argument is a number which may either be 0, -1 or any value greater
13184 \begin_inset Flex Code
13187 \begin_layout Plain Layout
13193 flag of a style is greater than zero, it will always be written to the
13195 If a .lyx file is read, the style definitions from the document header are
13196 added to the document class.
13197 Therefore even older \SpecialChar LyX
13198 versions can handle the style.
13200 \begin_inset Flex Code
13203 \begin_layout Plain Layout
13209 is a version number: if the style is read, and the version number is less
13210 than the version number of the already existing style in the document class,
13211 the new style is ignored.
13212 If the version number is greater, the new style replaces the existing style.
13213 A value of -1 means an infinite version number, i.
13214 \begin_inset space \thinspace{}
13218 \begin_inset space \space{}
13221 the style is always used.
13224 \begin_layout Description
13225 \begin_inset Flex Code
13228 \begin_layout Plain Layout
13235 \begin_inset Flex Code
13238 \begin_layout Plain Layout
13247 \begin_inset space \thinspace{}
13251 \begin_inset Flex Code
13254 \begin_layout Plain Layout
13260 ] Usually \SpecialChar LyX
13261 does not allow you to insert more than one space between words,
13262 since a space is considered as the separation between two words, not a
13263 character or symbol of its own.
13264 This is a very fine thing but sometimes annoying, for example, when typing
13265 program code or plain \SpecialChar LaTeX
13268 \begin_inset Flex Code
13271 \begin_layout Plain Layout
13279 \change_deleted -495245474 1550490105
13283 will create protected blanks for the additional blanks when in
13284 \change_inserted -495245474 1550490096
13286 \begin_inset Flex Code
13289 \begin_layout Plain Layout
13291 \change_inserted -495245474 1550490089
13298 \change_deleted -495245474 1550490116
13299 another mode than \SpecialChar LaTeX
13302 \change_inserted -495245474 1550247760
13304 \begin_inset Flex Code
13307 \begin_layout Plain Layout
13309 \change_inserted -495245474 1550247736
13316 \begin_inset Flex Code
13319 \begin_layout Plain Layout
13321 \change_inserted -495245474 1550247755
13332 \begin_layout Description
13333 \begin_inset Flex Code
13336 \begin_layout Plain Layout
13342 These tags are used with XHTML output.
13344 \begin_inset CommandInset ref
13346 reference "subsec:Paragraph-Style-XHTML"
13353 \begin_layout Description
13354 \begin_inset Flex Code
13357 \begin_layout Plain Layout
13363 [FIXME] (Used only with XML-type formats.)
13366 \begin_layout Description
13367 \begin_inset Flex Code
13370 \begin_layout Plain Layout
13377 \begin_inset Flex Code
13380 \begin_layout Plain Layout
13389 \begin_inset space \thinspace{}
13393 \begin_inset Flex Code
13396 \begin_layout Plain Layout
13403 \begin_inset Flex Code
13406 \begin_layout Plain Layout
13412 , marks the style as to be included in the document preamble and not in
13414 This is useful for document classes that want such information as the title
13415 and author to appear in the preamble.
13416 Note that this works only for styles for which the
13417 \begin_inset Flex Code
13420 \begin_layout Plain Layout
13427 \begin_inset Flex Code
13430 \begin_layout Plain Layout
13437 \begin_inset Flex Code
13440 \begin_layout Plain Layout
13449 \begin_layout Description
13450 \begin_inset Flex Code
13453 \begin_layout Plain Layout
13460 \begin_inset Flex Code
13463 \begin_layout Plain Layout
13472 \begin_inset space \thinspace{}
13476 \begin_inset Flex Code
13479 \begin_layout Plain Layout
13486 \begin_inset Flex Code
13489 \begin_layout Plain Layout
13495 , marks the style as being part of a title block (see also the
13496 \begin_inset Flex Code
13499 \begin_layout Plain Layout
13506 \begin_inset Flex Code
13509 \begin_layout Plain Layout
13518 \begin_layout Description
13519 \begin_inset Flex Code
13522 \begin_layout Plain Layout
13528 Includes a comma-separated list of layouts after which this one should
13530 Only makes sense with regard to nestable layouts (such as environments).
13532 \begin_inset Quotes eld
13536 \begin_inset Flex Code
13539 \begin_layout Plain Layout
13546 \begin_inset Quotes erd
13551 \begin_inset Flex Code
13554 \begin_layout Plain Layout
13563 \begin_layout Description
13564 \begin_inset Flex Code
13567 \begin_layout Plain Layout
13574 \begin_inset Flex Code
13577 \begin_layout Plain Layout
13586 \begin_inset space \thinspace{}
13590 \begin_inset Flex Code
13593 \begin_layout Plain Layout
13599 ] If this is set to 1 and AddToToc is enabled, the paragraph adds a summary
13600 of its contents in its item in the table of contents.
13601 Otherwise, only the label, if it exists, appears.
13604 \begin_layout Description
13605 \begin_inset Flex Code
13608 \begin_layout Plain Layout
13615 \begin_inset Flex Code
13618 \begin_layout Plain Layout
13624 ] The \SpecialChar LaTeX
13625 command sequence declaring an item in a list.
13626 The command is to be defined without the preceding backslash (the default
13628 \begin_inset Quotes eld
13632 \begin_inset Quotes erd
13636 \begin_inset Flex Code
13639 \begin_layout Plain Layout
13647 in the \SpecialChar LaTeX
13651 \begin_layout Description
13652 \begin_inset Flex Code
13655 \begin_layout Plain Layout
13662 \begin_inset Flex Code
13665 \begin_layout Plain Layout
13671 ] This provides extra space between paragraphs that have the same style.
13672 If you put other styles into an environment, each is separated with the
13674 \begin_inset Flex Code
13677 \begin_layout Plain Layout
13684 But the whole items of the environment are additionally separated with
13686 \begin_inset Flex Code
13689 \begin_layout Plain Layout
13696 Note that this is a
13701 \begin_layout Description
13702 \begin_inset Flex Code
13705 \begin_layout Plain Layout
13711 [FIXME] (Used only with XML-type formats.)
13714 \begin_layout Description
13715 \begin_inset Flex Code
13718 \begin_layout Plain Layout
13725 \begin_inset Flex Code
13728 \begin_layout Plain Layout
13737 \begin_inset space \thinspace{}
13741 \begin_inset Flex Code
13744 \begin_layout Plain Layout
13750 ] Usually \SpecialChar LyX
13751 does not allow you to leave a paragraph empty, since it would
13752 lead to empty \SpecialChar LaTeX
13754 There are some cases where this could be desirable however: in a letter
13755 template, the required fields can be provided as empty fields, so that
13756 people do not forget them; in some special classes, a style can be used
13757 as some kind of break, which does not contain actual text.
13760 \begin_layout Description
13761 \begin_inset Flex Code
13764 \begin_layout Plain Layout
13771 \begin_inset Flex Code
13774 \begin_layout Plain Layout
13780 ] The vertical space between the label and the text body.
13781 Only used for labels that are above the text body (
13782 \begin_inset Flex Code
13785 \begin_layout Plain Layout
13792 \begin_inset Newline newline
13796 \begin_inset Flex Code
13799 \begin_layout Plain Layout
13800 Centered_Top_Environment
13808 \begin_layout Description
13809 \begin_inset Flex Code
13812 \begin_layout Plain Layout
13819 \begin_inset Flex Code
13822 \begin_layout Plain Layout
13828 ] The name of the counter for automatic numbering.
13829 In order to have the counter appear with your label, you will need to reference
13831 \begin_inset Flex Code
13834 \begin_layout Plain Layout
13843 This will work with
13844 \begin_inset Flex Code
13847 \begin_layout Plain Layout
13854 \begin_inset Flex Code
13857 \begin_layout Plain Layout
13864 \begin_inset Flex Code
13867 \begin_layout Plain Layout
13874 \begin_inset Flex Code
13877 \begin_layout Plain Layout
13884 \begin_inset Newline newline
13892 \begin_inset Flex Code
13895 \begin_layout Plain Layout
13902 \begin_inset Flex Code
13905 \begin_layout Plain Layout
13911 , though this case is a bit complicated.
13912 Suppose you declare
13913 \begin_inset Quotes eld
13917 \begin_inset Flex Code
13920 \begin_layout Plain Layout
13921 LabelCounter myenum
13927 \begin_inset Quotes erd
13931 Then the actual counters used are
13932 \begin_inset Flex Code
13935 \begin_layout Plain Layout
13942 \begin_inset Flex Code
13945 \begin_layout Plain Layout
13952 \begin_inset Flex Code
13955 \begin_layout Plain Layout
13962 \begin_inset Flex Code
13965 \begin_layout Plain Layout
13971 , much as in \SpecialChar LaTeX
13973 These counters must all be declared separately.
13974 \begin_inset Newline newline
13978 \begin_inset CommandInset ref
13980 reference "subsec:Counters"
13984 for details on counters.
13987 \begin_layout Description
13988 \begin_inset Flex Code
13991 \begin_layout Plain Layout
13997 The font used for the label.
13999 \begin_inset CommandInset ref
14001 reference "subsec:Font-description"
14008 \begin_layout Description
14009 \begin_inset Flex Code
14012 \begin_layout Plain Layout
14019 \begin_inset Flex Code
14022 \begin_layout Plain Layout
14028 ] Text that indicates how far a label should be indented.
14031 \begin_layout Description
14032 \begin_inset Flex Code
14035 \begin_layout Plain Layout
14042 \begin_inset Flex Code
14045 \begin_layout Plain Layout
14051 ] Text that indicates the amount of horizontal space between the label and
14053 Only used for labels that are not above the text body.
14056 \begin_layout Description
14057 \begin_inset Flex Code
14060 \begin_layout Plain Layout
14067 \begin_inset Flex Code
14070 \begin_layout Plain Layout
14076 ] The string used for the label.
14078 \begin_inset Flex Code
14081 \begin_layout Plain Layout
14087 is set, this string can be contain the special formatting commands described
14089 \begin_inset CommandInset ref
14091 reference "subsec:Counters"
14098 \begin_layout Description
14099 \begin_inset Flex Code
14102 \begin_layout Plain Layout
14103 LabelStringAppendix
14109 \begin_inset Flex Code
14112 \begin_layout Plain Layout
14118 ] This is used inside the appendix instead of
14119 \begin_inset Newline newline
14123 \begin_inset Flex Code
14126 \begin_layout Plain Layout
14134 \begin_inset Flex Code
14137 \begin_layout Plain Layout
14144 \begin_inset Newline newline
14148 \begin_inset Flex Code
14151 \begin_layout Plain Layout
14152 LabelStringAppendix
14160 \begin_layout Description
14161 \begin_inset Flex Code
14164 \begin_layout Plain Layout
14170 [FIXME] (Used only with XML-type formats.)
14173 \begin_layout Description
14174 \begin_inset Flex Code
14177 \begin_layout Plain Layout
14184 \begin_inset Flex Code
14187 \begin_layout Plain Layout
14192 , Manual, Static, Above,
14193 \begin_inset Newline newline
14196 Centered, Sensitive, Enumerate,
14197 \begin_inset Newline newline
14200 Itemize, Bibliography
14209 \begin_layout Description
14210 \begin_inset Flex Code
14213 \begin_layout Plain Layout
14219 means the label is the very first word (up to the first real blank).
14220 Use protected spaces if you want more than one word as the label.
14224 \begin_layout Description
14225 \begin_inset Flex Code
14228 \begin_layout Plain Layout
14234 means the label is simply what is declared as
14235 \begin_inset Flex Code
14238 \begin_layout Plain Layout
14245 This will be displayed
14246 \begin_inset Quotes eld
14250 \begin_inset Quotes erd
14253 , at the beginning of the paragraph.
14255 \begin_inset Flex Code
14258 \begin_layout Plain Layout
14265 \begin_inset Flex Code
14268 \begin_layout Plain Layout
14274 , then it will be displayed only in the first paragraph of any sequence
14275 of paragraphs with the same
14276 \begin_inset Flex Code
14279 \begin_layout Plain Layout
14288 \begin_layout Description
14289 \begin_inset Flex Code
14292 \begin_layout Plain Layout
14299 \begin_inset space ~
14303 \begin_inset space ~
14307 \begin_inset Flex Code
14310 \begin_layout Plain Layout
14316 are special cases of
14317 \begin_inset Flex Code
14320 \begin_layout Plain Layout
14327 The label will be printed above the paragraph either at the beginning of
14328 the line or centered.
14331 \begin_layout Description
14332 \begin_inset Flex Code
14335 \begin_layout Plain Layout
14341 is a special case for the caption-labels
14342 \begin_inset Quotes eld
14346 \begin_inset Quotes erd
14350 \begin_inset Quotes eld
14354 \begin_inset Quotes erd
14358 \begin_inset Newline newline
14362 \begin_inset Flex Code
14365 \begin_layout Plain Layout
14371 means the (hardcoded) label string depends on the kind of float: It is
14372 hardcoded to be `FloatType N', where N is the value of the counter associated
14374 For the case that a caption is inserted outside of a float the
14375 \begin_inset Flex Code
14378 \begin_layout Plain Layout
14385 \begin_inset Quotes eld
14389 \begin_inset Quotes erd
14395 \begin_layout Description
14396 \begin_inset Flex Code
14399 \begin_layout Plain Layout
14405 produces the usual sort of enumeration labels.
14406 The number type needs to be set in the
14411 \begin_inset CommandInset ref
14413 reference "subsec:Counters"
14420 \begin_layout Description
14421 \begin_inset Flex Code
14424 \begin_layout Plain Layout
14430 produces various bullets at the different levels.
14431 The bullet types displayed can be set via
14432 \begin_inset Flex Noun
14435 \begin_layout Plain Layout
14436 Document\SpecialChar menuseparator
14437 Settings\SpecialChar menuseparator
14446 \begin_layout Description
14447 \begin_inset Flex Code
14450 \begin_layout Plain Layout
14456 should be used only with
14457 \begin_inset Flex Code
14460 \begin_layout Plain Layout
14461 LatexType BibEnvironment
14470 \begin_layout Description
14471 \begin_inset Flex Code
14474 \begin_layout Plain Layout
14480 Note that this will completely override any prior
14481 \begin_inset Flex Code
14484 \begin_layout Plain Layout
14490 declaration for this style.
14492 \begin_inset Quotes eld
14496 \begin_inset Flex Code
14499 \begin_layout Plain Layout
14506 \begin_inset Quotes erd
14511 \begin_inset CommandInset ref
14513 reference "subsec:I18n"
14517 for details on its use.
14520 \begin_layout Description
14521 \begin_inset Flex Code
14524 \begin_layout Plain Layout
14531 \begin_inset Flex Code
14534 \begin_layout Plain Layout
14540 ] The name of the corresponding \SpecialChar LaTeX
14542 Either the environment or command name.
14545 \begin_layout Description
14546 \begin_inset Flex Code
14549 \begin_layout Plain Layout
14556 \begin_inset Flex Code
14559 \begin_layout Plain Layout
14565 ] An optional parameter for the corresponding
14566 \begin_inset Flex Code
14569 \begin_layout Plain Layout
14576 This parameter cannot be changed from within \SpecialChar LyX
14578 \begin_inset Flex Code
14581 \begin_layout Plain Layout
14587 for customizable parameters).
14588 This will be output as is after all \SpecialChar LaTeX
14590 \begin_inset Flex Code
14593 \begin_layout Plain Layout
14602 \begin_layout Description
14603 \begin_inset Flex Code
14606 \begin_layout Plain Layout
14613 \begin_inset Flex Code
14616 \begin_layout Plain Layout
14621 , Command, Environment, Item_Environment,
14622 \begin_inset Newline newline
14625 List_Environment, Bib_Environment
14630 ] How the style should be translated into \SpecialChar LaTeX
14635 \begin_layout Plain Layout
14636 \begin_inset Flex Code
14639 \begin_layout Plain Layout
14645 is perhaps a bit misleading, since these rules apply to SGML classes, too.
14646 Visit the SGML class files for specific examples.
14655 \begin_layout Description
14656 \begin_inset Flex Code
14659 \begin_layout Plain Layout
14665 means nothing special.
14668 \begin_layout Description
14669 \begin_inset Flex Code
14672 \begin_layout Plain Layout
14679 \begin_inset Flex Code
14682 \begin_layout Plain Layout
14689 {\SpecialChar ldots
14698 \begin_layout Description
14699 \begin_inset Flex Code
14702 \begin_layout Plain Layout
14709 \begin_inset Flex Code
14712 \begin_layout Plain Layout
14719 }\SpecialChar ldots
14735 \begin_layout Description
14736 \begin_inset Flex Code
14739 \begin_layout Plain Layout
14746 \begin_inset Flex Code
14749 \begin_layout Plain Layout
14756 \begin_inset Flex Code
14759 \begin_layout Plain Layout
14767 is generated for each paragraph of this environment.
14771 \begin_layout Description
14772 \begin_inset Flex Code
14775 \begin_layout Plain Layout
14782 \begin_inset Flex Code
14785 \begin_layout Plain Layout
14792 \begin_inset Newline newline
14796 \begin_inset Flex Code
14799 \begin_layout Plain Layout
14805 is passed as an argument to the environment.
14806 \begin_inset Newline newline
14810 \begin_inset Flex Code
14813 \begin_layout Plain Layout
14819 can be defined in the
14820 \begin_inset Flex Noun
14823 \begin_layout Plain Layout
14824 Edit\SpecialChar menuseparator
14826 \begin_inset space ~
14837 \begin_layout Description
14838 \begin_inset Flex Code
14841 \begin_layout Plain Layout
14848 \begin_inset Flex Code
14851 \begin_layout Plain Layout
14857 but adds the necessary mandatory argument (the longest label) to the begin
14858 statement of the bibliography environment:
14859 \begin_inset Newline newline
14863 \begin_inset Flex Code
14866 \begin_layout Plain Layout
14869 begin{thebibliography}{99}
14875 It is therefore only useful for bibliography environments.
14876 The default longest label
14877 \begin_inset Quotes eld
14881 \begin_inset Quotes erd
14884 can be changed by the user in the paragraph settings of a bibliography
14888 \begin_layout Standard
14889 Putting the last few things together, the \SpecialChar LaTeX
14890 output will be either:
14893 \begin_layout LyX-Code
14896 LatexName[LatexParam]{\SpecialChar ldots
14900 \begin_layout Standard
14904 \begin_layout LyX-Code
14907 begin{LatexName}[LatexParam] \SpecialChar ldots
14913 \begin_layout Standard
14914 depending upon the \SpecialChar LaTeX
14919 \begin_layout Description
14920 \begin_inset Flex Code
14923 \begin_layout Plain Layout
14930 \begin_inset Flex Code
14933 \begin_layout Plain Layout
14939 ] A string that is put at the beginning of the style content.
14940 A line break in the output can be indicated by
14941 \begin_inset Flex Code
14944 \begin_layout Plain Layout
14953 \begin_layout Description
14954 \begin_inset Flex Code
14957 \begin_layout Plain Layout
14964 \begin_inset Flex Code
14967 \begin_layout Plain Layout
14973 ] If you put styles into environments, the different
14974 \begin_inset Flex Code
14977 \begin_layout Plain Layout
14983 are not simply added, but added with a factor
14984 \begin_inset Formula $\frac{4}{\mathrm{depth}+4}$
14988 Note that this parameter is also used when
14989 \begin_inset Flex Code
14992 \begin_layout Plain Layout
14999 \begin_inset Flex Code
15002 \begin_layout Plain Layout
15009 \begin_inset Flex Code
15012 \begin_layout Plain Layout
15019 Then it is added to the manual or dynamic margin.
15020 \begin_inset Newline newline
15024 \begin_inset Quotes eld
15028 \begin_inset Flex Code
15031 \begin_layout Plain Layout
15038 \begin_inset Quotes erd
15041 means that the paragraph is indented with the width of
15042 \begin_inset Quotes eld
15046 \begin_inset Flex Code
15049 \begin_layout Plain Layout
15056 \begin_inset Quotes erd
15059 in the normal font.
15060 You can get a negative width by prefixing the string with
15061 \begin_inset Quotes eld
15065 \begin_inset Flex Code
15068 \begin_layout Plain Layout
15075 \begin_inset Quotes erd
15079 This way was chosen so that the look is the same with each used screen
15083 \begin_layout Description
15084 \begin_inset Flex Code
15087 \begin_layout Plain Layout
15094 \begin_inset Flex Code
15097 \begin_layout Plain Layout
15102 , Manual, Dynamic, First_Dynamic, Right_Address_Box
15108 \begin_inset Newline newline
15111 The kind of margin that the style has on the left side.
15115 \begin_layout Description
15116 \begin_inset Flex Code
15119 \begin_layout Plain Layout
15125 just means a fixed margin.
15128 \begin_layout Description
15129 \begin_inset Flex Code
15132 \begin_layout Plain Layout
15138 means that the left margin depends on the string entered in the
15139 \begin_inset Flex Noun
15142 \begin_layout Plain Layout
15143 Edit\SpecialChar menuseparator
15145 \begin_inset space ~
15154 This is used to typeset nice lists without tabulators.
15157 \begin_layout Description
15158 \begin_inset Flex Code
15161 \begin_layout Plain Layout
15167 means that the margin depends on the size of the label.
15168 This is used for automatic enumerated headlines.
15169 It is obvious that the headline
15170 \begin_inset Quotes eld
15173 5.4.3.2.1 Very long headline
15174 \begin_inset Quotes erd
15177 must have a wider left margin (as wide as
15178 \begin_inset Quotes eld
15182 \begin_inset Quotes erd
15185 plus the space) than
15186 \begin_inset Quotes eld
15189 3.2 Very long headline
15190 \begin_inset Quotes erd
15194 \begin_inset Quotes eld
15198 \begin_inset Quotes erd
15201 are not able to do this.
15204 \begin_layout Description
15205 \begin_inset Flex Code
15208 \begin_layout Plain Layout
15214 is similar, but only the very first row of the paragraph is dynamic, while
15215 the others are static; this is used, for example, for descriptions.
15218 \begin_layout Description
15219 \begin_inset Flex Code
15222 \begin_layout Plain Layout
15228 means the margin is chosen in a way that the longest row of this paragraph
15229 fits to the right margin.
15230 This is used to typeset an address on the right edge of the page.
15234 \begin_layout Description
15235 \begin_inset Flex Code
15238 \begin_layout Plain Layout
15245 \begin_inset Flex Code
15248 \begin_layout Plain Layout
15257 \begin_inset space \thinspace{}
15261 \begin_inset Flex Code
15264 \begin_layout Plain Layout
15270 ] Whether fragile commands in this style should be
15271 \begin_inset Flex Code
15274 \begin_layout Plain Layout
15287 whether this command should itself be protected.)
15288 \change_inserted -712698321 1523696949
15292 \begin_layout Description
15294 \change_inserted -712698321 1552395557
15295 \begin_inset Flex Code
15298 \begin_layout Plain Layout
15300 \change_inserted -712698321 1523696950
15307 \begin_inset Flex Code
15310 \begin_layout Plain Layout
15312 \change_inserted -712698321 1523696950
15321 \begin_inset space \thinspace{}
15325 \begin_inset Flex Code
15328 \begin_layout Plain Layout
15330 \change_inserted -712698321 1523696950
15336 ] This causes macros that contain this layout to be protected with
15337 \begin_inset Flex Code
15340 \begin_layout Plain Layout
15342 \change_inserted -712698321 1523696950
15355 ) if necessary and thus allows (some) verbatim stuff in macros.
15358 \begin_layout Description
15360 \change_inserted -712698321 1552395844
15361 \begin_inset Flex Code
15364 \begin_layout Plain Layout
15366 \change_inserted -712698321 1552395561
15373 \begin_inset Flex Code
15376 \begin_layout Plain Layout
15378 \change_inserted -712698321 1552395557
15387 \begin_inset space \thinspace{}
15391 \begin_inset Flex Code
15394 \begin_layout Plain Layout
15396 \change_inserted -712698321 1552395557
15402 ] Whether specific commands in this style (such as
15403 \begin_inset Flex Code
15406 \begin_layout Plain Layout
15408 \change_inserted -712698321 1552395655
15419 \begin_inset Flex Code
15422 \begin_layout Plain Layout
15424 \change_inserted -712698321 1552395661
15434 ) should be protected in an
15435 \begin_inset Flex Code
15438 \begin_layout Plain Layout
15440 \change_inserted -712698321 1552395631
15451 This is particularly needed for styles that draw on
15459 commands which parse their content in complex ways.
15464 \begin_layout Description
15465 \begin_inset Flex Code
15468 \begin_layout Plain Layout
15475 \begin_inset Flex Code
15478 \begin_layout Plain Layout
15485 \begin_inset space \thinspace{}
15489 \begin_inset Flex Code
15492 \begin_layout Plain Layout
15500 ] Whether newlines are translated into \SpecialChar LaTeX
15502 \begin_inset Flex Code
15505 \begin_layout Plain Layout
15516 The translation can be switched off to allow more comfortable \SpecialChar LaTeX
15518 inside \SpecialChar LyX
15522 \begin_layout Description
15523 \begin_inset Flex Code
15526 \begin_layout Plain Layout
15533 \begin_inset Flex Code
15536 \begin_layout Plain Layout
15545 \begin_inset space \thinspace{}
15549 \begin_inset Flex Code
15552 \begin_layout Plain Layout
15558 ] If set to true, and if
15559 \begin_inset Flex Code
15562 \begin_layout Plain Layout
15569 \begin_inset Flex Code
15572 \begin_layout Plain Layout
15578 ) paragraphs are being indented, then the indentation of such a paragraph
15579 following one of this type will be suppressed.
15580 (So this will not affect the display of non-default paragraphs.)
15583 \begin_layout Description
15584 \begin_inset Flex Code
15587 \begin_layout Plain Layout
15594 \begin_inset Flex Code
15597 \begin_layout Plain Layout
15603 ] Name of a style that has replaced this style.
15604 This is used to rename a style, while keeping backward compatibility.
15607 \begin_layout Description
15608 \begin_inset Flex Code
15611 \begin_layout Plain Layout
15618 \begin_inset Flex Code
15621 \begin_layout Plain Layout
15628 \begin_inset space \thinspace{}
15632 \begin_inset Flex Code
15635 \begin_layout Plain Layout
15641 ] Determines whether consecutive paragraphs of the same type are treated
15642 as belonging together.
15643 This has the effect that the
15644 \begin_inset Flex Code
15647 \begin_layout Plain Layout
15653 is only printed once before such a group.
15654 By default, this is true for
15655 \begin_inset Flex Code
15658 \begin_layout Plain Layout
15665 \begin_inset Flex Code
15668 \begin_layout Plain Layout
15675 \begin_inset Flex Code
15678 \begin_layout Plain Layout
15684 and false for all other types.
15687 \begin_layout Description
15688 \begin_inset Flex Code
15691 \begin_layout Plain Layout
15698 \begin_inset Flex Code
15701 \begin_layout Plain Layout
15710 \begin_inset space \thinspace{}
15714 \begin_inset Flex Code
15717 \begin_layout Plain Layout
15723 ] Indicates that paragraphs will not be separated by an empty line in \SpecialChar LaTeX
15725 but only by a line break; together with
15726 \begin_inset Flex Code
15729 \begin_layout Plain Layout
15735 , this allows to emulate a plain text editor (like the ERT inset).
15738 \begin_layout Description
15739 \begin_inset Flex Code
15742 \begin_layout Plain Layout
15749 \begin_inset Flex Code
15752 \begin_layout Plain Layout
15758 ] The indent of the very first line of a paragraph.
15760 \begin_inset Newline newline
15764 \begin_inset Flex Code
15767 \begin_layout Plain Layout
15773 will be fixed for a certain style.
15774 The exception is the default style, since the indentation for these paragraphs
15775 can be prohibited with
15776 \begin_inset Flex Code
15779 \begin_layout Plain Layout
15787 \begin_inset Flex Code
15790 \begin_layout Plain Layout
15796 style paragraphs inside environments use the
15797 \begin_inset Flex Code
15800 \begin_layout Plain Layout
15806 of the environment, not their native one.
15808 \begin_inset Flex Code
15811 \begin_layout Plain Layout
15817 paragraphs inside an enumeration are not indented.
15820 \begin_layout Description
15821 \begin_inset Flex Code
15824 \begin_layout Plain Layout
15831 \begin_inset Flex Code
15834 \begin_layout Plain Layout
15840 ] The vertical space between two paragraphs of this style.
15843 \begin_layout Description
15844 \begin_inset Flex Code
15847 \begin_layout Plain Layout
15854 \begin_inset Flex Code
15857 \begin_layout Plain Layout
15864 allows the user to choose either
15865 \begin_inset Quotes eld
15869 \begin_inset Quotes erd
15873 \begin_inset Quotes eld
15877 \begin_inset Quotes erd
15880 to separate paragraphs.
15882 \begin_inset Quotes eld
15886 \begin_inset Quotes erd
15890 \begin_inset Flex Code
15893 \begin_layout Plain Layout
15901 \begin_inset Quotes eld
15905 \begin_inset Quotes erd
15909 \begin_inset Flex Code
15912 \begin_layout Plain Layout
15918 is ignored and all paragraphs are separated by the
15919 \begin_inset Flex Code
15922 \begin_layout Plain Layout
15929 The vertical space is calculated with
15930 \begin_inset Flex Code
15933 \begin_layout Plain Layout
15935 \begin_inset space ~
15944 \begin_inset Flex Code
15947 \begin_layout Plain Layout
15953 is the height of a row with the normal font.
15954 This way, the look stays the same with different screen fonts.
15957 \begin_layout Description
15958 \begin_inset Flex Code
15961 \begin_layout Plain Layout
15968 \begin_inset Flex Code
15971 \begin_layout Plain Layout
15980 \begin_inset space \thinspace{}
15984 \begin_inset Flex Code
15987 \begin_layout Plain Layout
15993 ] Whether the contents of this paragraph should be output in raw form, meaning
15994 without special translations that \SpecialChar LaTeX
15998 \begin_layout Description
15999 \begin_inset Flex Code
16002 \begin_layout Plain Layout
16009 \begin_inset Flex Code
16012 \begin_layout Plain Layout
16022 Defines individual characters that should be output in raw form, meaning
16023 without special translations that \SpecialChar LaTeX
16027 \begin_layout Description
16028 \begin_inset Flex Code
16031 \begin_layout Plain Layout
16037 Information to be included in the \SpecialChar LaTeX
16038 preamble when this style is used.
16039 Used to define macros, load packages, etc., required by this particular
16042 \begin_inset Quotes eld
16046 \begin_inset Flex Code
16049 \begin_layout Plain Layout
16056 \begin_inset Quotes erd
16062 \begin_layout Description
16063 \begin_inset Flex Code
16066 \begin_layout Plain Layout
16073 \begin_inset Flex Code
16076 \begin_layout Plain Layout
16082 ] The prefix to use when creating labels referring to paragraphs of this
16084 This allows the use of formatted references.
16087 \begin_layout Description
16088 \begin_inset Flex Code
16091 \begin_layout Plain Layout
16098 \begin_inset Flex Code
16101 \begin_layout Plain Layout
16107 ] Whether the style requires the feature
16108 \begin_inset Flex Code
16111 \begin_layout Plain Layout
16118 \begin_inset CommandInset ref
16120 reference "chap:List-of-functions"
16124 for the list of features).
16125 If you require a package with specific options, you can additionally use
16127 \begin_inset Flex Code
16130 \begin_layout Plain Layout
16136 as a general text class parameter (see
16137 \begin_inset CommandInset ref
16139 reference "subsec:General-text-class"
16146 \begin_layout Description
16147 \begin_inset Flex Code
16150 \begin_layout Plain Layout
16157 \begin_inset Flex Code
16160 \begin_layout Plain Layout
16169 \begin_inset Flex Code
16172 \begin_layout Plain Layout
16178 ] Resets the \SpecialChar LaTeX
16179 arguments of this style (as defined via the
16180 \begin_inset Flex Code
16183 \begin_layout Plain Layout
16190 This is useful if you have copied a style via
16191 \begin_inset Flex Code
16194 \begin_layout Plain Layout
16200 , but you do not want to inherit its (required and optional) arguments.
16203 \begin_layout Description
16204 \begin_inset Flex Code
16207 \begin_layout Plain Layout
16214 \begin_inset Flex Code
16217 \begin_layout Plain Layout
16226 \begin_inset Flex Code
16229 \begin_layout Plain Layout
16235 ] Resumes a counter that is usually reset at each new sequence of layouts.
16236 This is currently only useful when
16237 \begin_inset Flex Code
16240 \begin_layout Plain Layout
16247 \begin_inset Flex Code
16250 \begin_layout Plain Layout
16259 \begin_layout Description
16260 \begin_inset Flex Code
16263 \begin_layout Plain Layout
16270 \begin_inset Flex Code
16273 \begin_layout Plain Layout
16279 ] A string that is put at the end of the layout content.
16280 A line break in the output can be indicated by
16281 \begin_inset Flex Code
16284 \begin_layout Plain Layout
16293 \begin_layout Description
16294 \begin_inset Flex Code
16297 \begin_layout Plain Layout
16304 \begin_inset Flex Code
16307 \begin_layout Plain Layout
16314 \begin_inset Flex Code
16317 \begin_layout Plain Layout
16326 \begin_layout Description
16327 \begin_inset Flex Code
16330 \begin_layout Plain Layout
16337 \begin_inset Flex Code
16340 \begin_layout Plain Layout
16349 \begin_inset Flex Code
16352 \begin_layout Plain Layout
16359 \begin_inset Flex Code
16362 \begin_layout Plain Layout
16369 \begin_inset Flex Code
16372 \begin_layout Plain Layout
16374 \begin_inset space ~
16382 ] This defines what the default spacing should be in the style.
16384 \begin_inset Flex Code
16387 \begin_layout Plain Layout
16394 \begin_inset Flex Code
16397 \begin_layout Plain Layout
16404 \begin_inset Flex Code
16407 \begin_layout Plain Layout
16413 correspond respectively to a multiplier value of 1, 1.25 and 1.667.
16414 If you specify the argument
16415 \begin_inset Flex Code
16418 \begin_layout Plain Layout
16424 , then you must also provide a value argument which will be the actual multiplie
16426 Note that, contrary to other parameters,
16427 \begin_inset Flex Code
16430 \begin_layout Plain Layout
16436 implies the generation of specific \SpecialChar LaTeX
16437 code, using the \SpecialChar LaTeX
16441 \begin_inset Flex Code
16444 \begin_layout Plain Layout
16453 \begin_layout Description
16454 \begin_inset Flex Code
16457 \begin_layout Plain Layout
16464 \begin_inset Flex Code
16467 \begin_layout Plain Layout
16474 \begin_inset space \thinspace{}
16478 \begin_inset Flex Code
16481 \begin_layout Plain Layout
16489 ] Allow spell-checking paragraphs of this style.
16493 \begin_layout Description
16494 \begin_inset Flex Code
16497 \begin_layout Plain Layout
16504 \begin_inset Flex Code
16507 \begin_layout Plain Layout
16516 \begin_inset Flex Code
16519 \begin_layout Plain Layout
16525 ] Steps the master counter of a given counter at the beginning of a new
16526 sequence of layouts.
16527 This is currently only useful when
16528 \begin_inset Flex Code
16531 \begin_layout Plain Layout
16538 \begin_inset Flex Code
16541 \begin_layout Plain Layout
16550 \begin_layout Description
16551 \begin_inset Flex Code
16554 \begin_layout Plain Layout
16560 The font used for the text body .
16562 \begin_inset CommandInset ref
16564 reference "subsec:Font-description"
16571 \begin_layout Description
16572 \begin_inset Flex Code
16575 \begin_layout Plain Layout
16584 \begin_inset Flex Code
16587 \begin_layout Plain Layout
16597 The level of the style in the table of contents.
16598 This is used for automatic numbering of section headings.
16601 \begin_layout Description
16602 \begin_inset Flex Code
16605 \begin_layout Plain Layout
16614 \begin_inset Flex Code
16617 \begin_layout Plain Layout
16628 \begin_inset Flex Code
16631 \begin_layout Plain Layout
16638 \begin_inset Flex Code
16641 \begin_layout Plain Layout
16647 ] This tag determines whether the first line indentation of this paragraph
16648 can be toggled via the Paragraph settings dialog.
16652 \begin_inset Flex Code
16655 \begin_layout Plain Layout
16665 is set, indentation can be toggled if the document settings use
16666 \begin_inset Quotes eld
16670 \begin_inset Quotes erd
16673 paragraph style, with
16674 \begin_inset Flex Code
16677 \begin_layout Plain Layout
16683 , indentation can always be toggled, notwithstanding the document settings,
16685 \begin_inset Flex Code
16688 \begin_layout Plain Layout
16694 , indentation can never be toggled.
16697 \begin_layout Description
16698 \begin_inset Flex Code
16701 \begin_layout Plain Layout
16708 \begin_inset Flex Code
16711 \begin_layout Plain Layout
16717 ] The vertical space with which the very first of a chain of paragraphs
16718 with this style is separated from the previous paragraph.
16719 If the previous paragraph has another style, the separations are not simply
16720 added, but the maximum is taken.
16723 \begin_layout Subsection
16724 \begin_inset CommandInset label
16730 Internationalization of Paragraph Styles
16733 \begin_layout Standard
16735 has long supported internationalization of layout information, but, until
16736 version 2.0, this applied only to the user interface and not to, say, PDF
16738 Thus, French authors were forced to resort to ugly hacks if they wanted
16743 1' instead of `Theorem 1'.
16744 Thanks to Georg Baum, that is no longer the case.
16747 \begin_layout Standard
16749 \begin_inset Flex Code
16752 \begin_layout Plain Layout
16758 defines text that is to appear in the typeset document, it may use
16759 \begin_inset Flex Code
16762 \begin_layout Plain Layout
16769 \begin_inset Flex Code
16772 \begin_layout Plain Layout
16778 to support non-English and even multi-language documents correctly.
16779 The following excerpt (from the
16780 \begin_inset Flex Code
16783 \begin_layout Plain Layout
16789 file) shows how this works:
16792 \begin_layout LyX-Code
16797 \begin_layout LyX-Code
16800 theoremstyle{remark}
16803 \begin_layout LyX-Code
16806 newtheorem{claim}[thm]{
16813 \begin_layout LyX-Code
16817 \begin_layout LyX-Code
16821 \begin_layout LyX-Code
16826 claimname}{_(Claim)}
16829 \begin_layout LyX-Code
16833 \begin_layout LyX-Code
16837 \begin_layout LyX-Code
16846 claimname}{_(Claim)}}
16849 \begin_layout LyX-Code
16854 \begin_layout Standard
16855 In principle, any legal \SpecialChar LaTeX
16857 \begin_inset Flex Code
16860 \begin_layout Plain Layout
16867 \begin_inset Flex Code
16870 \begin_layout Plain Layout
16876 tags, but in practice they will typically look as they do here.
16877 The key to correct translation of the typeset text is the definition of
16878 the \SpecialChar LaTeX
16880 \begin_inset Flex Code
16883 \begin_layout Plain Layout
16892 \begin_inset Flex Code
16895 \begin_layout Plain Layout
16907 \begin_layout Standard
16909 \begin_inset Flex Code
16912 \begin_layout Plain Layout
16918 tag provides for internationalization based upon the overall language of
16920 The contents of the tag will be included in the preamble, just as with
16922 \begin_inset Flex Code
16925 \begin_layout Plain Layout
16932 What makes it special is the use of the
16933 \begin_inset Quotes eld
16937 \begin_inset Quotes erd
16941 \begin_inset Flex Code
16944 \begin_layout Plain Layout
16950 , which will be replaced, when \SpecialChar LyX
16951 produces \SpecialChar LaTeX
16952 output, with the translation of
16953 its argument into the document language.
16956 \begin_layout Standard
16958 \begin_inset Flex Code
16961 \begin_layout Plain Layout
16967 tag is more complex, since it is meant to provide support for multi-language
16968 documents and so offers an interface to the
16969 \begin_inset Flex Code
16972 \begin_layout Plain Layout
16979 Its contents will be added to the preamble once for each language that
16980 appears in the document.
16981 In this case, the argument to
16982 \begin_inset Flex Code
16985 \begin_layout Plain Layout
16991 will be replaced with its translation into the language in question; the
16993 \begin_inset Flex Code
16996 \begin_layout Plain Layout
17002 is replaced by the language name (as used by the babel package).
17005 \begin_layout Standard
17006 A German document that also included a French section would thus have the
17007 following in the preamble:
17010 \begin_layout LyX-Code
17019 claimname}{Affirmation}}
17020 \begin_inset Newline newline
17031 claimname}{Behauptung}}
17032 \begin_inset Newline newline
17039 claimname}{Behauptung}
17042 \begin_layout Standard
17045 \begin_inset Flex Code
17048 \begin_layout Plain Layout
17054 will then conspire to produce the correct text in the output.
17057 \begin_layout Standard
17058 One important point to note here is that the translations are provided by
17060 itself, through the file
17061 \begin_inset Flex Code
17064 \begin_layout Plain Layout
17071 This means, in effect, that
17072 \begin_inset Flex Code
17075 \begin_layout Plain Layout
17082 \begin_inset Flex Code
17085 \begin_layout Plain Layout
17091 are really only of use in layout files that are provided with \SpecialChar LyX
17093 entered in user-created layout files will not be seen by \SpecialChar LyX
17094 's internationalizatio
17095 n routines unless the
17096 \begin_inset Flex Code
17099 \begin_layout Plain Layout
17105 file is modified accordingly.
17106 That said, however, any layout created with the intention that it will
17107 be included with \SpecialChar LyX
17108 should use these tags where appropriate.
17109 Please note that the paragraph style translations provided by \SpecialChar LyX
17111 change with a minor update (e.
17112 \begin_inset space \thinspace{}
17116 \begin_inset space \space{}
17119 from version 2.1.x to 2.1.y).
17120 It is however quite likely that a major update (e.
17121 \begin_inset space \thinspace{}
17125 \begin_inset space \space{}
17128 from 2.0.x to 2.1.0) will introduce new translations or corrections.
17131 \begin_layout Subsection
17133 \begin_inset CommandInset label
17135 name "subsec:Floats"
17142 \begin_layout Standard
17143 It is necessary to define the floats (
17144 \begin_inset Flex Noun
17147 \begin_layout Plain Layout
17154 \begin_inset Flex Noun
17157 \begin_layout Plain Layout
17163 , \SpecialChar ldots
17164 ) in the text class itself.
17165 Standard floats are included in the file
17166 \begin_inset Flex Code
17169 \begin_layout Plain Layout
17175 , so you may have to do no more than add
17178 \begin_layout LyX-Code
17179 Input stdfloats.inc
17182 \begin_layout Standard
17183 to your layout file.
17184 If you want to implement a text class that proposes some other float types
17185 (like the AGU class bundled with \SpecialChar LyX
17186 ), the information below will hopefully
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 =!htbpH] Allowed placement options for this float type.
17211 The value is a string of placement characters.
17212 Possible characters include:
17217 \begin_inset Quotes eld
17221 \begin_inset Quotes erd
17229 \begin_inset Quotes eld
17233 \begin_inset Quotes erd
17241 \begin_inset Quotes eld
17245 \begin_inset Quotes erd
17253 \begin_inset Quotes eld
17257 \begin_inset Quotes erd
17265 \begin_inset Quotes eld
17269 \begin_inset Quotes erd
17277 \begin_inset Quotes eld
17281 \begin_inset Quotes erd
17285 The order of the characters in the string does not matter.
17286 If no placement options are allowed, use the string
17293 \begin_layout Description
17294 \begin_inset Flex Code
17297 \begin_layout Plain Layout
17304 \begin_inset Flex Code
17307 \begin_layout Plain Layout
17316 \begin_inset space \thinspace{}
17322 \begin_inset Flex Code
17325 \begin_layout Plain Layout
17335 ] Defines whether the float allows to be rotated via the \SpecialChar LaTeX
17342 \begin_inset Flex Code
17345 \begin_layout Plain Layout
17351 if the float does not support this feature.
17354 \begin_layout Description
17355 \begin_inset Flex Code
17358 \begin_layout Plain Layout
17365 \begin_inset Flex Code
17368 \begin_layout Plain Layout
17377 \begin_inset space \thinspace{}
17383 \begin_inset Flex Code
17386 \begin_layout Plain Layout
17396 ] Defines whether the float has a starred variant that spans columns in
17397 a two column paragraph.
17399 \begin_inset Flex Code
17402 \begin_layout Plain Layout
17408 if the float does not support this feature.
17411 \begin_layout Description
17412 \begin_inset Flex Code
17415 \begin_layout Plain Layout
17422 \begin_inset Flex Code
17425 \begin_layout Plain Layout
17432 \begin_inset Quotes erd
17436 \begin_inset Quotes erd
17439 ] The file name extension of an auxiliary file for the list of figures (or
17442 writes the captions to this file.
17445 \begin_layout Description
17446 \begin_inset Flex Code
17449 \begin_layout Plain Layout
17456 \begin_inset Flex Code
17459 \begin_layout Plain Layout
17466 \begin_inset Quotes erd
17470 \begin_inset Quotes erd
17473 ] The string that will be used in the menus and also for the caption.
17474 This is translated to the current language if babel is used.
17477 \begin_layout Description
17478 \begin_inset Flex Code
17481 \begin_layout Plain Layout
17487 These tags control the XHTML output.
17489 \begin_inset CommandInset ref
17491 reference "sec:Tags-for-XHTML"
17498 \begin_layout Description
17499 \begin_inset Flex Code
17502 \begin_layout Plain Layout
17511 \begin_inset Flex Code
17514 \begin_layout Plain Layout
17523 \begin_inset space \thinspace{}
17527 \begin_inset Flex Code
17530 \begin_layout Plain Layout
17536 ] Indicates whether the float is already defined in the document class or
17537 if instead the \SpecialChar LaTeX
17539 \begin_inset Flex Code
17542 \begin_layout Plain Layout
17548 needs to be loaded to define it on-the-fly.
17550 \begin_inset Flex Code
17553 \begin_layout Plain Layout
17560 \begin_inset Flex Code
17563 \begin_layout Plain Layout
17570 It should be set to
17571 \begin_inset Flex Code
17574 \begin_layout Plain Layout
17580 if the float is already defined by the \SpecialChar LaTeX
17584 \begin_layout Description
17585 \begin_inset Flex Code
17588 \begin_layout Plain Layout
17595 \begin_inset Flex Code
17598 \begin_layout Plain Layout
17605 \begin_inset Quotes erd
17609 \begin_inset Quotes erd
17612 ] The command used to generate a list of floats of this type; the leading
17621 \begin_inset Flex Code
17624 \begin_layout Plain Layout
17630 is false, since there is no standard way to generate this command.
17632 \begin_inset Flex Code
17635 \begin_layout Plain Layout
17641 is true, since in that case there is a standard way to define the command.
17644 \begin_layout Description
17645 \begin_inset Flex Code
17648 \begin_layout Plain Layout
17655 \begin_inset Flex Code
17658 \begin_layout Plain Layout
17665 \begin_inset Quotes erd
17669 \begin_inset Quotes erd
17672 ] A title for a list of floats of this kind (list of figures, tables, or
17674 It is used for the screen label within \SpecialChar LyX
17675 , it is used by \SpecialChar LaTeX
17677 it is used as the title in the XHTML output.
17678 It will be translated to the document language.
17681 \begin_layout Description
17682 \begin_inset Flex Code
17685 \begin_layout Plain Layout
17692 \begin_inset Flex Code
17695 \begin_layout Plain Layout
17702 \begin_inset Quotes erd
17706 \begin_inset Quotes erd
17709 ] This (optional) argument determines whether floats of this class will
17710 be numbered within some sectional unit of the document.
17712 \begin_inset Flex Code
17715 \begin_layout Plain Layout
17722 \begin_inset Quotes eld
17726 \begin_inset Flex Code
17729 \begin_layout Plain Layout
17736 \begin_inset Quotes erd
17739 , the floats will be numbered within chapters.
17743 \begin_layout Description
17744 \begin_inset Flex Code
17747 \begin_layout Plain Layout
17754 \begin_inset Flex Code
17757 \begin_layout Plain Layout
17764 \begin_inset Quotes erd
17768 \begin_inset Quotes erd
17771 ] The default placement for the given class of floats.
17772 The string should be as in standard \SpecialChar LaTeX
17774 \begin_inset Flex Code
17777 \begin_layout Plain Layout
17784 \begin_inset Flex Code
17787 \begin_layout Plain Layout
17794 \begin_inset Flex Code
17797 \begin_layout Plain Layout
17804 \begin_inset Flex Code
17807 \begin_layout Plain Layout
17813 for top, bottom, page, and here, respectively.
17817 \begin_layout Plain Layout
17818 Note that the order of these letters in the string is irrelevant, like in
17825 On top of that there is a new type,
17826 \begin_inset Flex Code
17829 \begin_layout Plain Layout
17835 , which does not really correspond to a float, since it means: put it
17836 \begin_inset Quotes eld
17840 \begin_inset Quotes erd
17844 Note however that the
17845 \begin_inset Flex Code
17848 \begin_layout Plain Layout
17854 specifier is special and, because of implementation details, cannot be
17855 used in non-built in float types.
17856 If you do not understand what this means, just use
17857 \begin_inset Quotes eld
17861 \begin_inset Flex Code
17864 \begin_layout Plain Layout
17871 \begin_inset Quotes erd
17877 \begin_layout Description
17878 \begin_inset Flex Code
17881 \begin_layout Plain Layout
17888 \begin_inset Flex Code
17891 \begin_layout Plain Layout
17897 ] The prefix to use when creating labels referring to floats of this type.
17898 This allows the use of formatted references.
17899 Note that you can remove any
17900 \begin_inset Flex Code
17903 \begin_layout Plain Layout
17909 set by a copied style by using the special value
17910 \begin_inset Quotes eld
17914 \begin_inset Quotes erd
17917 , which must be all caps.
17920 \begin_layout Description
17921 \begin_inset Flex Code
17924 \begin_layout Plain Layout
17931 \begin_inset Flex Code
17934 \begin_layout Plain Layout
17941 \begin_inset Quotes erd
17945 \begin_inset Quotes erd
17948 ] The style used when defining the float using
17949 \begin_inset Flex Code
17952 \begin_layout Plain Layout
17963 \begin_layout Description
17964 \begin_inset Flex Code
17967 \begin_layout Plain Layout
17974 \begin_inset Flex Code
17977 \begin_layout Plain Layout
17984 \begin_inset Quotes erd
17988 \begin_inset Quotes erd
17992 \begin_inset Quotes eld
17996 \begin_inset Quotes erd
17999 of the new class of floats, like program or algorithm.
18000 After the appropriate
18001 \begin_inset Flex Code
18004 \begin_layout Plain Layout
18013 \begin_inset Flex Code
18016 \begin_layout Plain Layout
18025 \begin_inset Flex Code
18028 \begin_layout Plain Layout
18039 \begin_layout Description
18040 \begin_inset Flex Code
18043 \begin_layout Plain Layout
18050 \begin_inset Flex Code
18053 \begin_layout Plain Layout
18060 \begin_inset space \thinspace{}
18064 \begin_inset Flex Code
18067 \begin_layout Plain Layout
18075 ] Specifies whether this float is defined using the \SpecialChar LaTeX
18077 \begin_inset Flex Code
18080 \begin_layout Plain Layout
18086 , either by the class file, another package or on-the-fly by \SpecialChar LyX
18090 \begin_layout Standard
18091 Note that defining a float with type
18092 \begin_inset Flex Code
18095 \begin_layout Plain Layout
18103 automatically defines the corresponding counter with name
18104 \begin_inset Flex Code
18107 \begin_layout Plain Layout
18118 \begin_layout Subsection
18119 Flex insets and InsetLayout
18120 \begin_inset CommandInset label
18122 name "subsec:Flex-insets-and"
18129 \begin_layout Standard
18130 Flex insets come in three different kinds:
18133 \begin_layout Itemize
18135 \begin_inset Flex Code
18138 \begin_layout Plain Layout
18144 ): These define semantic markup corresponding to such \SpecialChar LaTeX
18146 \begin_inset Flex Code
18149 \begin_layout Plain Layout
18158 \begin_inset Flex Code
18161 \begin_layout Plain Layout
18172 \begin_layout Itemize
18174 \begin_inset Flex Code
18177 \begin_layout Plain Layout
18183 ): These can be used to define custom collapsible insets, similar to \SpecialChar TeX
18185 footnote, and the like.
18186 An obvious example is an endnote inset, which is defined in the
18187 \begin_inset Flex Code
18190 \begin_layout Plain Layout
18199 \begin_layout Itemize
18201 \begin_inset Flex Code
18204 \begin_layout Plain Layout
18210 ): For use with DocBook classes.
18213 \begin_layout Standard
18214 Flex insets are defined using the
18215 \begin_inset Flex Code
18218 \begin_layout Plain Layout
18224 tag, which shall be explained in a moment.
18227 \begin_layout Standard
18229 \begin_inset Flex Code
18232 \begin_layout Plain Layout
18238 tag also serves another function: It can be used to customize the general
18239 layout of many different types of insets.
18241 \begin_inset Flex Code
18244 \begin_layout Plain Layout
18250 can be used to customize the layout parameters for footnotes, marginal
18251 notes, note insets, \SpecialChar TeX
18252 code (ERT) insets, branches, listings, indexes, boxes,
18253 tables, algorithms, URLs, and captions, as well as to define Flex insets.
18256 \begin_layout Standard
18258 \begin_inset Flex Code
18261 \begin_layout Plain Layout
18267 definition must begin with a line of the form:
18270 \begin_layout LyX-Code
18274 \begin_layout Standard
18276 \begin_inset Flex Code
18279 \begin_layout Plain Layout
18285 indicates the inset whose layout is being defined, and here there are four
18289 \begin_layout Enumerate
18290 The layout for a pre-existing inset is being modified.
18291 In this case, can be
18292 \begin_inset Flex Code
18295 \begin_layout Plain Layout
18301 any one of the following:
18302 \begin_inset Flex Code
18305 \begin_layout Plain Layout
18312 \begin_inset Flex Code
18315 \begin_layout Plain Layout
18322 \begin_inset Flex Code
18325 \begin_layout Plain Layout
18332 \begin_inset Flex Code
18335 \begin_layout Plain Layout
18342 \begin_inset Flex Code
18345 \begin_layout Plain Layout
18352 \begin_inset Flex Code
18355 \begin_layout Plain Layout
18362 \begin_inset Flex Code
18365 \begin_layout Plain Layout
18372 \begin_inset Flex Code
18375 \begin_layout Plain Layout
18382 \begin_inset Flex Code
18385 \begin_layout Plain Layout
18392 \begin_inset Flex Code
18395 \begin_layout Plain Layout
18402 \begin_inset Flex Code
18405 \begin_layout Plain Layout
18412 \begin_inset Flex Code
18415 \begin_layout Plain Layout
18422 \begin_inset Flex Code
18425 \begin_layout Plain Layout
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
18482 \begin_inset Flex Code
18485 \begin_layout Plain Layout
18492 \begin_inset Flex Code
18495 \begin_layout Plain Layout
18504 \begin_layout Enumerate
18505 The layout for a Flex inset is being defined.
18507 \begin_inset Flex Code
18510 \begin_layout Plain Layout
18516 must be of the form
18517 \begin_inset Quotes eld
18521 \begin_inset Flex Code
18524 \begin_layout Plain Layout
18531 \begin_inset Quotes erd
18535 \begin_inset Flex Code
18538 \begin_layout Plain Layout
18544 may be be any valid identifier not used by a pre-existing Flex inset.
18545 The identifier may include spaces, but in that case the whole thing must
18546 be wrapped in quotes.
18547 Note that the definition of a flex inset
18552 \begin_inset Flex Code
18555 \begin_layout Plain Layout
18561 entry, declaring which type of inset it defines.
18564 \begin_layout Enumerate
18565 The layout for user specific branch is being defined.
18567 \begin_inset Flex Code
18570 \begin_layout Plain Layout
18576 must be of the form
18577 \begin_inset Quotes eld
18581 \begin_inset Flex Code
18584 \begin_layout Plain Layout
18591 \begin_inset Quotes erd
18595 \begin_inset Flex Code
18598 \begin_layout Plain Layout
18604 may be be any valid identifier of branch defined in user's document.
18605 The identifier may include spaces, but in that case the whole thing must
18606 be wrapped in quotes.
18607 The main purpose of this feature is to allow \SpecialChar LaTeX
18608 wrapping around specific
18609 branches as user needs.
18612 \begin_layout Enumerate
18613 The layout of a user (or class) specific caption is being defined.
18615 \begin_inset Flex Code
18618 \begin_layout Plain Layout
18624 must be of the form
18625 \begin_inset Quotes eld
18629 \begin_inset Flex Code
18632 \begin_layout Plain Layout
18639 \begin_inset Quotes erd
18643 \begin_inset Flex Code
18646 \begin_layout Plain Layout
18652 specifies the name of the caption as it appears in the menu.
18653 Have a look at the standard caption (
18654 \begin_inset Flex Code
18657 \begin_layout Plain Layout
18663 ), the specific captions of the KOMA-Script classes (
18664 \begin_inset Flex Code
18667 \begin_layout Plain Layout
18674 \begin_inset Flex Code
18677 \begin_layout Plain Layout
18686 \begin_inset space ~
18690 \begin_inset Newline linebreak
18696 \begin_inset Flex Code
18699 \begin_layout Plain Layout
18705 ) for applications.
18708 \begin_layout Standard
18710 \begin_inset Flex Code
18713 \begin_layout Plain Layout
18719 definition can contain the following entries:
18722 \begin_layout Description
18723 \begin_inset Flex Code
18726 \begin_layout Plain Layout
18733 \begin_inset Flex Code
18736 \begin_layout Plain Layout
18742 =""] This inset will appear in the table of contents of the given type.
18743 An empty string disables.
18744 See also the OutlinerName and the IsTocCaption commands.
18745 This is only implemented for Flex insets.
18749 \begin_layout Description
18750 \begin_inset Flex Code
18753 \begin_layout Plain Layout
18760 \begin_inset Flex Code
18763 \begin_layout Plain Layout
18769 ] Defines argument number of a command\SpecialChar breakableslash
18770 environment associated with the current
18772 The definition must end with
18773 \begin_inset Flex Code
18776 \begin_layout Plain Layout
18784 \begin_inset CommandInset ref
18786 reference "subsec:Paragraph-Styles"
18793 \begin_layout Description
18794 \begin_inset Flex Code
18797 \begin_layout Plain Layout
18803 Preamble for changing language commands; see
18804 \begin_inset CommandInset ref
18806 reference "subsec:I18n"
18813 \begin_layout Description
18814 \begin_inset Flex Code
18817 \begin_layout Plain Layout
18824 \begin_inset Flex Code
18827 \begin_layout Plain Layout
18833 ] The color for the inset's background.
18835 \begin_inset CommandInset ref
18837 reference "chap:Names-of-colors"
18841 for a list of the available color names.
18844 \begin_layout Description
18845 \begin_inset Flex Code
18848 \begin_layout Plain Layout
18855 \begin_inset Flex Code
18858 \begin_layout Plain Layout
18867 \begin_inset space \thinspace{}
18871 \begin_inset Flex Code
18874 \begin_layout Plain Layout
18880 ] Whether to use the content of the inset as the label, when the inset is
18885 \begin_layout Description
18886 \begin_inset Flex Code
18889 \begin_layout Plain Layout
18896 \begin_inset Flex Code
18899 \begin_layout Plain Layout
18905 ] As with paragraph styles, see
18906 \begin_inset CommandInset ref
18908 reference "subsec:Paragraph-Styles"
18913 Note that you need to specify the complete type, e.
18914 \begin_inset space \thinspace{}
18918 \begin_inset space ~
18922 \begin_inset Flex Code
18925 \begin_layout Plain Layout
18926 CopyStyle Flex:<name>
18934 \begin_layout Description
18935 \begin_inset Flex Code
18938 \begin_layout Plain Layout
18945 \begin_inset Flex Code
18948 \begin_layout Plain Layout
18957 \begin_inset space \thinspace{}
18961 \begin_inset Flex Code
18964 \begin_layout Plain Layout
18970 ] Indicates whether the user may employ the Paragraph Settings dialog to
18971 customize the paragraph.
18974 \begin_layout Description
18975 \begin_inset Flex Code
18978 \begin_layout Plain Layout
18985 \begin_inset Flex Code
18988 \begin_layout Plain Layout
18995 \begin_inset Flex Code
18998 \begin_layout Plain Layout
19005 \begin_inset Flex Code
19008 \begin_layout Plain Layout
19014 , describing the rendering style used for the inset's frame and buttons.
19015 Footnotes generally use
19016 \begin_inset Flex Code
19019 \begin_layout Plain Layout
19025 , ERT insets generally
19026 \begin_inset Flex Code
19029 \begin_layout Plain Layout
19035 , and character styles
19036 \begin_inset Flex Code
19039 \begin_layout Plain Layout
19048 \begin_layout Description
19049 \begin_inset Flex Code
19052 \begin_layout Plain Layout
19059 \begin_inset Flex Code
19062 \begin_layout Plain Layout
19071 \begin_inset space \thinspace{}
19077 \begin_inset Flex Code
19080 \begin_layout Plain Layout
19089 \begin_inset Flex Code
19092 \begin_layout Plain Layout
19099 \begin_inset Flex Code
19102 \begin_layout Plain Layout
19109 Indicates whether the environment will stand on its own in the output or
19110 will appear inline with the surrounding text.
19111 If set to false, it is supposed that the \SpecialChar LaTeX
19112 environment ignores white space
19113 (including one newline character) after the
19114 \begin_inset Flex Code
19117 \begin_layout Plain Layout
19130 \begin_inset Flex Code
19133 \begin_layout Plain Layout
19147 \change_inserted 731793113 1538674858
19151 \begin_layout Description
19153 \change_inserted 731793113 1538674891
19154 \begin_inset Flex Code
19157 \begin_layout Plain Layout
19159 \change_inserted 731793113 1538674863
19171 ,1] Allow the contents of the inset to be edited externally (using whatever
19172 editor is defined for the document's output format).
19177 \begin_layout Description
19178 \begin_inset Flex Code
19181 \begin_layout Plain Layout
19187 Required at the end of the
19188 \begin_inset Flex Code
19191 \begin_layout Plain Layout
19200 \begin_layout Description
19201 \begin_inset Flex Code
19204 \begin_layout Plain Layout
19210 The font used for both the text body
19216 \begin_inset CommandInset ref
19218 reference "subsec:Font-description"
19223 Note that defining this font automatically defines the
19224 \begin_inset Flex Code
19227 \begin_layout Plain Layout
19233 to the same value, so define this first and define
19234 \begin_inset Flex Code
19237 \begin_layout Plain Layout
19243 later if you want them to be different.
19246 \begin_layout Description
19247 \begin_inset Flex Code
19250 \begin_layout Plain Layout
19251 FixedWidthPreambleEncoding
19257 \begin_inset Flex Code
19260 \begin_layout Plain Layout
19269 \begin_inset space \thinspace{}
19273 \begin_inset Flex Code
19276 \begin_layout Plain Layout
19282 ] Force a fixed width encoding for the translated contents of
19283 \begin_inset Flex Code
19286 \begin_layout Plain Layout
19293 \begin_inset Flex Code
19296 \begin_layout Plain Layout
19302 code generated by this layout.
19303 This is needed for special \SpecialChar LaTeX
19308 that do not work with variable width encodings such as
19313 This setting is ignored if fully Unicode aware \SpecialChar LaTeX
19314 backends such as Xe\SpecialChar TeX
19316 Lua\SpecialChar TeX
19320 \begin_layout Description
19321 \begin_inset Flex Code
19324 \begin_layout Plain Layout
19325 ForceLocalFontSwitch
19331 \begin_inset Flex Code
19334 \begin_layout Plain Layout
19343 \begin_inset space \thinspace{}
19347 \begin_inset Flex Code
19350 \begin_layout Plain Layout
19356 ] When using babel, always use a local font switch (
19357 \begin_inset Flex Code
19360 \begin_layout Plain Layout
19368 ), never a global one (such as
19369 \begin_inset Flex Code
19372 \begin_layout Plain Layout
19383 \begin_layout Description
19384 \begin_inset Flex Code
19387 \begin_layout Plain Layout
19394 \begin_inset Flex Code
19397 \begin_layout Plain Layout
19406 \begin_inset space \thinspace{}
19410 \begin_inset Flex Code
19413 \begin_layout Plain Layout
19420 \begin_inset Quotes eld
19424 \begin_inset Quotes erd
19427 language, leading to Left-to-Right (Latin) output, e.
19428 \begin_inset space \thinspace{}
19432 \begin_inset space \space{}
19435 in \SpecialChar TeX
19440 \begin_layout Description
19441 \begin_inset Flex Code
19444 \begin_layout Plain Layout
19451 \begin_inset Flex Code
19454 \begin_layout Plain Layout
19463 \begin_inset space \thinspace{}
19467 \begin_inset Flex Code
19470 \begin_layout Plain Layout
19476 ] Force a a line break in the \SpecialChar LaTeX
19477 output before the inset starts and after
19479 This assures the inset itself is output on its own lines, for parsing purposes.
19482 \begin_layout Description
19483 \begin_inset Flex Code
19486 \begin_layout Plain Layout
19493 \begin_inset Flex Code
19496 \begin_layout Plain Layout
19505 \begin_inset space \thinspace{}
19509 \begin_inset Flex Code
19512 \begin_layout Plain Layout
19518 ] Indicates whether the
19519 \begin_inset Flex Code
19522 \begin_layout Plain Layout
19528 should be used or, instead, the user can change the paragraph style used
19533 \begin_layout Description
19534 \begin_inset Flex Code
19537 \begin_layout Plain Layout
19544 \begin_inset Flex Code
19547 \begin_layout Plain Layout
19556 \begin_inset space \thinspace{}
19560 \begin_inset Flex Code
19563 \begin_layout Plain Layout
19569 ] As with paragraph styles, see
19570 \begin_inset CommandInset ref
19572 reference "subsec:Paragraph-Styles"
19579 \begin_layout Description
19580 \begin_inset Flex Code
19583 \begin_layout Plain Layout
19589 These tags control the XHTML output.
19591 \begin_inset CommandInset ref
19593 reference "sec:Tags-for-XHTML"
19600 \begin_layout Description
19601 \begin_inset Flex Code
19604 \begin_layout Plain Layout
19611 \begin_inset Flex Code
19614 \begin_layout Plain Layout
19623 \begin_inset space \thinspace{}
19627 \begin_inset Flex Code
19630 \begin_layout Plain Layout
19636 ] Whether to include the contents of this inset in the strings generated
19637 for the `Outline' pane for all table of contents, regardless of the AddToToc
19639 One would not, for example, want the content of a footnote in a section
19640 header to be included in the TOC displayed in the outline, but one would
19641 normally want the content of a character style displayed.
19642 Default is false: not to include.
19645 \begin_layout Description
19646 \begin_inset Flex Code
19649 \begin_layout Plain Layout
19656 \begin_inset Flex Code
19659 \begin_layout Plain Layout
19668 \begin_inset space \thinspace{}
19672 \begin_inset Flex Code
19675 \begin_layout Plain Layout
19681 ] If this is set to 1 and AddToToc is enabled, the inset adds a summary
19682 of its contents in its item in the table of contents.
19683 Otherwise, only the label appears.
19686 \begin_layout Description
19687 \begin_inset Flex Code
19690 \begin_layout Plain Layout
19699 \begin_inset Flex Code
19702 \begin_layout Plain Layout
19711 \begin_inset space \thinspace{}
19715 \begin_inset Flex Code
19718 \begin_layout Plain Layout
19724 ] As with paragraph styles, see
19725 \begin_inset CommandInset ref
19727 reference "subsec:Paragraph-Styles"
19734 \begin_layout Description
19735 \begin_inset Flex Code
19738 \begin_layout Plain Layout
19744 The font used for the label.
19746 \begin_inset CommandInset ref
19748 reference "subsec:Font-description"
19753 Note that this definition can never appear before
19754 \begin_inset Flex Code
19757 \begin_layout Plain Layout
19763 , lest it be ineffective.
19766 \begin_layout Description
19767 \begin_inset Flex Code
19770 \begin_layout Plain Layout
19777 \begin_inset Flex Code
19780 \begin_layout Plain Layout
19787 \begin_inset Quotes erd
19791 \begin_inset Quotes erd
19794 ] What will be displayed on the button or elsewhere as the inset label.
19796 \begin_inset Flex Code
19799 \begin_layout Plain Layout
19807 \begin_inset Flex Code
19810 \begin_layout Plain Layout
19816 ) modify this label on the fly.
19819 \begin_layout Description
19820 \begin_inset Flex Code
19823 \begin_layout Plain Layout
19829 Language dependent preamble; see
19830 \begin_inset CommandInset ref
19832 reference "subsec:I18n"
19839 \begin_layout Description
19840 \begin_inset Flex Code
19843 \begin_layout Plain Layout
19850 \begin_inset Flex Code
19853 \begin_layout Plain Layout
19859 ] The name of the corresponding \SpecialChar LaTeX
19861 Either the environment or command name.
19864 \begin_layout Description
19865 \begin_inset Flex Code
19868 \begin_layout Plain Layout
19875 \begin_inset Flex Code
19878 \begin_layout Plain Layout
19884 ] The optional parameter for the corresponding
19885 \begin_inset Flex Code
19888 \begin_layout Plain Layout
19894 stuff, including possible bracket pairs like
19895 \begin_inset Flex Code
19898 \begin_layout Plain Layout
19905 This parameter cannot be changed from within \SpecialChar LyX
19907 \begin_inset Flex Code
19910 \begin_layout Plain Layout
19916 for customizable parameters).
19917 It will be output as is after all \SpecialChar LaTeX
19919 \begin_inset Flex Code
19922 \begin_layout Plain Layout
19931 \begin_layout Description
19932 \begin_inset Flex Code
19935 \begin_layout Plain Layout
19942 \begin_inset Flex Code
19945 \begin_layout Plain Layout
19946 Command, Environment, None
19951 ] How the style should be translated into \SpecialChar LaTeX
19956 \begin_layout Plain Layout
19957 \begin_inset Flex Code
19960 \begin_layout Plain Layout
19966 is perhaps a bit misleading, since these rules apply to SGML classes too.
19967 Visit the SGML class files for specific examples.
19976 \begin_layout Description
19977 \begin_inset Flex Code
19980 \begin_layout Plain Layout
19986 means nothing special
19989 \begin_layout Description
19990 \begin_inset Flex Code
19993 \begin_layout Plain Layout
20000 \begin_inset Flex Code
20003 \begin_layout Plain Layout
20010 {\SpecialChar ldots
20019 \begin_layout Description
20020 \begin_inset Flex Code
20023 \begin_layout Plain Layout
20030 \begin_inset Flex Code
20033 \begin_layout Plain Layout
20040 }\SpecialChar ldots
20055 \begin_layout Standard
20056 Putting the last few things together, the \SpecialChar LaTeX
20057 output will be either:
20060 \begin_layout LyX-Code
20063 LatexName[LatexParam]{\SpecialChar ldots
20067 \begin_layout Standard
20071 \begin_layout LyX-Code
20074 begin{LatexName}[LatexParam] \SpecialChar ldots
20080 \begin_layout Standard
20081 depending upon the \SpecialChar LaTeX
20086 \begin_layout Description
20087 \begin_inset Flex Code
20090 \begin_layout Plain Layout
20097 \begin_inset Flex Code
20100 \begin_layout Plain Layout
20106 ] A string that is put at the beginning of the layout content.
20107 A line break in the output can be indicated by
20108 \begin_inset Flex Code
20111 \begin_layout Plain Layout
20120 \begin_layout Description
20121 \begin_inset Flex Code
20124 \begin_layout Plain Layout
20131 \begin_inset Flex Code
20134 \begin_layout Plain Layout
20141 \begin_inset Flex Code
20144 \begin_layout Plain Layout
20151 \begin_inset Flex Code
20154 \begin_layout Plain Layout
20161 \begin_inset Flex Code
20164 \begin_layout Plain Layout
20170 (indicating a dummy definition ending definitions of charstyles, etc).
20171 This entry is required in and is only meaningful for Flex insets.
20172 Among other things, it determines on which menu this inset will appear.
20174 \begin_inset Flex Code
20177 \begin_layout Plain Layout
20184 \begin_inset Flex Code
20187 \begin_layout Plain Layout
20193 will automatically set
20194 \begin_inset Flex Code
20197 \begin_layout Plain Layout
20204 \begin_inset Flex Code
20207 \begin_layout Plain Layout
20215 \begin_inset Flex Code
20218 \begin_layout Plain Layout
20224 can be set to true, or
20225 \begin_inset Flex Code
20228 \begin_layout Plain Layout
20235 \begin_inset Flex Code
20238 \begin_layout Plain Layout
20244 insets by setting it
20249 \begin_inset Flex Code
20252 \begin_layout Plain Layout
20259 \change_inserted -712698321 1555575738
20263 \begin_layout Description
20265 \change_inserted -712698321 1555575844
20266 \begin_inset Flex Code
20269 \begin_layout Plain Layout
20271 \change_inserted -712698321 1555575740
20278 \begin_inset Flex Code
20281 \begin_layout Plain Layout
20283 \change_inserted -712698321 1555575740
20289 A dedicated string for the menu.
20290 You can define an accelerator by appending the respective character to
20291 the string, divided by
20292 \begin_inset Quotes eld
20296 \begin_inset Quotes erd
20300 \begin_inset space \thinspace{}
20304 \begin_inset space \space{}
20308 \begin_inset Quotes eld
20312 \begin_inset Flex Code
20315 \begin_layout Plain Layout
20317 \change_inserted -712698321 1555575781
20324 \begin_inset Quotes erd
20328 This specification is optional.
20329 If it is not given the inset name as specified in the type declaration
20330 will be used instead for the menu.
20335 \begin_layout Description
20336 \begin_inset Flex Code
20339 \begin_layout Plain Layout
20346 \begin_inset Flex Code
20349 \begin_layout Plain Layout
20358 \begin_inset space \thinspace{}
20362 \begin_inset Flex Code
20365 \begin_layout Plain Layout
20371 ] Whether multiple paragraphs are permitted in this inset.
20373 \begin_inset Flex Code
20376 \begin_layout Plain Layout
20382 to the same value and
20383 \begin_inset Flex Code
20386 \begin_layout Plain Layout
20392 to the opposite value.
20393 These can be reset to other values, if they are used
20398 \begin_inset Flex Code
20401 \begin_layout Plain Layout
20411 \begin_layout Description
20412 \begin_inset Flex Code
20415 \begin_layout Plain Layout
20422 \begin_inset Flex Code
20425 \begin_layout Plain Layout
20434 \begin_inset space \thinspace{}
20438 \begin_inset Flex Code
20441 \begin_layout Plain Layout
20447 ] Whether fragile commands in this inset should be
20448 \begin_inset Flex Code
20451 \begin_layout Plain Layout
20464 whether the command should itself be protected.) Default is false.
20465 \change_inserted -712698321 1523633958
20469 \begin_layout Description
20471 \change_inserted -712698321 1552395786
20472 \begin_inset Flex Code
20475 \begin_layout Plain Layout
20477 \change_inserted -712698321 1523633961
20484 \begin_inset Flex Code
20487 \begin_layout Plain Layout
20489 \change_inserted -712698321 1523633958
20498 \begin_inset space \thinspace{}
20502 \begin_inset Flex Code
20505 \begin_layout Plain Layout
20507 \change_inserted -712698321 1523633958
20513 ] This causes macros that contain this inset to be protected with
20514 \begin_inset Flex Code
20517 \begin_layout Plain Layout
20519 \change_inserted -712698321 1523634038
20534 ) if necessary and thus allows (some) verbatim stuff in macros.
20538 \begin_layout Description
20540 \change_inserted -712698321 1552395824
20541 \begin_inset Flex Code
20544 \begin_layout Plain Layout
20546 \change_inserted -712698321 1552395787
20553 \begin_inset Flex Code
20556 \begin_layout Plain Layout
20558 \change_inserted -712698321 1552395787
20567 \begin_inset space \thinspace{}
20571 \begin_inset Flex Code
20574 \begin_layout Plain Layout
20576 \change_inserted -712698321 1552395787
20582 ] Whether specific commands in this inset (such as
20583 \begin_inset Flex Code
20586 \begin_layout Plain Layout
20588 \change_inserted -712698321 1552395787
20597 \begin_inset Flex Code
20600 \begin_layout Plain Layout
20602 \change_inserted -712698321 1552395787
20610 ) should be protected in an
20611 \begin_inset Flex Code
20614 \begin_layout Plain Layout
20616 \change_inserted -712698321 1552395787
20625 This is particularly needed for insets that draw on
20633 commands which parse their content in complex ways.
20639 \begin_layout Description
20640 \begin_inset Flex Code
20643 \begin_layout Plain Layout
20650 \begin_inset Flex Code
20653 \begin_layout Plain Layout
20659 ] Deletes an existing
20660 \begin_inset Flex Code
20663 \begin_layout Plain Layout
20672 \begin_layout Description
20673 \begin_inset Flex Code
20676 \begin_layout Plain Layout
20683 \begin_inset Flex Code
20686 \begin_layout Plain Layout
20693 \begin_inset Flex Code
20696 \begin_layout Plain Layout
20702 that has replaced this
20703 \begin_inset Flex Code
20706 \begin_layout Plain Layout
20713 This is used to rename an
20714 \begin_inset Flex Code
20717 \begin_layout Plain Layout
20723 , while keeping backward compatibility.
20726 \begin_layout Description
20727 \begin_inset Flex Code
20730 \begin_layout Plain Layout
20737 \begin_inset Flex Code
20740 \begin_layout Plain Layout
20749 \begin_inset space \thinspace{}
20753 \begin_inset Flex Code
20756 \begin_layout Plain Layout
20762 ] As with paragraph styles, see
20763 \begin_inset CommandInset ref
20765 reference "subsec:Paragraph-Styles"
20773 \begin_layout Description
20774 \begin_inset Flex Code
20777 \begin_layout Plain Layout
20784 \begin_inset Flex Code
20787 \begin_layout Plain Layout
20796 \begin_inset space \thinspace{}
20800 \begin_inset Flex Code
20803 \begin_layout Plain Layout
20809 ] As with paragraph styles, see
20810 \begin_inset CommandInset ref
20812 reference "subsec:Paragraph-Styles"
20820 \begin_layout Description
20821 \begin_inset Flex Code
20824 \begin_layout Plain Layout
20830 As with paragraph styles, see
20831 \begin_inset CommandInset ref
20833 reference "subsec:Paragraph-Styles"
20840 \begin_layout Description
20841 \begin_inset Flex Code
20844 \begin_layout Plain Layout
20851 \begin_inset Flex Code
20854 \begin_layout Plain Layout
20860 ] The prefix to use when creating labels referring to insets of this type.
20861 This allows the use of formatted references.
20864 \begin_layout Description
20865 \begin_inset Flex Code
20868 \begin_layout Plain Layout
20875 \begin_inset Flex Code
20878 \begin_layout Plain Layout
20884 ] As with paragraph styles, see
20885 \begin_inset CommandInset ref
20887 reference "subsec:Paragraph-Styles"
20894 \begin_layout Description
20895 \begin_inset Flex Code
20898 \begin_layout Plain Layout
20905 \begin_inset Flex Code
20908 \begin_layout Plain Layout
20917 \begin_inset space \thinspace{}
20921 \begin_inset Flex Code
20924 \begin_layout Plain Layout
20930 ] Resets the \SpecialChar LaTeX
20931 arguments of this layout (as defined via the
20932 \begin_inset Flex Code
20935 \begin_layout Plain Layout
20942 This is useful if you have copied a style via
20943 \begin_inset Flex Code
20946 \begin_layout Plain Layout
20952 , but you do not want to inherit its (required and optional) arguments.
20955 \begin_layout Description
20956 \begin_inset Flex Code
20959 \begin_layout Plain Layout
20966 \begin_inset Flex Code
20969 \begin_layout Plain Layout
20976 \begin_inset space \thinspace{}
20980 \begin_inset Flex Code
20983 \begin_layout Plain Layout
20991 ] Whether this inset should use the font of its surrounding environment
20993 Default is false: use the font of the surrounding environment.
20996 \begin_layout Description
20997 \begin_inset Flex Code
21000 \begin_layout Plain Layout
21007 \begin_inset Flex Code
21010 \begin_layout Plain Layout
21016 ] A string that is put at the end of the layout content.
21017 A line break in the output can be indicated by
21018 \begin_inset Flex Code
21021 \begin_layout Plain Layout
21030 \begin_layout Description
21031 \begin_inset Flex Code
21034 \begin_layout Plain Layout
21041 \begin_inset Flex Code
21044 \begin_layout Plain Layout
21051 \begin_inset space \thinspace{}
21055 \begin_inset Flex Code
21058 \begin_layout Plain Layout
21066 ] Allow spell-checking the contents of this inset.
21070 \begin_layout Subsection
21072 \begin_inset CommandInset label
21074 name "subsec:Counters"
21081 \begin_layout Standard
21082 It is necessary to define the counters (
21083 \begin_inset Flex Noun
21086 \begin_layout Plain Layout
21093 \begin_inset Flex Noun
21096 \begin_layout Plain Layout
21102 , \SpecialChar ldots
21103 ) in the text class itself.
21104 The standard counters are defined in the file
21105 \begin_inset Flex Code
21108 \begin_layout Plain Layout
21114 , so you may have to do no more than add
21117 \begin_layout LyX-Code
21118 Input stdcounters.inc
21121 \begin_layout Standard
21122 to your layout file to get them to work.
21123 But if you want to define custom counters, then you can do so.
21124 The counter declaration must begin with:
21127 \begin_layout LyX-Code
21128 Counter CounterName
21131 \begin_layout Standard
21133 \begin_inset Flex Code
21136 \begin_layout Plain Layout
21142 ' is replaced by the name of the counter.
21143 And it must end with
21144 \begin_inset Quotes eld
21148 \begin_inset Flex Code
21151 \begin_layout Plain Layout
21158 \begin_inset Quotes erd
21162 The following parameters can also be used:
21165 \begin_layout Description
21166 \begin_inset Flex Code
21169 \begin_layout Plain Layout
21176 \begin_inset Flex Code
21179 \begin_layout Plain Layout
21185 ] Sets the initial value for the counter, to which it will be reset whenever
21187 Normally, one will want the default, 1.
21190 \begin_layout Description
21191 \begin_inset Flex Code
21194 \begin_layout Plain Layout
21201 \begin_inset Flex Code
21204 \begin_layout Plain Layout
21211 \begin_inset Quotes erd
21215 \begin_inset Quotes erd
21218 ] When defined, this string defines how the counter is displayed.
21219 Setting this value sets
21220 \begin_inset Flex Code
21223 \begin_layout Plain Layout
21224 LabelStringAppendix
21230 The following special constructs can be used in the string:
21234 \begin_layout Itemize
21235 \begin_inset Flex Code
21238 \begin_layout Plain Layout
21246 will be replaced by the expansion of the
21247 \begin_inset Flex Code
21250 \begin_layout Plain Layout
21257 \begin_inset Flex Code
21260 \begin_layout Plain Layout
21261 LabelStringAppendix
21267 \begin_inset Flex Code
21270 \begin_layout Plain Layout
21280 \begin_layout Itemize
21281 counter values can be expressed using \SpecialChar LaTeX
21283 \begin_inset Newline newline
21287 \begin_inset Flex Code
21290 \begin_layout Plain Layout
21307 \begin_inset Flex Code
21310 \begin_layout Plain Layout
21322 \begin_layout Plain Layout
21332 Actually, the situation is a bit more complicated: any
21351 other than those described below will produce arabic numerals.
21352 It would not be surprising to see this change in the future.
21358 \begin_inset Flex Code
21361 \begin_layout Plain Layout
21367 : 1, 2, 3,\SpecialChar ldots
21369 \begin_inset Flex Code
21372 \begin_layout Plain Layout
21378 for lower-case letters: a, b, c, \SpecialChar ldots
21380 \begin_inset Flex Code
21383 \begin_layout Plain Layout
21389 for upper-case letters: A, B, C, \SpecialChar ldots
21391 \begin_inset Flex Code
21394 \begin_layout Plain Layout
21400 for lower-case roman numerals: i, ii, iii, \SpecialChar ldots
21402 \begin_inset Flex Code
21405 \begin_layout Plain Layout
21411 for upper-case roman numerals: I, II, III\SpecialChar ldots
21413 \begin_inset Flex Code
21416 \begin_layout Plain Layout
21422 for hebrew numerals.
21426 \begin_layout Standard
21427 If LabelString is not defined, a default value is constructed as follows:
21428 if the counter has a master counter
21429 \begin_inset Flex Code
21432 \begin_layout Plain Layout
21439 \begin_inset Flex Code
21442 \begin_layout Plain Layout
21449 \begin_inset Newline newline
21453 \begin_inset Flex Code
21456 \begin_layout Plain Layout
21466 is used; otherwise the string
21467 \begin_inset Flex Code
21470 \begin_layout Plain Layout
21481 \begin_layout Description
21482 \begin_inset Flex Code
21485 \begin_layout Plain Layout
21486 LabelStringAppendix
21492 \begin_inset Flex Code
21495 \begin_layout Plain Layout
21502 \begin_inset Quotes erd
21506 \begin_inset Quotes erd
21510 \begin_inset Flex Code
21513 \begin_layout Plain Layout
21519 , but for use in the Appendix.
21522 \begin_layout Description
21523 \begin_inset Flex Code
21526 \begin_layout Plain Layout
21533 \begin_inset Flex Code
21536 \begin_layout Plain Layout
21543 \begin_inset Quotes erd
21547 \begin_inset Quotes erd
21550 ] A format for use with formatted references to this counter.
21551 For example, one might want to have references to section numbers appear
21553 \begin_inset Quotes eld
21557 \begin_inset Quotes erd
21561 The string should contain
21562 \begin_inset Quotes eld
21566 \begin_inset Quotes erd
21570 This will be replaced by the counter number itself.
21571 So, for sections, it would be: Section ##.
21574 \begin_layout Description
21575 \begin_inset Flex Code
21578 \begin_layout Plain Layout
21585 \begin_inset Flex Code
21588 \begin_layout Plain Layout
21595 \begin_inset Quotes erd
21599 \begin_inset Quotes erd
21602 ] If this is set to the name of another counter, the present counter will
21603 be reset every time the other one is increased.
21605 \begin_inset Flex Code
21608 \begin_layout Plain Layout
21615 \begin_inset Flex Code
21618 \begin_layout Plain Layout
21627 \begin_layout Subsection
21629 \begin_inset CommandInset label
21631 name "subsec:Font-description"
21638 \begin_layout Standard
21639 A font description looks like this:
21642 \begin_layout LyX-Code
21659 \begin_layout LyX-Code
21663 \begin_layout LyX-Code
21667 \begin_layout Standard
21668 The following commands are available:
21671 \begin_layout Description
21672 \begin_inset Flex Code
21675 \begin_layout Plain Layout
21682 \begin_inset Flex Code
21685 \begin_layout Plain Layout
21694 \begin_inset Flex Code
21697 \begin_layout Plain Layout
21704 \begin_inset Flex Code
21707 \begin_layout Plain Layout
21714 \begin_inset Flex Code
21717 \begin_layout Plain Layout
21724 \begin_inset Flex Code
21727 \begin_layout Plain Layout
21734 \begin_inset Flex Code
21737 \begin_layout Plain Layout
21744 \begin_inset Flex Code
21747 \begin_layout Plain Layout
21754 \begin_inset Flex Code
21757 \begin_layout Plain Layout
21764 \begin_inset Flex Code
21767 \begin_layout Plain Layout
21774 \begin_inset Flex Code
21777 \begin_layout Plain Layout
21784 \begin_inset Flex Code
21787 \begin_layout Plain Layout
21794 \begin_inset Flex Code
21797 \begin_layout Plain Layout
21804 \begin_inset Flex Code
21807 \begin_layout Plain Layout
21814 \begin_inset Flex Code
21817 \begin_layout Plain Layout
21824 \begin_inset Flex Code
21827 \begin_layout Plain Layout
21834 \begin_inset Flex Code
21837 \begin_layout Plain Layout
21844 \begin_inset Flex Code
21847 \begin_layout Plain Layout
21854 \begin_inset Flex Code
21857 \begin_layout Plain Layout
21864 \begin_inset Flex Code
21867 \begin_layout Plain Layout
21874 \begin_inset Flex Code
21877 \begin_layout Plain Layout
21886 \begin_layout Description
21887 \begin_inset Flex Code
21890 \begin_layout Plain Layout
21897 \begin_inset Flex Code
21900 \begin_layout Plain Layout
21909 \begin_inset Flex Code
21912 \begin_layout Plain Layout
21919 \begin_inset Flex Code
21922 \begin_layout Plain Layout
21931 \begin_layout Description
21932 \begin_inset Flex Code
21935 \begin_layout Plain Layout
21942 \begin_inset Flex Code
21945 \begin_layout Plain Layout
21951 ] Valid arguments are:
21952 \begin_inset Flex Code
21955 \begin_layout Plain Layout
21962 \begin_inset Flex Code
21965 \begin_layout Plain Layout
21972 \begin_inset Flex Code
21975 \begin_layout Plain Layout
21982 \begin_inset Flex Code
21985 \begin_layout Plain Layout
21992 \begin_inset Flex Code
21995 \begin_layout Plain Layout
22002 \begin_inset Flex Code
22005 \begin_layout Plain Layout
22012 \begin_inset Flex Code
22015 \begin_layout Plain Layout
22022 \begin_inset Flex Code
22025 \begin_layout Plain Layout
22032 \begin_inset Flex Code
22035 \begin_layout Plain Layout
22042 \begin_inset Flex Code
22045 \begin_layout Plain Layout
22052 \begin_inset Flex Code
22055 \begin_layout Plain Layout
22062 \begin_inset Flex Code
22065 \begin_layout Plain Layout
22072 Each of these turns on or off the corresponding attribute.
22074 \begin_inset Flex Code
22077 \begin_layout Plain Layout
22083 turns on emphasis, and
22084 \begin_inset Flex Code
22087 \begin_layout Plain Layout
22095 \begin_inset Newline newline
22098 If the latter seems puzzling, remember that the font settings for the present
22099 context are generally inherited from the surrounding context.
22101 \begin_inset Flex Code
22104 \begin_layout Plain Layout
22110 would turn off the emphasis that was anyway in effect, say, in a theorem
22114 \begin_layout Description
22115 \begin_inset Flex Code
22118 \begin_layout Plain Layout
22125 \begin_inset Flex Code
22128 \begin_layout Plain Layout
22137 \begin_inset Flex Code
22140 \begin_layout Plain Layout
22149 \begin_layout Description
22150 \begin_inset Flex Code
22153 \begin_layout Plain Layout
22160 \begin_inset Flex Code
22163 \begin_layout Plain Layout
22172 \begin_inset Flex Code
22175 \begin_layout Plain Layout
22182 \begin_inset Flex Code
22185 \begin_layout Plain Layout
22192 \begin_inset Flex Code
22195 \begin_layout Plain Layout
22204 \begin_layout Description
22205 \begin_inset Flex Code
22208 \begin_layout Plain Layout
22215 \begin_inset Flex Code
22218 \begin_layout Plain Layout
22225 \begin_inset Flex Code
22228 \begin_layout Plain Layout
22235 \begin_inset Flex Code
22238 \begin_layout Plain Layout
22247 \begin_inset Flex Code
22250 \begin_layout Plain Layout
22257 \begin_inset Flex Code
22260 \begin_layout Plain Layout
22267 \begin_inset Flex Code
22270 \begin_layout Plain Layout
22277 \begin_inset Flex Code
22280 \begin_layout Plain Layout
22287 \begin_inset Flex Code
22290 \begin_layout Plain Layout
22299 \begin_layout Subsection
22300 \begin_inset CommandInset label
22302 name "subsec:Citation-engine-description"
22306 Cite engine description
22309 \begin_layout Standard
22311 \begin_inset Flex Code
22314 \begin_layout Plain Layout
22320 blocks, as used mainly in cite engine files (see
22321 \begin_inset CommandInset ref
22323 reference "subsec:Cite-Engine-Files"
22330 ), define the citation commands provided by a specific
22331 \begin_inset Quotes eld
22335 \begin_inset Quotes erd
22339 A cite engine, in \SpecialChar LyX
22340 terms, is way specific way to format citations, using
22341 numbers, author names and/or years.
22342 Currently, \SpecialChar LyX
22343 supports three such engine types, namely:
22346 \begin_layout Enumerate
22347 \begin_inset Flex Code
22350 \begin_layout Plain Layout
22356 : the default Bib\SpecialChar TeX
22357 way to format citations, a simple numeric style (e.
22358 \begin_inset space \thinspace{}
22362 \begin_inset Quotes eld
22366 \begin_inset Quotes erd
22372 \begin_layout Enumerate
22373 \begin_inset Flex Code
22376 \begin_layout Plain Layout
22382 : Harvard-styled citations using author names and publication year (e.
22383 \begin_inset space \thinspace{}
22387 \begin_inset Quotes eld
22390 Smith and Miller (2017b)
22391 \begin_inset Quotes erd
22397 \begin_layout Enumerate
22398 \begin_inset Flex Code
22401 \begin_layout Plain Layout
22407 : extended numerical citations that also allow for author or title next
22409 \begin_inset space \thinspace{}
22413 \begin_inset Quotes eld
22416 Smith and Miller [1]
22417 \begin_inset Quotes erd
22423 \begin_layout Standard
22424 \begin_inset Flex Code
22427 \begin_layout Plain Layout
22433 blocks look like this:
22436 \begin_layout LyX-Code
22440 \begin_layout LyX-Code
22444 \begin_layout LyX-Code
22448 \begin_layout LyX-Code
22449 citeyearpar[][]=parencite*
22452 \begin_layout LyX-Code
22456 \begin_layout LyX-Code
22460 \begin_layout Standard
22462 \begin_inset Flex Code
22465 \begin_layout Plain Layout
22471 denotes the engine.
22472 The individual lines respectively define a cite command or cite command
22473 paradigm supported by this engine.
22474 The line can be as simple as a cite command that is used both to name the
22475 respective \SpecialChar LyX
22476 command and the \SpecialChar LaTeX
22477 output or more complex in order to differentiate
22479 The full syntax is:
22482 \begin_layout LyX-Code
22483 LyXName|alias$*<!_stardesc!_stardesctooltip>[][]=latexcmd
22486 \begin_layout Itemize
22487 \begin_inset Flex Code
22490 \begin_layout Plain Layout
22496 : The name as used in the
22497 \begin_inset Flex Code
22500 \begin_layout Plain Layout
22510 \begin_layout Standard
22511 For portability reasons, we try to use the same name for same-formatted
22512 commands in different cite packages (thus many names stem from natbib,
22513 and thus we need to differentiate a
22514 \begin_inset Flex Code
22517 \begin_layout Plain Layout
22523 sometimes, if the \SpecialChar LaTeX
22524 command names differ).
22528 \begin_layout Itemize
22529 \begin_inset Flex Code
22532 \begin_layout Plain Layout
22538 : a (comma-separated) list of commands that fall back to the given
22539 \begin_inset Flex Code
22542 \begin_layout Plain Layout
22548 in the current engine.
22549 This eases the switch of citation packages and engines.
22551 \begin_inset Flex Code
22554 \begin_layout Plain Layout
22561 \begin_inset Flex Code
22564 \begin_layout Plain Layout
22570 in layout definitions.
22573 \begin_layout Itemize
22574 \begin_inset Flex Code
22577 \begin_layout Plain Layout
22583 : The actual \SpecialChar LaTeX
22584 command that is output.
22588 \begin_layout Standard
22589 \begin_inset Flex Code
22592 \begin_layout Plain Layout
22599 \begin_inset Flex Code
22602 \begin_layout Plain Layout
22610 \begin_inset Flex Code
22613 \begin_layout Plain Layout
22620 \begin_inset Flex Code
22623 \begin_layout Plain Layout
22629 will be output to \SpecialChar LaTeX
22633 \begin_layout Standard
22637 \begin_layout Itemize
22638 Capitalization indicates that the command also has a capitalized form (
22639 \begin_inset Flex Code
22642 \begin_layout Plain Layout
22652 \begin_inset Flex Code
22655 \begin_layout Plain Layout
22664 These usually enforce up-casing of name prefixes (
22669 \begin_inset Formula $\Rightarrow$
22679 \begin_layout Itemize
22681 \begin_inset Flex Code
22684 \begin_layout Plain Layout
22690 indicate the number of optional arguments (there can be 0–2).
22693 \begin_layout Itemize
22695 \begin_inset Flex Code
22698 \begin_layout Plain Layout
22704 indicates there is a starred version of the command (
22705 \begin_inset Flex Code
22708 \begin_layout Plain Layout
22718 \begin_inset Flex Code
22721 \begin_layout Plain Layout
22734 \begin_layout Standard
22735 By default, the starred version means: Output all authors even if it should
22737 \begin_inset Quotes eld
22741 \begin_inset Quotes erd
22745 \begin_inset Flex Code
22748 \begin_layout Plain Layout
22757 \begin_layout Standard
22758 If the star has a different meaning for a given command, it can be specified
22760 \begin_inset Flex Code
22763 \begin_layout Plain Layout
22764 <!_stardesc!_stardesctooltip>
22770 Maximal two translatable macro keywords, marked by the prefix
22771 \begin_inset Flex Code
22774 \begin_layout Plain Layout
22781 The first points to the string that replaces the
22782 \begin_inset Quotes eld
22786 \begin_inset Quotes erd
22789 checkbox label in the citation dialog, the second one to an optional tool
22790 tip for this checkbox.
22794 \begin_layout Standard
22795 Note that these two macros have to be defined in a
22796 \begin_inset Flex Code
22799 \begin_layout Plain Layout
22805 (see next section), dropping the
22806 \begin_inset Flex Code
22809 \begin_layout Plain Layout
22815 from the prefix, like this:
22818 \begin_layout LyX-Code
22819 _stardesc Sta&rred command label
22822 \begin_layout LyX-Code
22823 _stardesctooltip Tooltip for the starred command checkbox.
22827 \begin_layout Itemize
22829 \begin_inset Flex Code
22832 \begin_layout Plain Layout
22838 indicates that this command features
22839 \begin_inset Quotes eld
22842 qualified citation lists
22843 \begin_inset Quotes erd
22851 -specific feature for multi-reference citations where an individual pre-
22852 and postnote can be given to each reference in the list.
22853 Please refer to the
22857 manual for details.
22858 \change_inserted -712698321 1526898670
22862 \begin_layout Standard
22864 \change_inserted -712698321 1526899524
22865 If you want to add a cite command to a cite engine (e.
22866 \begin_inset space \thinspace{}
22869 g., add a specific command provided by a class), you can use
22870 \begin_inset Flex Code
22873 \begin_layout Plain Layout
22875 \change_inserted -712698321 1526898768
22876 AddToCiteEngine <engine type> \SpecialChar ldots
22885 Note that only cite commands that do not exist yet are added.
22890 \begin_layout Subsection
22891 \begin_inset CommandInset label
22893 name "subsec:Citation-format-description"
22897 Cite format description
22900 \begin_layout Standard
22902 \begin_inset Flex Code
22905 \begin_layout Plain Layout
22911 blocks are used to describe how bibliographic information should be displayed,
22912 both within \SpecialChar LyX
22913 itself (in the citation dialog and in tooltips, for example)
22914 and in XHTML output.
22915 Such a block might look like this:
22918 \begin_layout LyX-Code
22922 \begin_layout LyX-Code
22926 \begin_layout LyX-Code
22930 \begin_layout LyX-Code
22934 \begin_layout Standard
22938 \begin_layout LyX-Code
22942 \begin_layout LyX-Code
22946 \begin_layout LyX-Code
22950 \begin_layout LyX-Code
22954 \begin_layout Standard
22955 In the first case, the individual lines define how the bibliographic information
22956 associated with an article or book, respectively, is to be displayed, and
22957 such a definition can be given for any
22958 \begin_inset Quotes els
22962 \begin_inset Quotes ers
22965 that might be present in a Bib\SpecialChar TeX
22968 defines a default format in the source code that will be used if no specific
22969 definition has been given.
22971 predefines several formats in the file
22972 \begin_inset Flex Code
22975 \begin_layout Plain Layout
22981 , which is included in most of \SpecialChar LyX
22982 's document classes.
22985 \begin_layout Standard
22986 In the second case, the lines define how a specific citation command (in
22988 \begin_inset Flex Code
22991 \begin_layout Plain Layout
23000 \begin_inset Flex Code
23003 \begin_layout Plain Layout
23011 ) is to be displayed on the citation inset label, in the citation dialog,
23012 menu or XHTML output.
23014 defines such formats for the citation style variants it supports via
23016 Document\SpecialChar menuseparator
23017 Setting\SpecialChar menuseparator
23018 Bibliography\SpecialChar ldots
23022 \begin_inset Flex Code
23025 \begin_layout Plain Layout
23031 files that are shipped with \SpecialChar LyX
23033 \begin_inset CommandInset ref
23035 reference "subsec:Cite-Engine-Files"
23045 \begin_layout Standard
23046 The definitions use a simple language that allows Bib\SpecialChar TeX
23047 keys to be replaced
23049 Keys should be enclosed in
23050 \begin_inset Flex Code
23053 \begin_layout Plain Layout
23060 \begin_inset Flex Code
23063 \begin_layout Plain Layout
23070 So a simple definition might look like this:
23073 \begin_layout LyX-Code
23075 \begin_inset Quotes eld
23079 \begin_inset Quotes erd
23085 \begin_layout Standard
23086 This would print the author, followed by a comma, followed by the title,
23087 in quotes, followed by a period.
23090 \begin_layout Standard
23091 Of course, sometimes you may want to print a key only if it exists.
23092 This can be done by using a conditional construction, such as:
23093 \begin_inset Flex Code
23096 \begin_layout Plain Layout
23098 \begin_inset space ~
23108 \begin_inset Flex Code
23111 \begin_layout Plain Layout
23117 key exists, then print
23118 \begin_inset Quotes eld
23122 \begin_inset space ~
23126 \begin_inset Quotes erd
23129 followed by the volume key.
23130 It is also possible to have an else clause in the conditional, such as:
23131 \begin_inset Newline newline
23135 \begin_inset Flex Code
23138 \begin_layout Plain Layout
23139 {%author%[[%author%]][[%editor%, ed.]]}
23145 \begin_inset Newline newline
23149 \begin_inset Flex Code
23152 \begin_layout Plain Layout
23158 key is printed if it exists; otherwise, the editor key is printed, followed
23160 \begin_inset Quotes eld
23164 \begin_inset space ~
23168 \begin_inset Quotes erd
23171 Note that the key is again enclosed in
23172 \begin_inset Flex Code
23175 \begin_layout Plain Layout
23181 signs; the entire conditional is enclosed in braces; and the if and else
23182 clauses are enclosed in double brackets,
23183 \begin_inset Quotes eld
23187 \begin_inset Flex Code
23190 \begin_layout Plain Layout
23197 \begin_inset Quotes eld
23201 \begin_inset Quotes eld
23205 \begin_inset Flex Code
23208 \begin_layout Plain Layout
23215 \begin_inset Quotes erd
23219 There must be no space between any of these.
23222 \begin_layout Standard
23223 Next to the entry keys, there are some special keys that can be used for
23224 these conditionals:
23227 \begin_layout Itemize
23228 \begin_inset Flex Code
23231 \begin_layout Plain Layout
23232 {%dialog%[[true]][[false]]}
23238 \begin_inset Quotes eld
23242 \begin_inset Quotes erd
23245 part for dialogs and menus, the
23246 \begin_inset Quotes eld
23250 \begin_inset Quotes erd
23253 part for other contexts (workarea, export)
23256 \begin_layout Itemize
23257 \begin_inset Flex Code
23260 \begin_layout Plain Layout
23261 {%export%[[true]][[false]]}
23267 \begin_inset Quotes eld
23271 \begin_inset Quotes erd
23274 part for export and menus, the
23275 \begin_inset Quotes eld
23279 \begin_inset Quotes erd
23282 part for other contexts (workarea, dialog)
23285 \begin_layout Itemize
23286 \begin_inset Flex Code
23289 \begin_layout Plain Layout
23296 \begin_inset Quotes eld
23300 \begin_inset Quotes erd
23303 part if another item follows (e.
23304 \begin_inset space \thinspace{}
23307 g., in a citation with multiple keys)
23310 \begin_layout Itemize
23311 \begin_inset Flex Code
23314 \begin_layout Plain Layout
23315 {%second%[[true]][[false]]}
23321 \begin_inset Quotes eld
23325 \begin_inset Quotes erd
23328 if this is the second of multiple items, else the
23329 \begin_inset Quotes eld
23333 \begin_inset Quotes erd
23339 \begin_layout Itemize
23340 \begin_inset Flex Code
23343 \begin_layout Plain Layout
23344 {%ifstar%[[true]][[false]]}
23350 \begin_inset Quotes eld
23354 \begin_inset Quotes erd
23357 part for starred citation commands (such as
23358 \begin_inset Flex Code
23361 \begin_layout Plain Layout
23369 ), the false part for unstarred
23372 \begin_layout Itemize
23373 \begin_inset Flex Code
23376 \begin_layout Plain Layout
23377 {%ifentrytype:<type>%[[true]][[false]]}
23383 \begin_inset Quotes eld
23387 \begin_inset Quotes erd
23390 if the current entry type matches
23391 \begin_inset Flex Code
23394 \begin_layout Plain Layout
23400 , else the false part (e.g., in a citation definition:
23401 \begin_inset Flex Code
23404 \begin_layout Plain Layout
23405 {%ifentrytype:book%[[this is a book]][[this is no book]]}
23413 \begin_layout Itemize
23414 \begin_inset Flex Code
23417 \begin_layout Plain Layout
23418 {%ifmultiple:<authortype>%[[true]][[false]]}
23424 \begin_inset Quotes eld
23428 \begin_inset Quotes erd
23431 if the current author type (author, editor etc.) has multiple authors, else
23432 the false part (e.g., in a bibliography definition:
23433 \begin_inset Flex Code
23436 \begin_layout Plain Layout
23437 {%ifmultiple:editor%[[eds.]][[ed.]]}
23445 \begin_layout Itemize
23446 \begin_inset Flex Code
23449 \begin_layout Plain Layout
23450 {%ifqualified%[[true]][[false]]}
23456 \begin_inset Quotes eld
23460 \begin_inset Quotes erd
23463 part if the current citation is a qualified citation list (a specific
23467 format for multi-reference citations), the false part if this is not the
23471 \begin_layout Standard
23473 \begin_inset Flex Code
23476 \begin_layout Plain Layout
23482 prints the author key as it is recorded in the bibliography file.
23483 This might not be what you want, since it will result in a string such
23485 \begin_inset Quotes eld
23488 Miller, Peter and Smith, Mary and White, Jane
23489 \begin_inset Quotes erd
23493 \begin_inset Quotes eld
23497 \begin_inset Quotes erd
23500 is used by Bib\SpecialChar TeX
23501 to delimit authors).
23503 therefore provides some methods to get properly formatted name lists (which
23504 will also get translated).
23505 The following keys are provided:
23508 \begin_layout Enumerate
23509 For name lists with pre- and surname, suitable for the main authors/editors
23510 of a bibliography item.
23512 \begin_inset Flex Code
23515 \begin_layout Plain Layout
23521 part denotes the kind of list that is requested (e.g.
23523 \begin_inset Flex Code
23526 \begin_layout Plain Layout
23536 \begin_layout Itemize
23537 \begin_inset Flex Code
23540 \begin_layout Plain Layout
23541 %abbrvnames:<nametype>%
23546 : Provides a name list which is abbreviated (with
23547 \begin_inset Quotes eld
23551 \begin_inset Quotes erd
23555 \begin_inset Flex Code
23558 \begin_layout Plain Layout
23567 \begin_layout Itemize
23568 \begin_inset Flex Code
23571 \begin_layout Plain Layout
23572 %fullnames:<nametype>%
23577 : Provides a full name list (never abbreviated with
23578 \begin_inset Quotes eld
23582 \begin_inset Quotes erd
23588 \begin_layout Itemize
23589 \begin_inset Flex Code
23592 \begin_layout Plain Layout
23593 %forceabbrvnames:<nametype>%
23598 : Provides a name list which is always abbreviated (with
23599 \begin_inset Quotes eld
23603 \begin_inset Quotes erd
23607 \begin_inset Flex Code
23610 \begin_layout Plain Layout
23620 \begin_layout Enumerate
23621 Alternative name lists with pre- and surname, if the order of pre- and surname
23622 inside the bibliography item differs (as in:
23623 \begin_inset Quotes eld
23626 Miller, John: Some text, in: Mary Smith, ed.: A volume
23627 \begin_inset Quotes erd
23634 \begin_layout Itemize
23635 \begin_inset Flex Code
23638 \begin_layout Plain Layout
23639 %abbrvbynames:<nametype>%
23644 : Provides a name list which is abbreviated (with
23645 \begin_inset Quotes eld
23649 \begin_inset Quotes erd
23653 \begin_inset Flex Code
23656 \begin_layout Plain Layout
23665 \begin_layout Itemize
23666 \begin_inset Flex Code
23669 \begin_layout Plain Layout
23670 %fullbynames:<nametype>%
23675 : Provides a full name list (never abbreviated with
23676 \begin_inset Quotes eld
23680 \begin_inset Quotes erd
23686 \begin_layout Itemize
23687 \begin_inset Flex Code
23690 \begin_layout Plain Layout
23691 %forceabbrvbynames:<nametype>%
23696 : Provides a name list which is always abbreviated (with
23697 \begin_inset Quotes eld
23701 \begin_inset Quotes erd
23705 \begin_inset Flex Code
23708 \begin_layout Plain Layout
23718 \begin_layout Enumerate
23719 And finally name lists which consist of family names only, as used in author-yea
23721 These do not take a
23722 \begin_inset Flex Code
23725 \begin_layout Plain Layout
23731 part, but always return either an author list or, if this does not exist,
23732 an editor list (as common in author-year labels):
23736 \begin_layout Itemize
23737 \begin_inset Flex Code
23740 \begin_layout Plain Layout
23746 : Provides a name list which is abbreviated (with
23747 \begin_inset Quotes eld
23751 \begin_inset Quotes erd
23755 \begin_inset Flex Code
23758 \begin_layout Plain Layout
23767 \begin_layout Itemize
23768 \begin_inset Flex Code
23771 \begin_layout Plain Layout
23777 : Provides a full name list (never abbreviated with
23778 \begin_inset Quotes eld
23782 \begin_inset Quotes erd
23788 \begin_layout Itemize
23789 \begin_inset Flex Code
23792 \begin_layout Plain Layout
23793 %forceabbrvciteauthor%
23798 : Provides a name list which is always abbreviated (with
23799 \begin_inset Quotes eld
23803 \begin_inset Quotes erd
23807 \begin_inset Flex Code
23810 \begin_layout Plain Layout
23820 \begin_layout Standard
23821 The order of pre- and surname in the former two lists can be adjusted by
23825 \begin_layout Itemize
23826 \begin_inset Flex Code
23829 \begin_layout Plain Layout
23830 !firstnameform %surname%, %prename%
23835 (first author in lists of type 1)
23838 \begin_layout Itemize
23839 \begin_inset Flex Code
23842 \begin_layout Plain Layout
23843 !othernameform %surname%, %prename%
23848 (other authors in lists of type 1)
23851 \begin_layout Itemize
23852 \begin_inset Flex Code
23855 \begin_layout Plain Layout
23856 !firstbynameform %prename% %surname%
23861 (first author in lists of type 2)
23864 \begin_layout Itemize
23865 \begin_inset Flex Code
23868 \begin_layout Plain Layout
23869 !otherbynameform %prename% %surname%
23874 (other authors in lists of type 2)
23877 \begin_layout Standard
23878 This allows you to configure namings like
23879 \begin_inset Quotes eld
23882 Miller, Peter and Mary Smith: \SpecialChar ldots
23883 , in: John Doe and Pat Green, eds.:\SpecialChar ldots
23885 \begin_inset Quotes erd
23891 \begin_layout Standard
23892 There is one other piece of syntax available in definitions, which looks
23894 \begin_inset Flex Code
23897 \begin_layout Plain Layout
23904 This defines a piece of formatting information that is to be used when
23906 \begin_inset Quotes eld
23910 \begin_inset Quotes erd
23914 Obviously, we do not want to output HTML tags when writing plain text,
23915 so they should be wrapped in
23916 \begin_inset Quotes eld
23920 \begin_inset Quotes erd
23924 \begin_inset Quotes eld
23928 \begin_inset Quotes erd
23934 \begin_layout Standard
23935 Two special sorts of definitions are also possible in a
23936 \begin_inset Flex Code
23939 \begin_layout Plain Layout
23946 An example of the first would be:
23949 \begin_layout LyX-Code
23951 \begin_inset Quotes eld
23955 \begin_inset Quotes erd
23961 \begin_layout Standard
23962 This is an abbreviation, or macro, and it can be used by treating it as
23964 \begin_inset Flex Code
23967 \begin_layout Plain Layout
23976 \begin_inset Flex Code
23979 \begin_layout Plain Layout
23985 exactly as it would treat its definition.
23986 So, let us issue the obvious
23994 \begin_layout LyX-Code
23998 \begin_layout Standard
23999 or anything like it.
24001 shouldn't go into an infinite loop, but it may go into a long one before
24005 \begin_layout Standard
24006 The second sort of special definition might look like this:
24009 \begin_layout LyX-Code
24013 \begin_layout Standard
24014 This defines a translatable piece of text, which allows relevant parts of
24015 the bibliography or citation to be translated.
24016 It can be included in a definition by treating it as a key:
24017 \begin_inset Flex Code
24020 \begin_layout Plain Layout
24027 Note that there are two different translation paths: All definitions starting
24029 \begin_inset Flex Code
24032 \begin_layout Plain Layout
24038 , such as in the example above, will be translated to the currently active
24039 buffer language (so the translation will match the generated document).
24040 All definitions starting with underscore only will be translated to the
24042 This is the proper translation for strings that only occur in the dialogs
24043 or on buttons, such as this one:
24046 \begin_layout LyX-Code
24047 _addtobib Add to bibliography only.
24050 \begin_layout Standard
24051 Several of these translatable strings are predefined in
24052 \begin_inset Flex Code
24055 \begin_layout Plain Layout
24062 \begin_inset Flex Code
24065 \begin_layout Plain Layout
24072 Note that these are not macros, in the sense just defined.
24073 They will not be expanded.
24076 \begin_layout Standard
24077 So here then is an example that uses several of these features:
24078 \begin_inset VSpace defskip
24084 \begin_layout Standard
24088 !authoredit {%author%[[%author%, ]][[{%editor%[[%editor%, %B_edtext%, ]]}]]}
24091 \begin_layout Standard
24092 \begin_inset VSpace defskip
24095 This defines a macro that prints the author, followed by a comma, if the
24097 \begin_inset Flex Code
24100 \begin_layout Plain Layout
24106 key is defined, or else prints the name of the editor, followed by the
24108 \begin_inset Flex Code
24111 \begin_layout Plain Layout
24117 or its translation (it is by default
24118 \begin_inset Quotes eld
24122 \begin_inset Quotes erd
24126 \begin_inset Flex Code
24129 \begin_layout Plain Layout
24136 Note that this is in fact defined in
24137 \begin_inset Flex Code
24140 \begin_layout Plain Layout
24146 , so you can use it in your own definitions, or re-definitions, if you load
24150 \begin_layout Section
24151 \begin_inset CommandInset label
24153 name "sec:Tags-for-XHTML"
24157 Tags for XHTML output
24160 \begin_layout Standard
24161 As with \SpecialChar LaTeX
24162 or DocBook, the format of \SpecialChar LyX
24163 's XHTML output is also controlled by
24164 layout information.
24165 In general, \SpecialChar LyX
24166 provides sensible defaults and, as mentioned earlier, it will
24167 even construct default CSS style rules from the other layout tags.
24168 For example, \SpecialChar LyX
24169 will attempt to use the information provided in the
24170 \begin_inset Flex Code
24173 \begin_layout Plain Layout
24179 declaration for the Chapter style to write CSS that will appropriately
24180 format chapter headings.
24183 \begin_layout Standard
24184 In many cases, then, you may not have to do anything at all to get acceptable
24185 XHTML output for your own environments, custom insets, and so forth.
24186 But in some cases you will, and so \SpecialChar LyX
24187 provides a number of layout tags that
24188 can be used to customize the XHTML and CSS that are generated.
24191 \begin_layout Standard
24192 Note that there are two tags,
24193 \begin_inset Flex Code
24196 \begin_layout Plain Layout
24203 \begin_inset Flex Code
24206 \begin_layout Plain Layout
24212 that may appear outside style and inset declarations.
24214 \begin_inset CommandInset ref
24216 reference "subsec:General-text-class"
24220 for details on these.
24223 \begin_layout Subsection
24224 \begin_inset CommandInset label
24226 name "subsec:Paragraph-Style-XHTML"
24233 \begin_layout Standard
24234 The sort of XHTML \SpecialChar LyX
24235 outputs for a paragraph depends upon whether we are dealing
24236 with a normal paragraph, a command, or an environment, where this is itself
24237 determined by the contents of the corresponding
24238 \begin_inset Flex Code
24241 \begin_layout Plain Layout
24252 \begin_layout Standard
24253 For a command or normal paragraph, the output XHTML has the following form:
24256 \begin_layout LyX-Code
24260 \begin_inset Quotes erd
24264 \begin_inset Quotes erd
24270 \begin_layout LyX-Code
24274 \begin_inset Quotes erd
24278 \begin_inset Quotes erd
24284 \begin_layout LyX-Code
24287 Contents of the paragraph.
24290 \begin_layout LyX-Code
24296 \begin_layout Standard
24297 The label tags are of course omitted if the paragraph does not have a label.
24300 \begin_layout Standard
24301 For an environment that is not some sort of list, the XHTML takes this form:
24304 \begin_layout LyX-Code
24308 \begin_inset Quotes erd
24312 \begin_inset Quotes erd
24318 \begin_layout LyX-Code
24322 \begin_inset Quotes erd
24326 \begin_inset Quotes erd
24330 \begin_inset Quotes erd
24334 \begin_inset Quotes erd
24337 >Environment Label</labeltag>First paragraph.</itemtag>
24340 \begin_layout LyX-Code
24343 <itemtag>Second paragraph.</itemtag>
24346 \begin_layout LyX-Code
24352 \begin_layout Standard
24353 Note that the label is output only for the first paragraph, as it should
24354 be for a theorem, for example.
24358 \begin_layout Standard
24359 For a list, we have one of these forms:
24362 \begin_layout LyX-Code
24366 \begin_inset Quotes erd
24370 \begin_inset Quotes erd
24376 \begin_layout LyX-Code
24380 \begin_inset Quotes erd
24384 \begin_inset Quotes erd
24388 \begin_inset Quotes erd
24392 \begin_inset Quotes erd
24395 >List Label</labeltag>First item.</itemtag>
24398 \begin_layout LyX-Code
24402 \begin_inset Quotes erd
24406 \begin_inset Quotes erd
24410 \begin_inset Quotes erd
24414 \begin_inset Quotes erd
24417 >List Label</labeltag>Second item.</itemtag>
24420 \begin_layout LyX-Code
24426 \begin_layout LyX-Code
24430 \begin_layout LyX-Code
24434 \begin_inset Quotes erd
24438 \begin_inset Quotes erd
24444 \begin_layout LyX-Code
24448 \begin_inset Quotes erd
24452 \begin_inset Quotes erd
24455 >List Label</labeltag><itemtag attr=
24456 \begin_inset Quotes erd
24460 \begin_inset Quotes erd
24463 >First item.</itemtag>
24466 \begin_layout LyX-Code
24470 \begin_inset Quotes erd
24474 \begin_inset Quotes erd
24477 >List Label</labeltag><itemtag attr=
24478 \begin_inset Quotes erd
24482 \begin_inset Quotes erd
24485 >Second item.</itemtag>
24488 \begin_layout LyX-Code
24494 \begin_layout Standard
24495 Note the different orders of
24496 \begin_inset Flex Code
24499 \begin_layout Plain Layout
24506 \begin_inset Flex Code
24509 \begin_layout Plain Layout
24516 Which order we get depends upon the setting of
24517 \begin_inset Flex Code
24520 \begin_layout Plain Layout
24527 \begin_inset Flex Code
24530 \begin_layout Plain Layout
24536 is false (the default), you get the first of these, with the label within
24537 the item; if true, you get the second, with the label outside the item.
24540 \begin_layout Standard
24541 The specific tags and attributes output for each paragraph type can be controlle
24542 d by means of the layout tags we are about to describe.
24543 As mentioned earlier, however, \SpecialChar LyX
24544 uses sensible defaults for many of these,
24545 so you often may not need to do very much to get good XHTML output.
24546 Think of the available tags as there so you can tweak things to your liking.
24549 \begin_layout Description
24550 \begin_inset Flex Code
24553 \begin_layout Plain Layout
24560 \begin_inset Flex Code
24563 \begin_layout Plain Layout
24569 ] Specifies attribute information to be output with the main tag.
24571 \begin_inset Quotes eld
24575 \begin_inset Flex Code
24578 \begin_layout Plain Layout
24585 \begin_inset Quotes erd
24589 By default, \SpecialChar LyX
24591 \begin_inset Quotes eld
24595 \begin_inset Flex Code
24598 \begin_layout Plain Layout
24605 \begin_inset Quotes erd
24609 \begin_inset Flex Code
24612 \begin_layout Plain Layout
24618 is the \SpecialChar LyX
24619 name of the layout, made lowercase, for example: chapter.
24624 contain any style information.
24626 \begin_inset Flex Code
24629 \begin_layout Plain Layout
24638 \begin_layout Description
24639 \begin_inset Flex Code
24642 \begin_layout Plain Layout
24649 \begin_inset Flex Code
24652 \begin_layout Plain Layout
24662 ] Whether to output the default CSS information \SpecialChar LyX
24663 generates for this layout,
24664 even if additional information is explicitly provided via
24665 \begin_inset Flex Code
24668 \begin_layout Plain Layout
24676 \begin_inset Flex Code
24679 \begin_layout Plain Layout
24685 allows you to alter or augment the generated CSS, rather than to override
24688 \begin_inset Flex Code
24691 \begin_layout Plain Layout
24700 \begin_layout Description
24701 \begin_inset Flex Code
24704 \begin_layout Plain Layout
24711 \begin_inset Flex Code
24714 \begin_layout Plain Layout
24720 ] The tag to be used for individual paragraphs of environments, replacing
24722 \begin_inset Flex Code
24725 \begin_layout Plain Layout
24731 in the examples above.
24733 \begin_inset Flex Code
24736 \begin_layout Plain Layout
24745 \begin_layout Description
24746 \begin_inset Flex Code
24749 \begin_layout Plain Layout
24756 \begin_inset Flex Code
24759 \begin_layout Plain Layout
24765 ] Attributes for the item tag.
24767 \begin_inset Newline newline
24771 \begin_inset Quotes eld
24775 \begin_inset Flex Code
24778 \begin_layout Plain Layout
24779 class=`layoutname_item'
24785 \begin_inset Quotes erd
24793 contain any style information.
24795 \begin_inset Flex Code
24798 \begin_layout Plain Layout
24807 \begin_layout Description
24808 \begin_inset Flex Code
24811 \begin_layout Plain Layout
24818 \begin_inset Flex Code
24821 \begin_layout Plain Layout
24827 ] The tag to be used for paragraph and item labels, replacing
24828 \begin_inset Flex Code
24831 \begin_layout Plain Layout
24837 in the examples above.
24839 \begin_inset Flex Code
24842 \begin_layout Plain Layout
24849 \begin_inset Flex Code
24852 \begin_layout Plain Layout
24859 \begin_inset Flex Code
24862 \begin_layout Plain Layout
24869 \begin_inset Flex Code
24872 \begin_layout Plain Layout
24873 Centered_Top_Environment
24878 , in which case it defaults to
24879 \begin_inset Flex Code
24882 \begin_layout Plain Layout
24891 \begin_layout Description
24892 \begin_inset Flex Code
24895 \begin_layout Plain Layout
24902 \begin_inset Flex Code
24905 \begin_layout Plain Layout
24911 ] Attributes for the label tag.
24913 \begin_inset Newline newline
24917 \begin_inset Quotes eld
24921 \begin_inset Flex Code
24924 \begin_layout Plain Layout
24925 class=`layoutname_label'
24931 \begin_inset Quotes erd
24939 contain any style information.
24941 \begin_inset Flex Code
24944 \begin_layout Plain Layout
24953 \begin_layout Description
24954 \begin_inset Flex Code
24957 \begin_layout Plain Layout
24964 \begin_inset Flex Code
24967 \begin_layout Plain Layout
24977 ] Meaningful only for list-like environments, this tag controls whether
24978 the label tag is output before or inside the item tag.
24979 This is used, for example, in the description environment, where we want
24981 \begin_inset Flex Code
24984 \begin_layout Plain Layout
24985 <dt>\SpecialChar ldots
24986 </dt><dd>\SpecialChar ldots
24994 \begin_inset Flex Code
24997 \begin_layout Plain Layout
25003 : The label tag is output inside the item tag.
25006 \begin_layout Description
25007 \begin_inset Flex Code
25010 \begin_layout Plain Layout
25016 Information to be output in the
25017 \begin_inset Flex Code
25020 \begin_layout Plain Layout
25026 section when this style is used.
25027 This might, for example, be used to include a
25028 \begin_inset Flex Code
25031 \begin_layout Plain Layout
25038 \begin_inset Flex Code
25041 \begin_layout Plain Layout
25050 \begin_layout Description
25051 \begin_inset Flex Code
25054 \begin_layout Plain Layout
25060 CSS style information to be included when this style is used.
25061 Note that this will automatically be wrapped in a layout-generated
25062 \begin_inset Flex Code
25065 \begin_layout Plain Layout
25071 block, so only the CSS itself need be included.
25073 \begin_inset Flex Code
25076 \begin_layout Plain Layout
25085 \begin_layout Description
25086 \begin_inset Flex Code
25089 \begin_layout Plain Layout
25096 \begin_inset Flex Code
25099 \begin_layout Plain Layout
25105 ] The tag to be used for the main label, replacing
25106 \begin_inset Flex Code
25109 \begin_layout Plain Layout
25115 in the examples above.
25117 \begin_inset Flex Code
25120 \begin_layout Plain Layout
25129 \begin_layout Description
25130 \begin_inset Flex Code
25133 \begin_layout Plain Layout
25140 \begin_inset Flex Code
25143 \begin_layout Plain Layout
25153 ] Marks this style as the one to be used to generate the
25154 \begin_inset Flex Code
25157 \begin_layout Plain Layout
25163 tag for the XHTML file.
25164 By default, it is false.
25166 \begin_inset Flex Code
25169 \begin_layout Plain Layout
25175 file sets it to true for the
25176 \begin_inset Flex Code
25179 \begin_layout Plain Layout
25189 \begin_layout Subsection
25193 \begin_layout Standard
25194 The XHTML output of insets can also be controlled by information in layout
25199 \begin_layout Plain Layout
25200 At present, this is true only for
25201 \begin_inset Quotes eld
25205 \begin_inset Quotes erd
25208 insets (insets you can type into) and is not true for
25209 \begin_inset Quotes eld
25213 \begin_inset Quotes erd
25216 insets (insets that are associated with dialog boxes).
25221 Here, too, \SpecialChar LyX
25222 tries to provide sensible defaults, and it constructs default
25224 But everything can be customized.
25227 \begin_layout Standard
25228 The XHTML \SpecialChar LyX
25229 outputs for an inset has the following form:
25232 \begin_layout LyX-Code
25234 \begin_inset Quotes erd
25238 \begin_inset Quotes erd
25244 \begin_layout LyX-Code
25245 <labeltag>Label</labeltag>
25248 \begin_layout LyX-Code
25250 \begin_inset Quotes erd
25254 \begin_inset Quotes erd
25257 >Contents of the inset.</innertag>
25260 \begin_layout LyX-Code
25264 \begin_layout Standard
25265 If the inset permits multiple paragraphs—that is, if
25266 \begin_inset Flex Code
25269 \begin_layout Plain Layout
25275 is true—then the contents of the inset will itself be output as paragraphs
25276 formatted according to the styles used for those paragraphs (standard,
25277 quote, and the like).
25278 The label tag is of course omitted if the paragraph does not have a label
25279 and, at present, is always
25280 \begin_inset Flex Code
25283 \begin_layout Plain Layout
25290 The inner tag is optional and, by default, does not appear.
25293 \begin_layout Standard
25294 The specific tags and attributes output for each inset can be controlled
25295 by means of the following layout tags.
25298 \begin_layout Description
25299 \begin_inset Flex Code
25302 \begin_layout Plain Layout
25309 \begin_inset Flex Code
25312 \begin_layout Plain Layout
25318 ] Specifies attribute information to be output with the main tag.
25320 \begin_inset Quotes eld
25324 \begin_inset Flex Code
25327 \begin_layout Plain Layout
25328 class=`myinset' onclick=`\SpecialChar ldots
25335 \begin_inset Quotes erd
25339 By default, \SpecialChar LyX
25341 \begin_inset Quotes eld
25345 \begin_inset Flex Code
25348 \begin_layout Plain Layout
25355 \begin_inset Quotes erd
25359 \begin_inset Flex Code
25362 \begin_layout Plain Layout
25368 is the \SpecialChar LyX
25369 name of the inset, made lowercase and with non-alphanumeric characters
25370 converted to underscores, for example: footnote.
25373 \begin_layout Description
25374 \begin_inset Flex Code
25377 \begin_layout Plain Layout
25384 \begin_inset Flex Code
25387 \begin_layout Plain Layout
25397 ] Whether to output the default CSS information \SpecialChar LyX
25398 generates for this layout,
25399 even if additional information is explicitly provided via
25400 \begin_inset Flex Code
25403 \begin_layout Plain Layout
25411 \begin_inset Flex Code
25414 \begin_layout Plain Layout
25420 allows you to alter or augment the generated CSS, rather than to override
25425 \begin_layout Description
25426 \begin_inset Flex Code
25429 \begin_layout Plain Layout
25436 \begin_inset Flex Code
25439 \begin_layout Plain Layout
25445 ] Attributes for the inner tag.
25447 \begin_inset Newline newline
25451 \begin_inset Quotes eld
25455 \begin_inset Flex Code
25458 \begin_layout Plain Layout
25459 class=`insetname_inner'
25465 \begin_inset Quotes erd
25471 \begin_layout Description
25472 \begin_inset Flex Code
25475 \begin_layout Plain Layout
25482 \begin_inset Flex Code
25485 \begin_layout Plain Layout
25491 ] The inner tag, replacing
25492 \begin_inset Flex Code
25495 \begin_layout Plain Layout
25501 in the examples above.
25502 By default, there is none.
25505 \begin_layout Description
25506 \begin_inset Flex Code
25509 \begin_layout Plain Layout
25516 \begin_inset Flex Code
25519 \begin_layout Plain Layout
25527 ] Whether this inset represents a standalone block of text (such as a footnote)
25528 or instead represents material that is included in the surrounding text
25529 (such as a branch).
25533 \begin_layout Description
25534 \begin_inset Flex Code
25537 \begin_layout Plain Layout
25544 \begin_inset Flex Code
25547 \begin_layout Plain Layout
25553 ] A label for this inset, possibly including a reference to a counter.
25554 For example, for footnote, it might be:
25555 \begin_inset Flex Code
25558 \begin_layout Plain Layout
25567 This is optional, and there is no default.
25570 \begin_layout Description
25571 \begin_inset Flex Code
25574 \begin_layout Plain Layout
25580 Information to be output in the
25581 \begin_inset Flex Code
25584 \begin_layout Plain Layout
25590 section when this style is used.
25591 This might, for example, be used to include a
25592 \begin_inset Flex Code
25595 \begin_layout Plain Layout
25602 \begin_inset Flex Code
25605 \begin_layout Plain Layout
25614 \begin_layout Description
25615 \begin_inset Flex Code
25618 \begin_layout Plain Layout
25624 CSS style information to be included when this style is used.
25625 Note that this will automatically be wrapped in a layout-generated
25626 \begin_inset Flex Code
25629 \begin_layout Plain Layout
25635 block, so only the CSS itself need be included.
25638 \begin_layout Description
25639 \begin_inset Flex Code
25642 \begin_layout Plain Layout
25649 \begin_inset Flex Code
25652 \begin_layout Plain Layout
25658 ] The tag to be used for the main label, replacing
25659 \begin_inset Flex Code
25662 \begin_layout Plain Layout
25668 in the examples above.
25669 The default depends upon the setting of
25670 \begin_inset Flex Code
25673 \begin_layout Plain Layout
25680 \begin_inset Flex Code
25683 \begin_layout Plain Layout
25689 is true, the default is
25690 \begin_inset Flex Code
25693 \begin_layout Plain Layout
25699 ; if it is false, the default is
25700 \begin_inset Flex Code
25703 \begin_layout Plain Layout
25712 \begin_layout Subsection
25716 \begin_layout Standard
25717 The XHTML output for floats too can be controlled by layout information.
25718 The output has the following form:
25721 \begin_layout LyX-Code
25723 \begin_inset Quotes erd
25727 \begin_inset Quotes erd
25733 \begin_layout LyX-Code
25734 Contents of the float.
25737 \begin_layout LyX-Code
25741 \begin_layout Standard
25742 The caption, if there is one, is a separate inset and will be output as
25744 Its appearance can be controlled via the InsetLayout for caption insets.
25748 \begin_layout Description
25749 \begin_inset Flex Code
25752 \begin_layout Plain Layout
25759 \begin_inset Flex Code
25762 \begin_layout Plain Layout
25768 ] Specifies attribute information to be output with the main tag.
25770 \begin_inset Quotes eld
25774 \begin_inset Flex Code
25777 \begin_layout Plain Layout
25778 class=`myfloat' onclick=`\SpecialChar ldots
25785 \begin_inset Quotes erd
25789 By default, \SpecialChar LyX
25791 \begin_inset Quotes eld
25795 \begin_inset Flex Code
25798 \begin_layout Plain Layout
25799 class=`float float-floattype'
25805 \begin_inset Quotes erd
25809 \begin_inset Flex Code
25812 \begin_layout Plain Layout
25818 is \SpecialChar LyX
25819 's name for this type of float, as determined by the float declaration
25821 \begin_inset CommandInset ref
25823 reference "subsec:Floats"
25827 ), though made lowercase and with non-alphanumeric characters converted
25828 to underscores, for example: float-table.
25831 \begin_layout Description
25832 \begin_inset Flex Code
25835 \begin_layout Plain Layout
25841 CSS style information to be included when this float is used.
25842 Note that this will automatically be wrapped in a layout-generated
25843 \begin_inset Flex Code
25846 \begin_layout Plain Layout
25852 block, so only the CSS itself need be included.
25855 \begin_layout Description
25856 \begin_inset Flex Code
25859 \begin_layout Plain Layout
25866 \begin_inset Flex Code
25869 \begin_layout Plain Layout
25875 ] The tag to be used for this float, replacing
25876 \begin_inset Quotes eld
25880 \begin_inset Flex Code
25883 \begin_layout Plain Layout
25890 \begin_inset Quotes erd
25893 in the example above.
25895 \begin_inset Flex Code
25898 \begin_layout Plain Layout
25904 and will rarely need changing.
25907 \begin_layout Subsection
25908 Bibliography formatting
25911 \begin_layout Standard
25912 The bibliography can be formatted using
25913 \begin_inset Flex Code
25916 \begin_layout Plain Layout
25924 \begin_inset CommandInset ref
25926 reference "subsec:Citation-format-description"
25933 \begin_layout Subsection
25938 \begin_layout Standard
25939 We have several times mentioned that \SpecialChar LyX
25940 will generate default CSS style rules
25941 for both insets and paragraph styles, based upon the other layout information
25943 In this section, we shall say a word about which layout information \SpecialChar LyX
25948 \begin_layout Standard
25949 At present, \SpecialChar LyX
25950 auto-generates CSS only for font information, making use of
25952 \begin_inset Flex Code
25955 \begin_layout Plain Layout
25962 \begin_inset Flex Code
25965 \begin_layout Plain Layout
25972 \begin_inset Flex Code
25975 \begin_layout Plain Layout
25982 \begin_inset Flex Code
25985 \begin_layout Plain Layout
25992 \begin_inset Flex Code
25995 \begin_layout Plain Layout
26002 \begin_inset CommandInset ref
26004 reference "subsec:Font-description"
26009 The translation is mostly straightforward and obvious.
26011 \begin_inset Quotes eld
26015 \begin_inset Flex Code
26018 \begin_layout Plain Layout
26025 \begin_inset Quotes erd
26029 \begin_inset Quotes eld
26033 \begin_inset Flex Code
26036 \begin_layout Plain Layout
26037 font-family: sans-serif;
26043 \begin_inset Quotes erd
26047 The correspondence of \SpecialChar LyX
26048 sizes and CSS sizes is a little less obvious but
26049 nonetheless intuitive.
26051 \begin_inset Flex Code
26054 \begin_layout Plain Layout
26061 \begin_inset Flex URL
26064 \begin_layout Plain Layout
26074 \begin_layout Chapter
26075 Including External Material
26076 \begin_inset CommandInset label
26078 name "chap:Including-External-Material"
26085 \begin_layout Standard
26086 \begin_inset Box Shadowbox
26096 height_special "totalheight"
26101 backgroundcolor "none"
26104 \begin_layout Plain Layout
26105 WARNING: This portion of the documentation has not been updated for some
26107 We certainly hope that it is still accurate, but there are no guarantees.
26115 \begin_layout Standard
26116 The use of material from sources external to \SpecialChar LyX
26117 is covered in detail in the
26123 This part of the manual covers what needs to happen behind the scenes for
26124 new sorts of material to be included.
26127 \begin_layout Section
26131 \begin_layout Standard
26132 The external material feature is based on the concept of a
26137 A template is a specification of how \SpecialChar LyX
26138 should interface with a certain kind
26140 As bundled, \SpecialChar LyX
26141 comes with predefined templates for Xfig figures, various
26142 raster format images, chess diagrams, and LilyPond music notation.
26143 You can check the actual list by using the menu
26144 \begin_inset Flex Noun
26147 \begin_layout Plain Layout
26148 Insert\SpecialChar menuseparator
26149 File\SpecialChar menuseparator
26156 Furthermore, it is possible to roll your own template to support a specific
26158 Later we'll describe in more detail what is involved, and hopefully you
26159 will submit all the templates you create so we can include them in a later
26164 \begin_layout Standard
26165 Another basic idea of the external material feature is to distinguish between
26166 the original file that serves as a base for final material and the produced
26167 file that is included in your exported or printed document.
26168 For example, consider the case of a figure produced with
26169 \begin_inset Flex Code
26172 \begin_layout Plain Layout
26179 The Xfig application itself works on an original file with the
26180 \begin_inset Flex Code
26183 \begin_layout Plain Layout
26190 Within Xfig, you create and change your figure, and when you are done,
26192 \begin_inset Flex Code
26195 \begin_layout Plain Layout
26202 When you want to include the figure in your document, you invoke
26203 \begin_inset Flex Code
26206 \begin_layout Plain Layout
26212 in order to create a PostScript file that can readily be included in your
26216 \begin_inset Flex Code
26219 \begin_layout Plain Layout
26225 file is the original file, and the PostScript file is the produced file.
26228 \begin_layout Standard
26229 This distinction is important in order to allow updating of the material
26230 while you are in the process of writing the document.
26231 Furthermore, it provides us with the flexibility that is needed to support
26232 multiple export formats.
26233 For instance, in the case of a plain text file, it is not exactly an award-winn
26234 ing idea to include the figure as raw PostScript.
26235 Instead, you would either prefer to just include a reference to the figure
26236 or try to invoke some graphics to ASCII converter to make the final result
26237 look similar to the real graphics.
26238 The external material management allows you to do this, because it is parametri
26239 zed on the different export formats that \SpecialChar LyX
26243 \begin_layout Standard
26244 Besides supporting the production of different products according to the
26245 exported format, it supports tight integration with editing and viewing
26247 In the case of an Xfig figure, you are able to invoke Xfig on the original
26248 file with a single click from within the external material dialog in \SpecialChar LyX
26250 and also preview the produced PostScript file with Ghostview with another
26252 No more fiddling around with the command line and/or file browsers to locate
26253 and manipulate the original or produced files.
26254 In this way, you are finally able to take full advantage of the many different
26255 applications that are relevant to use when you write your documents, and
26256 ultimately be more productive.
26259 \begin_layout Section
26260 The external template configuration files
26263 \begin_layout Standard
26264 It is relatively easy to add custom external template definitions to \SpecialChar LyX
26266 However, be aware that doing this in an careless manner most probably
26270 introduce an easily exploitable security hole.
26271 So before you do this, please read the discussion about security in
26272 \begin_inset CommandInset ref
26274 reference "sec:Security-discussion"
26281 \begin_layout Standard
26282 Having said that, we encourage you to submit any interesting templates that
26287 \begin_layout Standard
26288 The external templates are defined in the
26289 \begin_inset Flex Code
26292 \begin_layout Plain Layout
26298 files that are stored in the
26299 \begin_inset Flex Code
26302 \begin_layout Plain Layout
26303 LyXDir/lib/xtemplates/
26309 Each template is defined in a file of its own.
26310 You can place your own templates in
26311 \begin_inset Flex Code
26314 \begin_layout Plain Layout
26315 UserDir/xtemplates/
26320 or copy existing templates to that directory in order to modify them.
26323 \begin_layout Standard
26324 A typical template looks like this:
26327 \begin_layout LyX-Code
26331 \begin_layout LyX-Code
26332 GuiName "XFig: $$AbsOrRelPathParent$$Basename"
26335 \begin_layout LyX-Code
26339 \begin_layout LyX-Code
26343 \begin_layout LyX-Code
26347 \begin_layout LyX-Code
26351 \begin_layout LyX-Code
26355 \begin_layout LyX-Code
26356 AutomaticProduction true
26359 \begin_layout LyX-Code
26363 \begin_layout LyX-Code
26367 \begin_layout LyX-Code
26371 \begin_layout LyX-Code
26372 TransformCommand Rotate RotationLatexCommand
26375 \begin_layout LyX-Code
26376 TransformCommand Resize ResizeLatexCommand
26379 \begin_layout LyX-Code
26380 Product "$$RotateFront$$ResizeFront
26383 \begin_layout LyX-Code
26388 input{$$AbsOrRelPathMaster$$Basename.pstex_t}
26391 \begin_layout LyX-Code
26392 $$ResizeBack$$RotateBack"
26395 \begin_layout LyX-Code
26399 \begin_layout LyX-Code
26400 UpdateResult "$$AbsPath$$Basename.pstex_t"
26403 \begin_layout LyX-Code
26404 Requirement "graphicx"
26407 \begin_layout LyX-Code
26408 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
26411 \begin_layout LyX-Code
26412 ReferencedFile latex "$$AbsPath$$Basename.eps"
26415 \begin_layout LyX-Code
26416 ReferencedFile dvi "$$AbsPath$$Basename.eps"
26419 \begin_layout LyX-Code
26423 \begin_layout LyX-Code
26427 \begin_layout LyX-Code
26428 TransformCommand Rotate RotationLatexCommand
26431 \begin_layout LyX-Code
26432 TransformCommand Resize ResizeLatexCommand
26435 \begin_layout LyX-Code
26436 Product "$$RotateFront$$ResizeFront
26439 \begin_layout LyX-Code
26444 input{$$AbsOrRelPathMaster$$Basename.pdftex_t}
26447 \begin_layout LyX-Code
26448 $$ResizeBack$$RotateBack"
26451 \begin_layout LyX-Code
26452 UpdateFormat pdftex
26455 \begin_layout LyX-Code
26456 UpdateResult "$$AbsPath$$Basename.pdftex_t"
26459 \begin_layout LyX-Code
26460 Requirement "graphicx"
26463 \begin_layout LyX-Code
26464 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pdftex_t"
26467 \begin_layout LyX-Code
26468 ReferencedFile latex "$$AbsPath$$Basename.pdf"
26471 \begin_layout LyX-Code
26475 \begin_layout LyX-Code
26479 \begin_layout LyX-Code
26480 Product "[XFig: $$FName]"
26483 \begin_layout LyX-Code
26487 \begin_layout LyX-Code
26491 \begin_layout LyX-Code
26492 Product "<graphic fileref=
26494 "$$AbsOrRelPathMaster$$Basename.eps
26499 \begin_layout LyX-Code
26503 \begin_layout LyX-Code
26507 \begin_layout LyX-Code
26508 UpdateResult "$$AbsPath$$Basename.eps"
26511 \begin_layout LyX-Code
26512 ReferencedFile docbook "$$AbsPath$$Basename.eps"
26515 \begin_layout LyX-Code
26516 ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
26519 \begin_layout LyX-Code
26523 \begin_layout LyX-Code
26527 \begin_layout Standard
26528 As you can see, the template is enclosed in
26529 \begin_inset Flex Code
26532 \begin_layout Plain Layout
26540 \begin_inset Flex Code
26543 \begin_layout Plain Layout
26550 It contains a header specifying some general settings and, for each supported
26551 primary document file format, a section
26552 \begin_inset Flex Code
26555 \begin_layout Plain Layout
26563 \begin_inset Flex Code
26566 \begin_layout Plain Layout
26575 \begin_layout Subsection
26576 The template header
26579 \begin_layout Description
26580 \begin_inset Flex Code
26583 \begin_layout Plain Layout
26584 AutomaticProduction
26585 \begin_inset space ~
26593 Whether the file represented by the template must be generated by \SpecialChar LyX
26595 This command must occur exactly once.
26598 \begin_layout Description
26599 \begin_inset Flex Code
26602 \begin_layout Plain Layout
26604 \begin_inset space ~
26612 A glob pattern that is used in the file dialog to filter out the desired
26614 If there is more than one possible file extension (e.
26615 \begin_inset space \thinspace{}
26619 \begin_inset space \space{}
26623 \begin_inset Flex Code
26626 \begin_layout Plain Layout
26633 \begin_inset Flex Code
26636 \begin_layout Plain Layout
26642 ), use something like
26643 \begin_inset Flex Code
26646 \begin_layout Plain Layout
26653 This command must occur exactly once.
26656 \begin_layout Description
26657 \begin_inset Flex Code
26660 \begin_layout Plain Layout
26662 \begin_inset space ~
26670 The text that is displayed on the button.
26671 This command must occur exactly once.
26674 \begin_layout Description
26675 \begin_inset Flex Code
26678 \begin_layout Plain Layout
26680 \begin_inset space ~
26684 \begin_inset space ~
26692 The help text that is used in the External dialog.
26693 Provide enough information to explain to the user just what the template
26694 can provide him with.
26695 This command must occur exactly once.
26698 \begin_layout Description
26699 \begin_inset Flex Code
26702 \begin_layout Plain Layout
26704 \begin_inset space ~
26712 The file format of the original file.
26713 This must be the name of a format that is known to \SpecialChar LyX
26715 \begin_inset CommandInset ref
26717 reference "sec:Formats"
26723 \begin_inset Quotes eld
26727 \begin_inset Flex Code
26730 \begin_layout Plain Layout
26737 \begin_inset Quotes erd
26740 if the template can handle original files of more than one format.
26742 will attempt to interrogate the file itself in order to deduce its format
26744 This command must occur exactly once.
26747 \begin_layout Description
26748 \begin_inset Flex Code
26751 \begin_layout Plain Layout
26753 \begin_inset space ~
26761 A unique name for the template.
26762 It must not contain substitution macros (see below).
26765 \begin_layout Description
26766 \begin_inset Flex Code
26769 \begin_layout Plain Layout
26771 \begin_inset space ~
26774 Rotate|Resize|Clip|Extra
26779 This command specifies which transformations are supported by this template.
26780 It may occur zero or more times.
26781 This command enables the corresponding tabs in the external dialog.
26783 \begin_inset Flex Code
26786 \begin_layout Plain Layout
26792 command must have either a corresponding
26793 \begin_inset Flex Code
26796 \begin_layout Plain Layout
26803 \begin_inset Flex Code
26806 \begin_layout Plain Layout
26813 \begin_inset Flex Code
26816 \begin_layout Plain Layout
26823 Otherwise the transformation will not be supported by that format.
26826 \begin_layout Subsection
26830 \begin_layout Description
26831 \begin_inset Flex Code
26834 \begin_layout Plain Layout
26836 \begin_inset space ~
26839 LaTeX|PDFLaTeX|PlainText|DocBook|XHTML
26844 The primary document file format that this format definition is for.
26845 Not every template has a sensible representation in all document file formats.
26846 Please define nevertheless a
26847 \begin_inset Flex Code
26850 \begin_layout Plain Layout
26856 section for all templates.
26857 Use a dummy text when no representation is available.
26858 Then you can at least see a reference to the external material in the exported
26862 \begin_layout Description
26863 \begin_inset Flex Code
26866 \begin_layout Plain Layout
26868 \begin_inset space ~
26872 \begin_inset space ~
26880 This command defines an additional macro
26881 \begin_inset Flex Code
26884 \begin_layout Plain Layout
26890 for substitution in
26891 \begin_inset Flex Code
26894 \begin_layout Plain Layout
26902 \begin_inset Flex Code
26905 \begin_layout Plain Layout
26911 itself may contain substitution macros.
26912 The advantage over using
26913 \begin_inset Flex Code
26916 \begin_layout Plain Layout
26923 \begin_inset Flex Code
26926 \begin_layout Plain Layout
26932 is that the substituted value of
26933 \begin_inset Flex Code
26936 \begin_layout Plain Layout
26942 is sanitized so that it is a valid optional argument in the document format.
26943 This command may occur zero or more times.
26946 \begin_layout Description
26947 \begin_inset Flex Code
26950 \begin_layout Plain Layout
26952 \begin_inset space ~
26960 The text that is inserted in the exported document.
26961 This is actually the most important command and can be quite complex.
26962 This command must occur exactly once.
26965 \begin_layout Description
26966 \begin_inset Flex Code
26969 \begin_layout Plain Layout
26971 \begin_inset space ~
26979 This command specifies a preamble snippet that will be included in the
26982 It has to be defined using
26983 \begin_inset Flex Code
26986 \begin_layout Plain Layout
26994 \begin_inset Flex Code
26997 \begin_layout Plain Layout
27004 This command may occur zero or more times.
27007 \begin_layout Description
27008 \begin_inset Flex Code
27011 \begin_layout Plain Layout
27013 \begin_inset space ~
27017 \begin_inset space ~
27025 This command denotes files that are created by the conversion process and
27026 are needed for a particular export format.
27027 If the filename is relative, it is interpreted relative to the master document.
27028 This command may be given zero or more times.
27031 \begin_layout Description
27032 \begin_inset Flex Code
27035 \begin_layout Plain Layout
27037 \begin_inset space ~
27045 The name of a required \SpecialChar LaTeX
27047 The package is included via
27048 \begin_inset Flex Code
27051 \begin_layout Plain Layout
27059 in the \SpecialChar LaTeX
27061 This command may occur zero or more times.
27064 \begin_layout Description
27065 \begin_inset Flex Code
27068 \begin_layout Plain Layout
27070 \begin_inset space ~
27074 \begin_inset space ~
27077 RotationLatexCommand
27082 This command specifies that the built in \SpecialChar LaTeX
27083 command should be used for rotation.
27084 This command may occur once or not at all.
27087 \begin_layout Description
27088 \begin_inset Flex Code
27091 \begin_layout Plain Layout
27093 \begin_inset space ~
27097 \begin_inset space ~
27105 This command specifies that the built in \SpecialChar LaTeX
27106 command should be used for resizing.
27107 This command may occur once or not at all.
27110 \begin_layout Description
27111 \begin_inset Flex Code
27114 \begin_layout Plain Layout
27116 \begin_inset space ~
27120 \begin_inset space ~
27123 RotationLatexOption
27128 This command specifies that rotation is done via an optional argument.
27129 This command may occur once or not at all.
27132 \begin_layout Description
27133 \begin_inset Flex Code
27136 \begin_layout Plain Layout
27138 \begin_inset space ~
27142 \begin_inset space ~
27150 This command specifies that resizing is done via an optional argument.
27151 This command may occur once or not at all.
27154 \begin_layout Description
27155 \begin_inset Flex Code
27158 \begin_layout Plain Layout
27160 \begin_inset space ~
27164 \begin_inset space ~
27172 This command specifies that clipping is done via an optional argument.
27173 This command may occur once or not at all.
27176 \begin_layout Description
27177 \begin_inset Flex Code
27180 \begin_layout Plain Layout
27182 \begin_inset space ~
27186 \begin_inset space ~
27194 This command specifies that an extra optional argument is used.
27195 This command may occur once or not at all.
27198 \begin_layout Description
27199 \begin_inset Flex Code
27202 \begin_layout Plain Layout
27204 \begin_inset space ~
27212 The file format of the converted file.
27213 This must be the name of a format that is known to \SpecialChar LyX
27215 \begin_inset Flex Noun
27218 \begin_layout Plain Layout
27219 Tools\SpecialChar menuseparator
27220 Preferences\SpecialChar menuseparator
27221 File Handling\SpecialChar menuseparator
27228 This command must occur exactly once.
27229 If the resulting file format is PDF, you need to specify the format
27230 \begin_inset Flex Code
27233 \begin_layout Plain Layout
27240 This is the PDF format used for including graphics.
27241 The other defined PDF formats are for document export.
27244 \begin_layout Description
27245 \begin_inset Flex Code
27248 \begin_layout Plain Layout
27250 \begin_inset space ~
27258 The file name of the converted file.
27259 The file name must be absolute.
27260 This command must occur exactly once.
27263 \begin_layout Subsection
27264 Preamble definitions
27267 \begin_layout Standard
27268 The external template configuration file may contain additional preamble
27269 definitions enclosed by
27270 \begin_inset Flex Code
27273 \begin_layout Plain Layout
27281 \begin_inset Flex Code
27284 \begin_layout Plain Layout
27291 They can be used by the templates in the
27292 \begin_inset Flex Code
27295 \begin_layout Plain Layout
27304 \begin_layout Section
27305 The substitution mechanism
27308 \begin_layout Standard
27309 When the external material facility invokes an external program, it is done
27310 on the basis of a command defined in the template configuration file.
27311 These commands can contain various macros that are expanded before execution.
27312 Execution always take place in the directory of the containing document.
27315 \begin_layout Standard
27316 Also, whenever external material is to be displayed, the name will be produced
27317 by the substitution mechanism, and most other commands in the template
27318 definition support substitution as well.
27321 \begin_layout Standard
27322 The available macros are the following:
27325 \begin_layout Description
27326 \begin_inset Flex Code
27329 \begin_layout Plain Layout
27330 $$AbsOrRelPathMaster
27335 The file path, absolute or relative to the master \SpecialChar LyX
27339 \begin_layout Description
27340 \begin_inset Flex Code
27343 \begin_layout Plain Layout
27344 $$AbsOrRelPathParent
27349 The file path, absolute or relative to the \SpecialChar LyX
27353 \begin_layout Description
27354 \begin_inset Flex Code
27357 \begin_layout Plain Layout
27363 The absolute file path.
27366 \begin_layout Description
27367 \begin_inset Flex Code
27370 \begin_layout Plain Layout
27376 The filename without path and without the extension.
27379 \begin_layout Description
27380 \begin_inset Flex Code
27383 \begin_layout Plain Layout
27385 \begin_inset Quotes eld
27389 \begin_inset Quotes erd
27397 This macro will expand to the contents of the file with the name
27398 \begin_inset Flex Code
27401 \begin_layout Plain Layout
27410 \begin_layout Description
27411 \begin_inset Flex Code
27414 \begin_layout Plain Layout
27420 The file extension (including the dot).
27423 \begin_layout Description
27424 \begin_inset Flex Code
27427 \begin_layout Plain Layout
27433 This will be the string
27434 \begin_inset Quotes eld
27438 \begin_inset Quotes erd
27441 if the file is in JPEG format, otherwise it will be the string
27442 \begin_inset Quotes eld
27446 \begin_inset Quotes erd
27450 This is useful to avoid uneeded conversions for output formats that support
27451 both PNG and JPEG fomats.
27452 The predefined RasterImage template uses this macro for the pdf\SpecialChar TeX
27457 \begin_layout Description
27458 \begin_inset Flex Code
27461 \begin_layout Plain Layout
27467 The filename of the file specified in the external material dialog.
27468 This is either an absolute name, or it is relative to the \SpecialChar LyX
27472 \begin_layout Description
27473 \begin_inset Flex Code
27476 \begin_layout Plain Layout
27483 \begin_inset Flex Code
27486 \begin_layout Plain Layout
27492 (absolute name or relative to the \SpecialChar LyX
27496 \begin_layout Description
27497 \begin_inset Flex Code
27500 \begin_layout Plain Layout
27506 The file path, relative to the master \SpecialChar LyX
27510 \begin_layout Description
27511 \begin_inset Flex Code
27514 \begin_layout Plain Layout
27520 The file path, relative to the \SpecialChar LyX
27524 \begin_layout Description
27525 \begin_inset Flex Code
27528 \begin_layout Plain Layout
27534 This macro will expand to the absolute path of the system directory.
27535 This is typically used to point to the various helper scripts that are
27536 bundled with \SpecialChar LyX
27540 \begin_layout Description
27541 \begin_inset Flex Code
27544 \begin_layout Plain Layout
27550 A name and full path to a temporary file which will be automatically deleted
27551 whenever the containing document is closed, or the external material insertion
27555 \begin_layout Standard
27556 All path macros contain a trailing directory separator, so you can construct
27558 \begin_inset space \thinspace{}
27562 \begin_inset space \space{}
27565 the absolute filename with
27566 \begin_inset Flex Code
27569 \begin_layout Plain Layout
27570 $$AbsPath$$Basename$$Extension
27578 \begin_layout Standard
27579 The macros above are substituted in all commands unless otherwise noted.
27581 \begin_inset Flex Code
27584 \begin_layout Plain Layout
27590 supports additionally the following substitutions if they are enabled by
27592 \begin_inset Flex Code
27595 \begin_layout Plain Layout
27602 \begin_inset Flex Code
27605 \begin_layout Plain Layout
27614 \begin_layout Description
27615 \begin_inset Flex Code
27618 \begin_layout Plain Layout
27624 The front part of the resize command.
27627 \begin_layout Description
27628 \begin_inset Flex Code
27631 \begin_layout Plain Layout
27637 The back part of the resize command.
27640 \begin_layout Description
27641 \begin_inset Flex Code
27644 \begin_layout Plain Layout
27650 The front part of the rotation command.
27653 \begin_layout Description
27654 \begin_inset Flex Code
27657 \begin_layout Plain Layout
27663 The back part of the rotation command.
27666 \begin_layout Standard
27667 The value string of the
27668 \begin_inset Flex Code
27671 \begin_layout Plain Layout
27677 command supports additionally the following substitutions if they are enabled
27679 \begin_inset Flex Code
27682 \begin_layout Plain Layout
27689 \begin_inset Flex Code
27692 \begin_layout Plain Layout
27701 \begin_layout Description
27702 \begin_inset Flex Code
27705 \begin_layout Plain Layout
27714 \begin_layout Description
27715 \begin_inset Flex Code
27718 \begin_layout Plain Layout
27727 \begin_layout Description
27728 \begin_inset Flex Code
27731 \begin_layout Plain Layout
27740 \begin_layout Description
27741 \begin_inset Flex Code
27744 \begin_layout Plain Layout
27750 The rotation option.
27753 \begin_layout Standard
27754 You may ask why there are so many path macros.
27755 There are mainly two reasons:
27758 \begin_layout Enumerate
27759 Relative and absolute file names should remain relative or absolute, respectivel
27761 Users may have reasons to prefer either form.
27762 Relative names are useful for portable documents that should work on different
27763 machines, for example.
27764 Absolute names may be required by some programs.
27767 \begin_layout Enumerate
27769 treats relative file names differently than \SpecialChar LyX
27770 and other programs in nested
27772 For \SpecialChar LyX
27773 , a relative file name is always relative to the document that contains
27775 For \SpecialChar LaTeX
27776 , it is always relative to the master document.
27777 These two definitions are identical if you have only one document, but
27778 differ if you have a master document that includes part documents.
27779 That means that relative filenames must be transformed when presented to
27782 Fortunately \SpecialChar LyX
27783 does this automatically for you if you choose the right macros.
27786 \begin_layout Standard
27787 So which path macro should be used in new template definitions? The rule
27791 \begin_layout Itemize
27793 \begin_inset Flex Code
27796 \begin_layout Plain Layout
27802 if an absolute path is required.
27805 \begin_layout Itemize
27807 \begin_inset Flex Code
27810 \begin_layout Plain Layout
27811 $$AbsOrRelPathMaster
27816 if the substituted string is some kind of \SpecialChar LaTeX
27820 \begin_layout Itemize
27822 \begin_inset Flex Code
27825 \begin_layout Plain Layout
27826 $$AbsOrRelPathParent
27831 in order to preserve the user's choice.
27834 \begin_layout Standard
27835 There are special cases where this rule does not work and e.
27836 \begin_inset space \thinspace{}
27840 \begin_inset space \space{}
27843 relative names are needed, but normally it will work just fine.
27844 One example for such a case is the command
27845 \begin_inset Flex Code
27848 \begin_layout Plain Layout
27849 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
27854 in the XFig template above: We can't use the absolute name because the
27856 \begin_inset Flex Code
27859 \begin_layout Plain Layout
27865 files needs the relative name in order to rewrite the file content.
27868 \begin_layout Section
27869 Security discussion
27870 \begin_inset CommandInset label
27872 name "sec:Security-discussion"
27879 \begin_layout Standard
27880 The external material feature interfaces with a lot of external programs
27881 and does so automatically, so we have to consider the security implications
27883 In particular, since you have the option of including your own filenames
27884 and/or parameter strings and those are expanded into a command, it seems
27885 that it would be possible to create a malicious document which executes
27886 arbitrary commands when a user views or prints the document.
27887 This is something we definitely want to avoid.
27890 \begin_layout Standard
27891 However, since the external program commands are specified in the template
27892 configuration file only, there are no security issues if \SpecialChar LyX
27893 is properly configure
27894 d with safe templates only.
27895 This is so because the external programs are invoked with the
27896 \begin_inset Flex Code
27899 \begin_layout Plain Layout
27905 -system call rather than the
27906 \begin_inset Flex Code
27909 \begin_layout Plain Layout
27915 system-call, so it's not possible to execute arbitrary commands from the
27916 filename or parameter section via the shell.
27919 \begin_layout Standard
27920 This also implies that you are restricted in what command strings you can
27921 use in the external material templates.
27922 In particular, pipes and redirection are not readily available.
27923 This has to be so if \SpecialChar LyX
27924 should remain safe.
27925 If you want to use some of the shell features, you should write a safe
27926 script to do this in a controlled manner, and then invoke the script from
27927 the command string.
27931 \begin_layout Standard
27932 It is possible to design a template that interacts directly with the shell,
27933 but since this would allow a malicious user to execute arbitrary commands
27934 by writing clever filenames and/or parameters, we generally recommend that
27935 you only use safe scripts that work with the
27936 \begin_inset Flex Code
27939 \begin_layout Plain Layout
27945 system call in a controlled manner.
27946 Of course, for use in a controlled environment, it can be tempting to just
27947 fall back to use ordinary shell scripts.
27948 If you do so, be aware that you
27952 provide an easily exploitable security hole in your system.
27953 Of course it stands to reason that such unsafe templates will never be
27954 included in the standard \SpecialChar LyX
27955 distribution, although we do encourage people
27956 to submit new templates in the open source tradition.
27957 But \SpecialChar LyX
27958 as shipped from the official distribution channels will never have
27962 \begin_layout Standard
27963 Including external material provides a lot of power, and you have to be
27964 careful not to introduce security hazards with this power.
27965 A subtle error in a single line in an innocent looking script can open
27966 the door to huge security problems.
27967 So if you do not fully understand the issues, we recommend that you consult
27968 a knowledgeable security professional or the \SpecialChar LyX
27969 development team if you have
27970 any questions about whether a given template is safe or not.
27971 And do this before you use it in an uncontrolled environment.
27974 \begin_layout Chapter
27976 List of supported \SpecialChar LyX
27977 functions to be used in layouts
27978 \begin_inset CommandInset label
27980 name "chap:List-of-functions"
27987 \begin_layout Standard
27989 \begin_inset Tabular
27990 <lyxtabular version="3" rows="11" columns="8">
27991 <features tabularvalignment="middle">
27992 <column alignment="left" valignment="top">
27993 <column alignment="left" valignment="top">
27994 <column alignment="left" valignment="top">
27995 <column alignment="left" valignment="top">
27996 <column alignment="left" valignment="top">
27997 <column alignment="left" valignment="top">
27998 <column alignment="left" valignment="top">
27999 <column alignment="left" valignment="top">
28001 <cell alignment="left" valignment="top" usebox="none">
28004 \begin_layout Plain Layout
28010 <cell alignment="left" valignment="top" usebox="none">
28013 \begin_layout Plain Layout
28019 <cell alignment="left" valignment="top" usebox="none">
28022 \begin_layout Plain Layout
28028 <cell alignment="left" valignment="top" usebox="none">
28031 \begin_layout Plain Layout
28037 <cell alignment="center" valignment="top" usebox="none">
28040 \begin_layout Plain Layout
28046 <cell alignment="center" valignment="top" usebox="none">
28049 \begin_layout Plain Layout
28055 <cell alignment="center" valignment="top" usebox="none">
28058 \begin_layout Plain Layout
28064 <cell alignment="center" valignment="top" usebox="none">
28067 \begin_layout Plain Layout
28075 <cell alignment="left" valignment="top" usebox="none">
28078 \begin_layout Plain Layout
28084 <cell alignment="left" valignment="top" usebox="none">
28087 \begin_layout Plain Layout
28093 <cell alignment="left" valignment="top" usebox="none">
28096 \begin_layout Plain Layout
28102 <cell alignment="left" valignment="top" usebox="none">
28105 \begin_layout Plain Layout
28111 <cell alignment="center" valignment="top" usebox="none">
28114 \begin_layout Plain Layout
28120 <cell alignment="center" valignment="top" usebox="none">
28123 \begin_layout Plain Layout
28129 <cell alignment="center" valignment="top" usebox="none">
28132 \begin_layout Plain Layout
28138 <cell alignment="center" valignment="top" usebox="none">
28141 \begin_layout Plain Layout
28149 <cell alignment="left" valignment="top" usebox="none">
28152 \begin_layout Plain Layout
28158 <cell alignment="left" valignment="top" usebox="none">
28161 \begin_layout Plain Layout
28167 <cell alignment="left" valignment="top" usebox="none">
28170 \begin_layout Plain Layout
28176 <cell alignment="left" valignment="top" usebox="none">
28179 \begin_layout Plain Layout
28185 <cell alignment="center" valignment="top" usebox="none">
28188 \begin_layout Plain Layout
28194 <cell alignment="center" valignment="top" usebox="none">
28197 \begin_layout Plain Layout
28203 <cell alignment="center" valignment="top" usebox="none">
28206 \begin_layout Plain Layout
28212 <cell alignment="center" valignment="top" usebox="none">
28215 \begin_layout Plain Layout
28223 <cell alignment="left" valignment="top" usebox="none">
28226 \begin_layout Plain Layout
28232 <cell alignment="left" valignment="top" usebox="none">
28235 \begin_layout Plain Layout
28241 <cell alignment="left" valignment="top" usebox="none">
28244 \begin_layout Plain Layout
28250 <cell alignment="left" valignment="top" usebox="none">
28253 \begin_layout Plain Layout
28259 <cell alignment="center" valignment="top" usebox="none">
28262 \begin_layout Plain Layout
28268 <cell alignment="center" valignment="top" usebox="none">
28271 \begin_layout Plain Layout
28277 <cell alignment="center" valignment="top" usebox="none">
28280 \begin_layout Plain Layout
28286 <cell alignment="center" valignment="top" usebox="none">
28289 \begin_layout Plain Layout
28297 <cell alignment="left" valignment="top" usebox="none">
28300 \begin_layout Plain Layout
28306 <cell alignment="left" valignment="top" usebox="none">
28309 \begin_layout Plain Layout
28315 <cell alignment="left" valignment="top" usebox="none">
28318 \begin_layout Plain Layout
28324 <cell alignment="left" valignment="top" usebox="none">
28327 \begin_layout Plain Layout
28333 <cell alignment="center" valignment="top" usebox="none">
28336 \begin_layout Plain Layout
28342 <cell alignment="center" valignment="top" usebox="none">
28345 \begin_layout Plain Layout
28351 <cell alignment="center" valignment="top" usebox="none">
28354 \begin_layout Plain Layout
28360 <cell alignment="center" valignment="top" usebox="none">
28363 \begin_layout Plain Layout
28371 <cell alignment="left" valignment="top" usebox="none">
28374 \begin_layout Plain Layout
28380 <cell alignment="left" valignment="top" usebox="none">
28383 \begin_layout Plain Layout
28389 <cell alignment="left" valignment="top" usebox="none">
28392 \begin_layout Plain Layout
28398 <cell alignment="left" valignment="top" usebox="none">
28401 \begin_layout Plain Layout
28407 <cell alignment="center" valignment="top" usebox="none">
28410 \begin_layout Plain Layout
28416 <cell alignment="center" valignment="top" usebox="none">
28419 \begin_layout Plain Layout
28425 <cell alignment="center" valignment="top" usebox="none">
28428 \begin_layout Plain Layout
28434 <cell alignment="center" valignment="top" usebox="none">
28437 \begin_layout Plain Layout
28445 <cell alignment="left" valignment="top" usebox="none">
28448 \begin_layout Plain Layout
28454 <cell alignment="left" valignment="top" usebox="none">
28457 \begin_layout Plain Layout
28463 <cell alignment="left" valignment="top" usebox="none">
28466 \begin_layout Plain Layout
28472 <cell alignment="left" valignment="top" usebox="none">
28475 \begin_layout Plain Layout
28481 <cell alignment="center" valignment="top" usebox="none">
28484 \begin_layout Plain Layout
28490 <cell alignment="center" valignment="top" usebox="none">
28493 \begin_layout Plain Layout
28499 <cell alignment="center" valignment="top" usebox="none">
28502 \begin_layout Plain Layout
28508 <cell alignment="center" valignment="top" usebox="none">
28511 \begin_layout Plain Layout
28519 <cell alignment="left" valignment="top" usebox="none">
28522 \begin_layout Plain Layout
28528 <cell alignment="left" valignment="top" usebox="none">
28531 \begin_layout Plain Layout
28537 <cell alignment="left" valignment="top" usebox="none">
28540 \begin_layout Plain Layout
28546 <cell alignment="left" valignment="top" usebox="none">
28549 \begin_layout Plain Layout
28555 <cell alignment="center" valignment="top" usebox="none">
28558 \begin_layout Plain Layout
28564 <cell alignment="center" valignment="top" usebox="none">
28567 \begin_layout Plain Layout
28573 <cell alignment="center" valignment="top" usebox="none">
28576 \begin_layout Plain Layout
28582 <cell alignment="center" valignment="top" usebox="none">
28585 \begin_layout Plain Layout
28593 <cell alignment="left" valignment="top" usebox="none">
28596 \begin_layout Plain Layout
28602 <cell alignment="left" valignment="top" usebox="none">
28605 \begin_layout Plain Layout
28611 <cell alignment="left" valignment="top" usebox="none">
28614 \begin_layout Plain Layout
28620 <cell alignment="left" valignment="top" usebox="none">
28623 \begin_layout Plain Layout
28629 <cell alignment="center" valignment="top" usebox="none">
28632 \begin_layout Plain Layout
28638 <cell alignment="center" valignment="top" usebox="none">
28641 \begin_layout Plain Layout
28647 <cell alignment="center" valignment="top" usebox="none">
28650 \begin_layout Plain Layout
28656 <cell alignment="center" valignment="top" usebox="none">
28659 \begin_layout Plain Layout
28667 <cell alignment="left" valignment="top" usebox="none">
28670 \begin_layout Plain Layout
28676 <cell alignment="left" valignment="top" usebox="none">
28679 \begin_layout Plain Layout
28685 <cell alignment="left" valignment="top" usebox="none">
28688 \begin_layout Plain Layout
28694 <cell alignment="left" valignment="top" usebox="none">
28697 \begin_layout Plain Layout
28703 <cell alignment="center" valignment="top" usebox="none">
28706 \begin_layout Plain Layout
28712 <cell alignment="center" valignment="top" usebox="none">
28715 \begin_layout Plain Layout
28721 <cell alignment="center" valignment="top" usebox="none">
28724 \begin_layout Plain Layout
28730 <cell alignment="center" valignment="top" usebox="none">
28733 \begin_layout Plain Layout
28741 <cell alignment="center" valignment="top" usebox="none">
28744 \begin_layout Plain Layout
28750 <cell alignment="center" valignment="top" usebox="none">
28753 \begin_layout Plain Layout
28759 <cell alignment="center" valignment="top" usebox="none">
28762 \begin_layout Plain Layout
28768 <cell alignment="center" valignment="top" usebox="none">
28771 \begin_layout Plain Layout
28777 <cell alignment="center" valignment="top" usebox="none">
28780 \begin_layout Plain Layout
28786 <cell alignment="center" valignment="top" usebox="none">
28789 \begin_layout Plain Layout
28795 <cell alignment="center" valignment="top" usebox="none">
28798 \begin_layout Plain Layout
28804 <cell alignment="center" valignment="top" usebox="none">
28807 \begin_layout Plain Layout
28821 \begin_layout Chapter
28822 Names of available colors to be used in layouts
28823 \begin_inset CommandInset label
28825 name "chap:Names-of-colors"
28832 \begin_layout Standard
28833 The colors listed below are the standard colors and those that you can adjust
28834 in the \SpecialChar LyX
28838 \begin_layout Section
28842 \begin_layout Standard
28843 The following are no real colors, but rather act on color definitions:
28846 \begin_layout Description
28847 ignore The color is ignored
28850 \begin_layout Description
28851 inherit The color is inherited
28854 \begin_layout Description
28867 No particular color – clear or default
28870 \begin_layout Section
28874 \begin_layout Standard
28875 These are fixed colors that cannot me customized:
28878 \begin_layout Description
28882 \begin_layout Description
28886 \begin_layout Description
28890 \begin_layout Description
28894 \begin_layout Description
28898 \begin_layout Description
28902 \begin_layout Description
28906 \begin_layout Description
28910 \begin_layout Description
28914 \begin_layout Description
28918 \begin_layout Description
28922 \begin_layout Description
28926 \begin_layout Description
28930 \begin_layout Description
28934 \begin_layout Description
28938 \begin_layout Description
28942 \begin_layout Description
28946 \begin_layout Description
28950 \begin_layout Description
28954 \begin_layout Section
28958 \begin_layout Standard
28959 These are the colors allocated to specific elements in
28962 arg "dialog-show prefs"
28968 \begin_layout Description
28969 added_space Added space color
28972 \begin_layout Description
28973 addedtext Added text color
28976 \begin_layout Description
28977 appendix Appendix marker color
28980 \begin_layout Description
28981 background Background color
28984 \begin_layout Description
28985 bottomarea Bottom area color
28988 \begin_layout Description
28989 branchlabel Label color for branches
28992 \begin_layout Description
28993 buttonbg Color used for button background
28996 \begin_layout Description
28997 buttonframe Color for inset button frames
29000 \begin_layout Description
29001 buttonhoverbg Color used for button background under focus
29004 \begin_layout Description
29005 changebar Changebar color
29008 \begin_layout Description
29009 changedtextauthor1 Changed text color author 1
29012 \begin_layout Description
29013 changedtextauthor2 Changed text color author 2
29016 \begin_layout Description
29017 changedtextauthor3 Changed text color author 3
29020 \begin_layout Description
29021 changedtextauthor4 Changed text color author 4
29024 \begin_layout Description
29025 changedtextauthor5 Changed text color author 5
29028 \begin_layout Description
29029 collapsible Collapsible insets text color
29032 \begin_layout Description
29033 collapsibleframe Collapsible insets framecolor
29036 \begin_layout Description
29037 command Text color for command insets
29040 \begin_layout Description
29041 commandbg Background color for command insets
29044 \begin_layout Description
29045 commandframe Frame color for command insets
29048 \begin_layout Description
29049 comment Label color for comments
29052 \begin_layout Description
29053 commentbg Background color of comments
29056 \begin_layout Description
29057 cursor Cursor color
29060 \begin_layout Description
29061 deletedtext Deleted text color
29064 \begin_layout Description
29065 deletedtextmodifier Deleted text modifying color
29068 \begin_layout Description
29069 depthbar Color for the depth bars in the margin
29072 \begin_layout Description
29073 eolmarker End of line marker color
29076 \begin_layout Description
29077 error Color of the \SpecialChar LaTeX
29081 \begin_layout Description
29082 footlabel Label color for footnotes
29085 \begin_layout Description
29086 foreground Foreground color
29089 \begin_layout Description
29090 graphicsbg Graphics inset background color
29093 \begin_layout Description
29094 greyedoutbg Background color of greyedout inset
29097 \begin_layout Description
29098 greyedoutlabel Label color for greyedout insets
29101 \begin_layout Description
29102 greyedouttext Color for greyedout inset text
29105 \begin_layout Description
29106 indexlabel Label color for index insets
29109 \begin_layout Description
29110 inlinecompletion Inline completion color
29113 \begin_layout Description
29114 insetbg Inset marker background color
29117 \begin_layout Description
29118 insetframe Inset marker frame color
29121 \begin_layout Description
29122 language Color for marking foreign language words
29125 \begin_layout Description
29126 latex Text color in \SpecialChar LaTeX
29130 \begin_layout Description
29131 listingsbg Background color of listings inset
29134 \begin_layout Description
29135 marginlabel Label color for margin notes
29138 \begin_layout Description
29139 math Math inset text color
29142 \begin_layout Description
29143 mathbg Math inset background color
29146 \begin_layout Description
29147 mathcorners Math inset frame color not under focus
29150 \begin_layout Description
29151 mathframe Math inset frame color under focus
29154 \begin_layout Description
29155 mathline Math line color
29158 \begin_layout Description
29159 mathmacrobg Macro math inset background color
29162 \begin_layout Description
29163 mathmacroblend Macro math blended color
29166 \begin_layout Description
29167 mathmacroframe Macro math frame color
29170 \begin_layout Description
29171 mathmacrohoverbg Macro math inset background color hovered
29174 \begin_layout Description
29175 mathmacrolabel Macro math label color
29178 \begin_layout Description
29179 mathmacronewarg Macro template color for new parameters
29182 \begin_layout Description
29183 mathmacrooldarg Macro template color for old parameters
29186 \begin_layout Description
29187 newpage New page color
29190 \begin_layout Description
29191 nonunique_inlinecompletion Inline completion color for the non-unique part
29194 \begin_layout Description
29195 note Label color for notes
29198 \begin_layout Description
29199 notebg Background color of notes
29202 \begin_layout Description
29203 pagebreak Page break/line break color
29206 \begin_layout Description
29207 paragraphmarker Color used for the pilcrow sign to mark the end of a paragraph
29210 \begin_layout Description
29211 phantomtext Text color for phantom insets
29214 \begin_layout Description
29215 preview The color used for previews
29218 \begin_layout Description
29219 previewframe Preview frame color
29222 \begin_layout Description
29223 regexpframe Color for regexp frame
29226 \begin_layout Description
29227 scroll Color that indicates when a row can be scrolled
29230 \begin_layout Description
29231 selection Background color of selected text
29234 \begin_layout Description
29235 selectiontext Foreground color of selected text
29238 \begin_layout Description
29239 shadedbg Background color of shaded box
29242 \begin_layout Description
29243 special Special chars text color
29246 \begin_layout Description
29247 tabularline Table line color
29250 \begin_layout Description
29251 tabularonoffline Table line color
29254 \begin_layout Description
29255 urllabel Label color for URL insets
29258 \begin_layout Description
29259 urltext Color for URL inset text