1 #LyX 2.3 created this file. For more info see http://www.lyx.org/
5 \save_transient_properties true
6 \origin /systemlyxdir/doc/
9 % DO NOT ALTER THIS PREAMBLE!!!
11 % This preamble is designed to ensure that this document prints
12 % out as advertised. If you mess with this preamble,
13 % parts of this document may not print out as expected. If you
14 % have problems LaTeXing this file, please contact
15 % the documentation team
16 % email: lyx-docs@lists.lyx.org
18 % the pages of the TOC is numbered roman
19 % and a pdf-bookmark for the TOC is added
20 \let\myTOC\tableofcontents
21 \renewcommand\tableofcontents{%
23 \pdfbookmark[1]{\contentsname}{}
27 % increase link area for cross-references and autoname them,
28 \AtBeginDocument{\renewcommand{\ref}[1]{\mbox{\autoref{#1}}}}
29 \@ifundefined{extrasenglish}{\usepackage[english]{babel}}{}
30 \@ifpackageloaded{babel}{
31 \addto\extrasenglish{%
32 \renewcommand*{\equationautorefname}[1]{}%
33 \renewcommand{\sectionautorefname}{sec.\negthinspace}%
34 \renewcommand{\subsectionautorefname}{sec.\negthinspace}%
35 \renewcommand{\subsubsectionautorefname}{sec.\negthinspace}%
39 \options fleqn,bibliography=totoc,index=totoc,BCOR7.5mm,titlepage,captions=tableheading
40 \use_default_options false
44 \maintain_unincluded_children false
46 \language_package default
49 \font_roman "lmodern" "default"
50 \font_sans "lmss" "default"
51 \font_typewriter "lmtt" "default"
52 \font_math "auto" "auto"
53 \font_default_family default
54 \use_non_tex_fonts false
57 \font_sf_scale 100 100
58 \font_tt_scale 100 100
61 \default_output_format pdf2
63 \bibtex_command default
64 \index_command default
68 \pdf_title "LyX Configuration Manual"
69 \pdf_author "LyX Team"
70 \pdf_subject "LyX-documentation Customization"
71 \pdf_keywords "LyX, documentation, customization"
73 \pdf_bookmarksnumbered true
74 \pdf_bookmarksopen true
75 \pdf_bookmarksopenlevel 1
80 \pdf_pdfusetitle false
81 \pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue,pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false"
84 \use_package amsmath 0
85 \use_package amssymb 0
88 \use_package mathdots 1
89 \use_package mathtools 0
91 \use_package stackrel 0
92 \use_package stmaryrd 0
93 \use_package undertilde 0
95 \cite_engine_type default
99 \paperorientation portrait
103 \notefontcolor #0000ff
115 \paragraph_separation indent
116 \paragraph_indentation default
117 \quotes_style english
121 \paperpagestyle headings
122 \tracking_changes true
123 \output_changes false
127 \author -712698321 "Jürgen Spitzmüller"
128 \author 2089657418 "Usti"
134 Customizing \SpecialChar LyX
135 : Features for the Advanced User
139 by the \SpecialChar LyX
144 \begin_layout Plain Layout
146 If you have comments or error corrections, please send them to the \SpecialChar LyX
149 \begin_inset CommandInset href
151 target "lyx-docs@lists.lyx.org"
158 \begin_inset Quotes eld
162 \begin_inset Quotes erd
165 in the subject header, and please cc the current maintainer of this file,
166 Richard Heck <rgheck@comcast.net>.
172 \begin_inset Newline newline
176 \begin_inset Newline newline
182 \begin_layout Standard
183 \begin_inset CommandInset toc
184 LatexCommand tableofcontents
191 \begin_layout Standard
192 \begin_inset Note Note
195 \begin_layout Plain Layout
196 Please use change tracking when modifying this document.
197 This makes it easier for our translators to recognize things that have
198 been changed, and it helps the maintainer keep up-to-date with what's been
207 \begin_layout Chapter
211 \begin_layout Standard
212 This manual covers the customization features present in \SpecialChar LyX
214 In it, we discuss issues like keyboard shortcuts, screen previewing options,
215 printer options, sending commands to \SpecialChar LyX
216 via the \SpecialChar LyX
217 Server, internationalization,
218 installing new \SpecialChar LaTeX
219 classes and \SpecialChar LyX
221 We can't possibly hope to touch on everything you can change—our developers
222 add new features faster than we can document them—but we will explain the
223 most common customizations and hopefully point you in the right direction
224 for some of the more obscure ones.
227 \begin_layout Standard
228 \begin_inset Branch OutDated
232 \begin_layout Standard
233 Information from previous versions of this document that now seems to be
234 outdated is contained in the OutDated branch of this document.
235 By default, this information will not appear in the \SpecialChar LaTeX
244 \begin_layout Chapter
249 \begin_layout Standard
250 This chapter aims to help you to find your way through the \SpecialChar LyX
253 Before continuing to read this chapter, you should find out where your
255 library and user directories are by using
256 \begin_inset Flex Noun
259 \begin_layout Plain Layout
260 Help\SpecialChar menuseparator
271 The library directory is the place where \SpecialChar LyX
272 places its system-wide configuration
273 files; the user directory is where you can place your modified versions.
274 We will call the former
275 \begin_inset Flex Code
278 \begin_layout Plain Layout
285 \begin_inset Flex Noun
288 \begin_layout Plain Layout
294 in the remainder of this document.
298 \begin_layout Section
300 \begin_inset Flex Code
303 \begin_layout Plain Layout
312 \begin_layout Standard
313 \begin_inset Flex Code
316 \begin_layout Plain Layout
322 and its sub-directories contain a number of files and that can be used
323 to customize \SpecialChar LyX
325 You can change many of these files from within \SpecialChar LyX
327 \begin_inset Flex Noun
330 \begin_layout Plain Layout
331 Tools\SpecialChar menuseparator
338 Most customization that you will want to do in \SpecialChar LyX
339 is possible through this
341 However, many other inner aspects of \SpecialChar LyX
342 can be customized by modifying the
344 \begin_inset Flex Code
347 \begin_layout Plain Layout
354 These files fall in different categories, described in the following subsection
358 \begin_layout Subsection
359 Automatically generated files
362 \begin_layout Standard
363 The files, which are to be found in
364 \begin_inset Flex Noun
367 \begin_layout Plain Layout
373 , are generated when you configure \SpecialChar LyX
375 They contain various default values that are guessed by inspection.
376 In general, it is not a good idea to modify them, since they might be overwritt
380 \begin_layout Labeling
381 \labelwidthstring 00.00.0000
382 \begin_inset Flex Code
385 \begin_layout Plain Layout
391 contains defaults for various commands.
394 \begin_layout Labeling
395 \labelwidthstring 00.00.0000
396 \begin_inset Flex Code
399 \begin_layout Plain Layout
405 contains the list of packages that have been recognized by \SpecialChar LyX
407 It is currently unused by the \SpecialChar LyX
408 program itself, but the information extracted,
409 and more, is made available with
410 \begin_inset Flex Noun
413 \begin_layout Plain Layout
414 Help\SpecialChar menuseparator
428 \begin_layout Labeling
429 \labelwidthstring 00.00.0000
430 \begin_inset Flex Code
433 \begin_layout Plain Layout
439 the list of text classes that have been found in your
440 \begin_inset Flex Code
443 \begin_layout Plain Layout
449 directories, along with the associated \SpecialChar LaTeX
450 document class and their description.
453 \begin_layout Labeling
454 \labelwidthstring 00.00.0000
455 \begin_inset Flex Code
458 \begin_layout Plain Layout
464 the list of layout modules found in your
465 \begin_inset Flex Code
468 \begin_layout Plain Layout
477 \begin_layout Labeling
478 \labelwidthstring 00.00.0000
479 \begin_inset Flex Code
482 \begin_layout Plain Layout
488 lists of various sorts of \SpecialChar LaTeX
489 -related files found on your system
492 \begin_layout Labeling
493 \labelwidthstring 00.00.0000
494 \begin_inset Flex Code
497 \begin_layout Plain Layout
498 doc/\SpecialChar LaTeX
504 is automatically generated during configuration from the file
505 \begin_inset Flex Code
508 \begin_layout Plain Layout
516 It contains information on your \SpecialChar LaTeX
520 \begin_layout Subsection
524 \begin_layout Standard
525 These directories are duplicated between
526 \begin_inset Flex Code
529 \begin_layout Plain Layout
536 \begin_inset Flex Code
539 \begin_layout Plain Layout
546 If a particular files exists in both places, the one in
547 \begin_inset Flex Code
550 \begin_layout Plain Layout
559 \begin_layout Labeling
560 \labelwidthstring 00.00.0000
561 \begin_inset Flex Code
564 \begin_layout Plain Layout
570 this directory contains files with the extension
571 \begin_inset Flex Code
574 \begin_layout Plain Layout
580 that define the keybindings used in \SpecialChar LyX
582 If there exists an internationalized version of the bind file named
583 \begin_inset Flex Code
586 \begin_layout Plain Layout
592 , that will be used first.
593 \change_inserted -712698321 1483535138
597 \begin_layout Labeling
598 \labelwidthstring 00.00.0000
600 \change_inserted -712698321 1483874001
601 \begin_inset Flex Code
604 \begin_layout Plain Layout
606 \change_inserted -712698321 1483535144
612 contains files with the extension
613 \begin_inset Flex Code
616 \begin_layout Plain Layout
618 \change_inserted -712698321 1483869840
626 which define the diverse citation possibilities (natbib, biblatex etc.).
628 \begin_inset CommandInset ref
630 reference "subsec:Cite-Engine-Files"
642 \begin_layout Labeling
643 \labelwidthstring 00.00.0000
644 \begin_inset Flex Code
647 \begin_layout Plain Layout
653 contains graphics files that can be included in documents.
657 \begin_layout Labeling
658 \labelwidthstring 00.00.0000
659 \begin_inset Flex Code
662 \begin_layout Plain Layout
668 contains \SpecialChar LyX
669 documentation files (including the one you are currently reading).
671 \begin_inset Flex Code
674 \begin_layout Plain Layout
681 deserves special attention, as noted above.
682 The internationalized help docs are in subdirectories
683 \begin_inset Flex Code
686 \begin_layout Plain Layout
693 \begin_inset Quotes eld
697 \begin_inset Quotes erd
700 is the ISO language code.
702 \begin_inset CommandInset ref
704 reference "cha:Internationalizing-LyX"
711 \begin_layout Labeling
712 \labelwidthstring 00.00.0000
713 \begin_inset Flex Code
716 \begin_layout Plain Layout
722 contains example files that explain how to use some features.
723 In the file browser, press the
724 \begin_inset Flex Noun
727 \begin_layout Plain Layout
736 \begin_layout Labeling
737 \labelwidthstring 00.00.0000
738 \begin_inset Flex Code
741 \begin_layout Plain Layout
747 contains image files that are used by the
748 \begin_inset Flex Noun
751 \begin_layout Plain Layout
758 In addition, it also contains the individual icons used in the toolbar
759 and the banners that can be shown when \SpecialChar LyX
763 \begin_layout Labeling
764 \labelwidthstring 00.00.0000
765 \begin_inset Flex Code
768 \begin_layout Plain Layout
774 contains keyboard keymapping files.
776 \begin_inset CommandInset ref
778 reference "sec:International-Keymap-Stuff"
785 \begin_layout Labeling
786 \labelwidthstring 00.00.0000
787 \begin_inset Flex Code
790 \begin_layout Plain Layout
796 contains the text class and module files described in
797 \begin_inset CommandInset ref
799 reference "cha:Installing-New-Document"
806 \begin_layout Labeling
807 \labelwidthstring 00.00.0000
808 \begin_inset Flex Code
811 \begin_layout Plain Layout
818 \begin_inset Flex Code
821 \begin_layout Plain Layout
827 Python scripts used to convert between \SpecialChar LyX
829 These can be run from the command line if, say, you want to batch-convert
833 \begin_layout Labeling
834 \labelwidthstring 00.00.0000
835 \begin_inset Flex Code
838 \begin_layout Plain Layout
844 contains some files that demonstrate the capabilities of the
845 \begin_inset Flex Noun
848 \begin_layout Plain Layout
859 Also contains some scripts used by \SpecialChar LyX
863 \begin_layout Labeling
864 \labelwidthstring 00.00.0000
865 \begin_inset Flex Code
868 \begin_layout Plain Layout
874 contains the standard \SpecialChar LyX
875 template files described in
876 \begin_inset CommandInset ref
878 reference "subsec:Creating-Templates"
885 \begin_layout Labeling
886 \labelwidthstring 00.00.0000
887 \begin_inset Flex Code
890 \begin_layout Plain Layout
896 contains files with the extension
897 \begin_inset Flex Code
900 \begin_layout Plain Layout
906 that define the user interface to \SpecialChar LyX
908 That is, the files define which items appear in which menus and the items
909 appearing on the toolbar.
912 \begin_layout Subsection
913 Files you don't want to modify
916 \begin_layout Standard
917 These files are used internally by \SpecialChar LyX
918 and you generally do not need to modify
919 them unless you are a developer.
922 \begin_layout Labeling
923 \labelwidthstring 00.00.0000
924 \begin_inset Flex Code
927 \begin_layout Plain Layout
933 this file contains the list of \SpecialChar LyX
935 The contents are displayed with the menu entry
936 \begin_inset Flex Noun
939 \begin_layout Plain Layout
940 Help\SpecialChar menuseparator
953 \begin_layout Labeling
954 \labelwidthstring 00.00.0000
955 \begin_inset Flex Code
958 \begin_layout Plain Layout
964 this is a \SpecialChar LaTeX
965 script used during the configuration process.
969 \begin_layout Labeling
970 \labelwidthstring 00.00.0000
971 \begin_inset Flex Code
974 \begin_layout Plain Layout
980 this is a Python script that is used to re-configure \SpecialChar LyX
982 It creates configuration files in the directory it was run from.
985 \begin_layout Subsection
986 Other files needing a line or two
989 \begin_layout Labeling
990 \labelwidthstring 00.00.0000
991 \begin_inset Flex Code
994 \begin_layout Plain Layout
1000 this contains tables describing how different character encodings can be
1004 \begin_layout Labeling
1005 \labelwidthstring 00.00.0000
1006 \begin_inset Flex Code
1009 \begin_layout Plain Layout
1015 this file contains the templates available to the new
1016 \begin_inset Flex Noun
1019 \begin_layout Plain Layout
1021 \begin_inset space ~
1030 \begin_inset CommandInset ref
1032 reference "chap:Including-External-Material"
1039 \begin_layout Labeling
1040 \labelwidthstring 00.00.0000
1041 \begin_inset Flex Code
1044 \begin_layout Plain Layout
1050 this file contains a list of all the languages currently supported by \SpecialChar LyX
1054 \begin_layout Labeling
1055 \labelwidthstring 00.00.0000
1056 \begin_inset Flex Code
1059 \begin_layout Plain Layout
1065 contains information about the supported fonts.
1068 \begin_layout Labeling
1069 \labelwidthstring 00.00.0000
1070 \begin_inset Flex Code
1073 \begin_layout Plain Layout
1079 this file contains translations for internationalized paragraph styles
1081 \begin_inset CommandInset ref
1083 reference "subsec:I18n"
1090 \begin_layout Labeling
1091 \labelwidthstring 00.00.0000
1092 \begin_inset Flex Code
1095 \begin_layout Plain Layout
1101 this file contains information about unicode-encoded glyphs and the way
1102 they are supported by \SpecialChar LyX
1103 via \SpecialChar LaTeX
1107 \begin_layout Section
1108 Your local configuration directory
1111 \begin_layout Standard
1112 Even if you are using \SpecialChar LyX
1113 as an unprivileged user, you might want to change
1115 configuration for your own use.
1117 \begin_inset Flex Code
1120 \begin_layout Plain Layout
1126 directory contains all your personal configuration files.
1127 This is the directory described as
1128 \begin_inset Quotes eld
1132 \begin_inset Quotes erd
1136 \begin_inset Flex Noun
1139 \begin_layout Plain Layout
1140 Help\SpecialChar menuseparator
1142 \begin_inset space ~
1151 This directory is used as a mirror of
1152 \begin_inset Flex Code
1155 \begin_layout Plain Layout
1161 , which means that every file in
1162 \begin_inset Flex Code
1165 \begin_layout Plain Layout
1171 is a replacement for the corresponding file in
1172 \begin_inset Flex Code
1175 \begin_layout Plain Layout
1182 Any configuration file described in the above sections can be placed either
1183 in the system-wide directory, in which case it will affect all users, or
1184 in your local directory for your own use.
1187 \begin_layout Standard
1188 To make things clearer, let's provide a few examples:
1191 \begin_layout Itemize
1192 The preferences set in the
1193 \begin_inset Flex Noun
1196 \begin_layout Plain Layout
1197 Tools\SpecialChar menuseparator
1203 dialog are saved to a file
1204 \begin_inset Flex Code
1207 \begin_layout Plain Layout
1214 \begin_inset Flex Code
1217 \begin_layout Plain Layout
1226 \begin_layout Itemize
1227 When you reconfigure using
1228 \begin_inset Flex Noun
1231 \begin_layout Plain Layout
1232 Tools\SpecialChar menuseparator
1240 \begin_inset Flex Code
1243 \begin_layout Plain Layout
1249 script, and the resulting files are written in your local configuration
1251 This means that any additional text class file that you might have added
1253 \begin_inset Flex Code
1256 \begin_layout Plain Layout
1262 will be added to the list of classes in the
1263 \begin_inset Flex Noun
1266 \begin_layout Plain Layout
1267 Document\SpecialChar menuseparator
1276 \begin_layout Itemize
1277 If you get some updated documentation from \SpecialChar LyX
1278 ftp site and cannot install
1279 it because you do not have sysadmin rights on your system, you can just
1281 \begin_inset Flex Code
1284 \begin_layout Plain Layout
1290 and the items in the
1291 \begin_inset Flex Noun
1294 \begin_layout Plain Layout
1300 menu will open them!
1303 \begin_layout Section
1304 Running \SpecialChar LyX
1305 with multiple configurations
1308 \begin_layout Standard
1309 The configuration freedom of the local configuration directory may not suffice
1310 if you want to have more than one configuration at your disposal.
1311 For example, you may want to be use different key bindings or printer settings
1313 You can achieve this by having several such directories.
1314 You then specify which directory to use at run-time.
1317 \begin_layout Standard
1318 Invoking \SpecialChar LyX
1319 with the command line switch
1320 \begin_inset Flex Code
1323 \begin_layout Plain Layout
1333 instructs the program to read the configuration from that directory, and
1334 not from the default directory.
1335 (You can determine the default directory by running \SpecialChar LyX
1337 \begin_inset Flex Code
1340 \begin_layout Plain Layout
1346 switch.) If the specified directory does not exist, \SpecialChar LyX
1348 for you, just like it does for the default directory on the first time
1349 you run the program.
1350 You can modify the configuration options in this additional user directory
1351 exactly as you would for the default directory.
1352 These directories are completely independent (but read on).
1353 Note that setting the environment variable
1354 \begin_inset Flex Code
1357 \begin_layout Plain Layout
1363 to some value has exactly the same effect.
1366 \begin_layout Standard
1367 Having several configurations also requires more maintenance: if you want
1368 to add a new layout to
1369 \begin_inset Flex Code
1372 \begin_layout Plain Layout
1378 which you want available from all your configurations, you must add it
1379 to each directory separately.
1380 You can avoid this with the following trick: after \SpecialChar LyX
1381 creates the additional
1382 directory, most of the subdirectories (see above) are empty.
1383 If you want the new configuration to mirror an existing one, replace the
1384 empty subdirectory with a symbolic link to the matching subdirectory in
1385 the existing configuration.
1387 \begin_inset Flex Code
1390 \begin_layout Plain Layout
1396 subdirectory, however, since it contains a file written by the configuration
1397 script (also accessible through
1398 \begin_inset Flex Noun
1401 \begin_layout Plain Layout
1402 Tools\SpecialChar menuseparator
1408 ) which is configuration-specific.
1411 \begin_layout Chapter
1412 The Preferences dialog
1415 \begin_layout Standard
1416 All options of the preferences dialog are described in the Appendix
1418 The Preferences Dialog
1425 For some options you might find here more details.
1428 \begin_layout Section
1430 \begin_inset CommandInset label
1439 \begin_layout Standard
1440 The first step is to define your file formats if they are not already defined.
1442 \begin_inset Flex Noun
1445 \begin_layout Plain Layout
1446 Tools\SpecialChar menuseparator
1454 \begin_inset Flex Noun
1457 \begin_layout Plain Layout
1458 File Handling\SpecialChar menuseparator
1465 \begin_inset Flex Noun
1468 \begin_layout Plain Layout
1474 button to define your new format.
1476 \begin_inset Flex Noun
1479 \begin_layout Plain Layout
1485 field contains the name used to identify the format in the GUI.
1487 \begin_inset Flex Noun
1490 \begin_layout Plain Layout
1496 is used to identify the format internally.
1497 You will also need to enter a file extension.
1498 These are all required.
1500 \begin_inset Flex Noun
1503 \begin_layout Plain Layout
1509 field is used to provide a keyboard shortcut on the menus.
1510 (For example, pressing
1511 \begin_inset Flex Noun
1514 \begin_layout Plain Layout
1521 \begin_inset Flex Noun
1524 \begin_layout Plain Layout
1525 Document\SpecialChar menuseparator
1526 View (Other Formats)\SpecialChar menuseparator
1535 \begin_layout Standard
1537 \begin_inset Flex Noun
1540 \begin_layout Plain Layout
1547 \begin_inset Flex Noun
1550 \begin_layout Plain Layout
1557 For example, you might want to use
1558 \begin_inset Flex Noun
1561 \begin_layout Plain Layout
1567 to view PostScript files.
1568 You can enter the command needed to start the program in the corresponding
1570 In defining this command, you can use the four variables listed in the
1572 The viewer is launched when you view an image in \SpecialChar LyX
1574 \begin_inset Flex Noun
1577 \begin_layout Plain Layout
1578 Document\SpecialChar menuseparator
1585 The editor is for example launched when you right-click on an image and
1587 \begin_inset Flex Noun
1590 \begin_layout Plain Layout
1596 in the appearing context menu.
1599 \begin_layout Standard
1601 \begin_inset Flex Noun
1604 \begin_layout Plain Layout
1610 type of a format is optional, but if it is specified, it must be unique
1612 It is used to detect files of this format from the file contents.
1613 For some important file formats there is no MIME type officially registered
1615 \begin_inset CommandInset href
1618 target "http://www.iana.org/assignments/media-types/"
1623 Therefore \SpecialChar LyX
1624 uses the extended list of MIME types as specified by
1625 \begin_inset CommandInset href
1627 name "freedesktop.org"
1628 target "http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec"
1635 \begin_layout Standard
1637 \begin_inset Flex Noun
1640 \begin_layout Plain Layout
1646 option tells \SpecialChar LyX
1647 that a format is suitable for document export.
1648 If this is set and if a suitable conversion route exists (see
1649 \begin_inset CommandInset ref
1651 reference "sec:Converters"
1655 ), the format will appear in the
1656 \begin_inset Flex Noun
1659 \begin_layout Plain Layout
1660 File\SpecialChar menuseparator
1667 The format will also appear in the
1668 \begin_inset Flex Noun
1671 \begin_layout Plain Layout
1672 Document\SpecialChar menuseparator
1678 menu if a viewer is specified for the format.
1679 Pure image formats, such as
1680 \begin_inset Flex Code
1683 \begin_layout Plain Layout
1689 , should not use this option.
1690 Formats that can both represent vector graphics and documents like
1691 \begin_inset Flex Code
1694 \begin_layout Plain Layout
1703 \begin_layout Standard
1705 \begin_inset Flex Noun
1708 \begin_layout Plain Layout
1709 Vector graphics format
1714 tells \SpecialChar LyX
1715 that a format can contain vector graphics.
1716 This information is used to determine the target format of included graphics
1718 \begin_inset Flex Noun
1721 \begin_layout Plain Layout
1728 Included graphics may need to be converted to either
1729 \begin_inset Flex Noun
1732 \begin_layout Plain Layout
1739 \begin_inset Flex Noun
1742 \begin_layout Plain Layout
1749 \begin_inset Flex Noun
1752 \begin_layout Plain Layout
1759 \begin_inset Flex Noun
1762 \begin_layout Plain Layout
1768 cannot handle other image formats.
1769 If an included graphic is not already in
1770 \begin_inset Flex Noun
1773 \begin_layout Plain Layout
1780 \begin_inset Flex Noun
1783 \begin_layout Plain Layout
1790 \begin_inset Flex Noun
1793 \begin_layout Plain Layout
1799 format, it is converted to
1800 \begin_inset Flex Noun
1803 \begin_layout Plain Layout
1809 if the vector format option is set, and otherwise to
1810 \begin_inset Flex Noun
1813 \begin_layout Plain Layout
1822 \begin_layout Section
1826 \begin_layout Standard
1827 Since all conversions from one format to another take place in \SpecialChar LyX
1829 directory, it is sometimes necessary to modify a file before copying it
1830 to the temporary directory in order that the conversion may be performed.
1834 \begin_layout Plain Layout
1835 For example, the file may refer to other files—images, for example—using
1836 relative file names, and these may become invalid when the file is copied
1837 to the temporary directory.
1842 This is done by a Copier: It copies a file to (or from) the temporary directory
1843 and may modify it in the process.
1846 \begin_layout Standard
1847 The definitions of the copiers may use eight variables:
1850 \begin_layout Labeling
1851 \labelwidthstring 00.00.0000
1852 \begin_inset Flex Code
1855 \begin_layout Plain Layout
1861 The \SpecialChar LyX
1862 system directory (e.
1863 \begin_inset space \thinspace{}
1867 \begin_inset space \space{}
1871 \begin_inset Flex Noun
1874 \begin_layout Plain Layout
1883 \begin_layout Labeling
1884 \labelwidthstring 00.00.0000
1885 \begin_inset Flex Code
1888 \begin_layout Plain Layout
1897 \begin_layout Labeling
1898 \labelwidthstring 00.00.0000
1899 \begin_inset Flex Code
1902 \begin_layout Plain Layout
1911 \begin_layout Labeling
1912 \labelwidthstring 00.00.0000
1913 \begin_inset Flex Code
1916 \begin_layout Plain Layout
1922 The base name (without filename extension) in the \SpecialChar LyX
1926 \begin_layout Labeling
1927 \labelwidthstring 00.00.0000
1928 \begin_inset Flex Code
1931 \begin_layout Plain Layout
1937 The full directory path of the \SpecialChar LyX
1941 \begin_layout Labeling
1942 \labelwidthstring 00.00.0000
1943 \begin_inset Flex Code
1946 \begin_layout Plain Layout
1952 The full pathname to the original \SpecialChar LyX
1953 file being processed
1956 \begin_layout Labeling
1957 \labelwidthstring 00.00.0000
1958 \begin_inset Flex Code
1961 \begin_layout Plain Layout
1967 The filename (without any directory path) of the \SpecialChar LyX
1971 \begin_layout Labeling
1972 \labelwidthstring 00.00.0000
1973 \begin_inset Flex Code
1976 \begin_layout Plain Layout
1982 The `\SpecialChar LaTeX
1986 \begin_layout Standard
1987 The latter should be the filename as it would be used in a \SpecialChar LaTeX
1995 It is relevant only when exporting files suitable for such inclusion.
1998 \begin_layout Standard
1999 Copiers can be used to do almost anything with output files.
2000 For example, suppose you want generated pdf files to be copied to a special
2002 \begin_inset Flex Code
2005 \begin_layout Plain Layout
2012 Then you could write a shell script such as this one:
2015 \begin_layout Standard
2016 \begin_inset listings
2020 \begin_layout Plain Layout
2025 \begin_layout Plain Layout
2030 \begin_layout Plain Layout
2032 TOFILE=`basename $2`
2035 \begin_layout Plain Layout
2037 cp $FROMFILE /home/you/pdf/$TOFILE
2042 Save it in your local \SpecialChar LyX
2044 \begin_inset Flex Code
2047 \begin_layout Plain Layout
2048 /home/you/.lyx/scripts/pdfcopier.sh
2053 —and make it executable, if you need to do so on your platform.
2055 \begin_inset Flex Noun
2058 \begin_layout Plain Layout
2059 Tools\SpecialChar menuseparator
2065 dialog, select under
2066 \begin_inset Flex Noun
2069 \begin_layout Plain Layout
2070 File Handling\SpecialChar menuseparator
2077 \begin_inset Flex Noun
2080 \begin_layout Plain Layout
2086 format—or one of the other pdf formats—and enter
2087 \begin_inset Flex Code
2090 \begin_layout Plain Layout
2091 pdfcopier.sh $$i $$o
2097 \begin_inset Flex Noun
2100 \begin_layout Plain Layout
2110 \begin_layout Standard
2111 Copiers are used by \SpecialChar LyX
2112 in various of its own conversions.
2113 For example, if appropriate programs are found, \SpecialChar LyX
2114 will automatically install
2116 \begin_inset Flex Noun
2119 \begin_layout Plain Layout
2126 \begin_inset Flex Noun
2129 \begin_layout Plain Layout
2131 \begin_inset space ~
2140 When these formats are exported, the copier sees that not just the main
2141 HTML file but various associated files (style files, images, etc.) are also
2143 All these files are written to a subdirectory of the directory in which
2144 the original \SpecialChar LyX
2149 \begin_layout Plain Layout
2150 This copier can be customized.
2152 \begin_inset Quotes eld
2156 \begin_inset Quotes erd
2159 argument takes a comma-separated list of extensions to be copied; if it
2160 is omitted, all files will be copied.
2162 \begin_inset Quotes eld
2166 \begin_inset Quotes erd
2169 argument determines the extension added to the generated directory.
2171 \begin_inset Quotes eld
2175 \begin_inset Flex Noun
2178 \begin_layout Plain Layout
2185 \begin_inset Quotes erd
2188 , so HTML generated from
2189 \begin_inset Flex Noun
2192 \begin_layout Plain Layout
2193 /path/to/filename.lyx
2199 \begin_inset Flex Noun
2202 \begin_layout Plain Layout
2203 /path/to/filename.html.LyXconv
2217 \begin_layout Section
2219 \begin_inset CommandInset label
2221 name "sec:Converters"
2228 \begin_layout Standard
2229 You can define your own Converters to convert files between different formats.
2231 \begin_inset Flex Noun
2234 \begin_layout Plain Layout
2235 Tools\SpecialChar menuseparator
2236 Preferences\SpecialChar menuseparator
2237 File Handling\SpecialChar menuseparator
2246 \begin_layout Standard
2247 To define a new converter, select the
2248 \begin_inset Flex Noun
2251 \begin_layout Plain Layout
2253 \begin_inset space ~
2262 \begin_inset Flex Noun
2265 \begin_layout Plain Layout
2267 \begin_inset space ~
2275 from the drop-down lists, enter the command needed for the conversion,
2277 \begin_inset Flex Noun
2280 \begin_layout Plain Layout
2287 Several variables can be used in the definition of converters:
2290 \begin_layout Labeling
2291 \labelwidthstring 00.00.0000
2292 \begin_inset Flex Code
2295 \begin_layout Plain Layout
2301 The \SpecialChar LyX
2305 \begin_layout Labeling
2306 \labelwidthstring 00.00.0000
2307 \begin_inset Flex Code
2310 \begin_layout Plain Layout
2319 \begin_layout Labeling
2320 \labelwidthstring 00.00.0000
2321 \begin_inset Flex Code
2324 \begin_layout Plain Layout
2333 \begin_layout Labeling
2334 \labelwidthstring 00.00.0000
2335 \begin_inset Flex Code
2338 \begin_layout Plain Layout
2344 The base filename of the input file (i.
2345 \begin_inset space \thinspace{}
2348 g., without the extension)
2351 \begin_layout Labeling
2352 \labelwidthstring 00.00.0000
2353 \begin_inset Flex Code
2356 \begin_layout Plain Layout
2362 The path to the input file
2365 \begin_layout Labeling
2366 \labelwidthstring 00.00.0000
2367 \begin_inset Flex Code
2370 \begin_layout Plain Layout
2376 The path to the original input file (this is different from $$p when a
2377 chain of converters is called)
2380 \begin_layout Labeling
2381 \labelwidthstring 00.00.0000
2382 \begin_inset Flex Code
2385 \begin_layout Plain Layout
2391 The iconv name for the encoding of the document.
2394 \begin_layout Standard
2396 \begin_inset Flex Noun
2399 \begin_layout Plain Layout
2401 \begin_inset space ~
2409 field you can enter the following flags, separated by commas:
2412 \begin_layout Labeling
2413 \labelwidthstring 00.00.0000
2414 \begin_inset Flex Code
2417 \begin_layout Plain Layout
2423 This converter runs some form of \SpecialChar LaTeX
2425 This will make \SpecialChar LyX
2426 's \SpecialChar LaTeX
2427 error logs available.
2430 \begin_layout Labeling
2431 \labelwidthstring 00.00.0000
2432 \begin_inset Flex Code
2435 \begin_layout Plain Layout
2441 Needs the \SpecialChar LaTeX
2443 \begin_inset Flex Noun
2446 \begin_layout Plain Layout
2452 file for the conversion.
2455 \begin_layout Labeling
2456 \labelwidthstring 00.00.0000
2457 \begin_inset Flex Code
2460 \begin_layout Plain Layout
2467 \begin_inset Quotes eld
2471 \begin_inset Quotes erd
2474 file from the backend, which in practice means a \SpecialChar LaTeX
2475 file like the one we
2476 would export, without
2477 \begin_inset Flex Code
2480 \begin_layout Plain Layout
2489 \begin_layout Labeling
2490 \labelwidthstring 00.00.0000
2491 \begin_inset Flex Code
2494 \begin_layout Plain Layout
2503 \begin_layout Standard
2504 The following three flags are not really flags at all because they take
2506 \begin_inset Flex Noun
2509 \begin_layout Plain Layout
2511 \begin_inset space ~
2515 \begin_inset space ~
2526 \begin_layout Labeling
2527 \labelwidthstring 00.00.0000
2528 \begin_inset Flex Code
2531 \begin_layout Plain Layout
2537 If set, the converter's standard error will be redirected to a file
2538 \begin_inset Flex Code
2541 \begin_layout Plain Layout
2547 , and the script given as argument will be run as:
2548 \begin_inset Flex Code
2551 \begin_layout Plain Layout
2552 script < infile.out > infile.log
2558 The argument may contain
2559 \begin_inset Flex Code
2562 \begin_layout Plain Layout
2571 \begin_layout Labeling
2572 \labelwidthstring 00.00.0000
2573 \begin_inset Flex Code
2576 \begin_layout Plain Layout
2582 The name of the directory in which the converter will dump the generated
2585 will not create this directory, and it does not copy anything into it,
2586 though it will copy this directory to the destination.
2587 The argument may contain
2588 \begin_inset Flex Code
2591 \begin_layout Plain Layout
2597 , which will be replaced by the base name of the input and output files,
2598 respectively, when the directory is copied.
2599 \begin_inset Newline newline
2602 Note that resultdir and usetempdir make no sense together.
2603 The latter will be ignored if the former is given.
2606 \begin_layout Labeling
2607 \labelwidthstring 00.00.0000
2608 \begin_inset Flex Code
2611 \begin_layout Plain Layout
2617 Determines the output file name and may, contain
2618 \begin_inset Flex Code
2621 \begin_layout Plain Layout
2628 Sensible only with resultdir and optional even then; if not given, it defaults
2632 \begin_layout Standard
2633 None of these last three are presently used in any of the converters that
2634 are installed with \SpecialChar LyX
2639 \begin_layout Standard
2640 You do not have to define converters for all formats between which you want
2642 For example, you will note that there is no `\SpecialChar LyX
2643 to PostScript' converter,
2644 but \SpecialChar LyX
2645 will export PostScript.
2646 It does so by first creating a \SpecialChar LaTeX
2647 file (no converter needs to be defined
2648 for this) which is then converted to DVI using the `\SpecialChar LaTeX
2650 and finally converting the resulting DVI file to PostScript.
2652 finds such `chains' of converters automatically, and it will always choose
2653 the shortest possible chain.
2654 You can, though, still define multiple conversion methods between file
2656 For example, the standard \SpecialChar LyX
2657 configuration provides five ways to convert
2662 \begin_layout Enumerate
2664 \begin_inset Flex Noun
2667 \begin_layout Plain Layout
2676 \begin_layout Enumerate
2677 via (DVI and) PostScript, using
2678 \begin_inset Flex Noun
2681 \begin_layout Plain Layout
2690 \begin_layout Enumerate
2692 \begin_inset Flex Noun
2695 \begin_layout Plain Layout
2704 \begin_layout Enumerate
2706 \begin_inset Flex Noun
2709 \begin_layout Plain Layout
2719 \begin_layout Enumerate
2721 \begin_inset Flex Noun
2724 \begin_layout Plain Layout
2734 \begin_layout Standard
2735 To define such alternate chains, you must define multiple target `file formats',
2737 \begin_inset CommandInset ref
2739 reference "sec:Formats"
2744 For example, in the standard configuration, the formats named
2745 \begin_inset Flex Noun
2748 \begin_layout Plain Layout
2755 \begin_inset Flex Noun
2758 \begin_layout Plain Layout
2765 \begin_inset Flex Noun
2768 \begin_layout Plain Layout
2775 \begin_inset Flex Noun
2778 \begin_layout Plain Layout
2785 \begin_inset Flex Noun
2788 \begin_layout Plain Layout
2795 \begin_inset Flex Noun
2798 \begin_layout Plain Layout
2805 \begin_inset Flex Noun
2808 \begin_layout Plain Layout
2815 \begin_inset Flex Noun
2818 \begin_layout Plain Layout
2826 \begin_inset Flex Noun
2829 \begin_layout Plain Layout
2836 \begin_inset Flex Noun
2839 \begin_layout Plain Layout
2846 ) are defined, all of which share the extension
2847 \begin_inset Flex Noun
2850 \begin_layout Plain Layout
2856 , and which correspond to the conversion methods just mentioned.
2859 \begin_layout Chapter
2860 Internationalizing \SpecialChar LyX
2862 \begin_inset CommandInset label
2864 name "cha:Internationalizing-LyX"
2871 \begin_layout Standard
2873 supports using a translated interface.
2874 Last time we checked, \SpecialChar LyX
2875 provided text in thirty languages.
2876 The language of choice is called your
2881 (For further reading on locale settings, see also the documentation for
2882 locale that comes with your operating system.
2883 For Linux, the manual page for
2884 \begin_inset Flex Code
2887 \begin_layout Plain Layout
2893 could be a good place to start).
2896 \begin_layout Standard
2897 Notice that these translations will work, but do contain a few flaws.
2898 In particular, all dialogs have been designed with the English text in
2899 mind, which means that some of the translated text will be too large to
2900 fit within the space allocated.
2901 This is only a display problem and will not cause any harm.
2902 Also, you will find that some of the translations do not define shortcut
2903 keys for everything.
2904 Sometimes, there are simply not enough free letters to do it.
2905 Other times, the translator just hasn't got around to doing it yet.
2906 Our localization team, which you may wish to join,
2910 \begin_layout Plain Layout
2911 If you are a fluent speaker of a language other than English, joining these
2912 teams is a great way to give back to the \SpecialChar LyX
2918 will of course try to fix these shortcomings in future versions of \SpecialChar LyX
2922 \begin_layout Section
2923 Translating \SpecialChar LyX
2927 \begin_layout Subsection
2928 Translating the graphical user interface (text messages).
2931 \begin_layout Standard
2934 \begin_inset Flex Code
2937 \begin_layout Plain Layout
2943 library to handle the internationalization of the interface.
2944 To have \SpecialChar LyX
2945 speak your favorite language in all menus and dialogs, you need
2947 \begin_inset Flex Code
2950 \begin_layout Plain Layout
2956 -file for that language.
2957 When this is available, you'll have to generate a
2958 \begin_inset Flex Code
2961 \begin_layout Plain Layout
2967 -file from it and install the
2968 \begin_inset Flex Code
2971 \begin_layout Plain Layout
2978 The process of doing all of this is explained in the documentation for
2980 \begin_inset Flex Code
2983 \begin_layout Plain Layout
2990 It is possible to do this just for yourself, but if you're going to do
2991 it, you might as well share the results of your labors with the rest of
2992 the \SpecialChar LyX
2994 Send a message to the \SpecialChar LyX
2995 developers' list for more information about how
2999 \begin_layout Standard
3000 In short, this is what you should do (xx denotes the language code):
3003 \begin_layout Itemize
3004 Check out the \SpecialChar LyX
3007 \begin_inset CommandInset href
3009 name "information on the web"
3010 target "http://www.lyx.org/HowToUseGIT"
3017 \begin_layout Itemize
3019 \begin_inset Flex Code
3022 \begin_layout Plain Layout
3028 to the folder of the
3029 \begin_inset Flex Code
3032 \begin_layout Plain Layout
3040 \begin_inset Flex Code
3043 \begin_layout Plain Layout
3051 \begin_inset Flex Code
3054 \begin_layout Plain Layout
3060 doesn't exist anywhere, it can be remade with the console command
3061 \begin_inset Flex Code
3064 \begin_layout Plain Layout
3070 in that directory, or you can use an existing po-file for some other language
3074 \begin_layout Itemize
3076 \begin_inset Flex Code
3079 \begin_layout Plain Layout
3089 \begin_layout Plain Layout
3090 This is just a text file, so it can be edited in any text editor.
3091 But there are also specialized programs that support such editing, such
3096 (for all platforms) or
3105 contains a `mode' for editing
3106 \begin_inset Flex Code
3109 \begin_layout Plain Layout
3116 \begin_inset Flex URL
3119 \begin_layout Plain Layout
3121 https://www.gnu.org/software/gettext/manual/html_node/PO-Mode.html
3133 For some menu- and widget-labels, there are also shortcut keys that should
3135 Those keys are marked after a `|', and should be translated according to
3136 the words and phrases of the language.
3137 You should also fill also out the information at the beginning of the new
3139 \begin_inset Flex Code
3142 \begin_layout Plain Layout
3148 -file with your email-address, etc., so people know where to reach you with
3149 suggestions and entertaining flames.
3152 \begin_layout Standard
3153 If you are just doing this on your own, then:
3156 \begin_layout Itemize
3158 \begin_inset Flex Code
3161 \begin_layout Plain Layout
3168 This can be done with
3169 \begin_inset Flex Code
3172 \begin_layout Plain Layout
3173 msgfmt -o xx.mo < xx.po
3181 \begin_layout Itemize
3183 \begin_inset Flex Code
3186 \begin_layout Plain Layout
3192 -file to your locale-tree, at the correct directory for application messages
3197 xx, and under the name
3198 \begin_inset Flex Code
3201 \begin_layout Plain Layout
3208 \begin_inset space \thinspace{}
3212 \begin_inset space \space{}
3216 \begin_inset Flex Code
3219 \begin_layout Plain Layout
3220 /usr/local/share/locale/xx/LC_MESSAGES/lyx.mo
3230 \begin_layout Standard
3231 As said, however, it would be best if the new
3232 \begin_inset Flex Code
3235 \begin_layout Plain Layout
3241 file could be added to the \SpecialChar LyX
3242 distribution, so others can use it.
3243 Adding it involves making additional changes to \SpecialChar LyX
3245 So send an email to the developers' mailing list if you're interested in
3249 \begin_layout Subsubsection
3253 \begin_layout Standard
3254 Sometimes it turns out that one English message needs to be translated into
3255 different messages in the target language.
3256 One example is the message
3257 \begin_inset Flex Code
3260 \begin_layout Plain Layout
3266 which has the German translation
3274 , depending upon exactly what the English
3275 \begin_inset Quotes eld
3279 \begin_inset Quotes erd
3284 \begin_inset Flex Code
3287 \begin_layout Plain Layout
3293 does not handle such ambiguous translations.
3294 Therefore you have to add some context information to the message: Instead
3296 \begin_inset Flex Code
3299 \begin_layout Plain Layout
3306 \begin_inset Flex Code
3309 \begin_layout Plain Layout
3310 To[[as in 'From format x to format y']]
3316 \begin_inset Flex Code
3319 \begin_layout Plain Layout
3320 To[[as in 'From page x to page y']].
3325 Now the two occurrences of
3326 \begin_inset Flex Code
3329 \begin_layout Plain Layout
3336 \begin_inset Flex Code
3339 \begin_layout Plain Layout
3345 and can be translated correctly to
3356 \begin_layout Standard
3357 Of course the context information needs to be stripped off the original
3358 message when no translation is used.
3359 Therefore you have to put it in double square brackets at the end of the
3360 message (see the example above).
3361 The translation mechanism of \SpecialChar LyX
3362 ensures that everything in double square
3363 brackets at the end of messages is removed before displaying the message.
3366 \begin_layout Subsection
3367 Translating the documentation.
3370 \begin_layout Standard
3371 The online documentation (in the
3372 \begin_inset Flex Noun
3375 \begin_layout Plain Layout
3381 -menu) can (and should!) be translated.
3382 If there are translated versions of the documentation available
3386 \begin_layout Plain Layout
3387 As of March 2008, at least some of the documents have been translated into
3388 fourteen languages, with the Tutorial available in a few more.
3393 and the locale is set accordingly, these will be used automagically by
3397 looks for translated versions as
3398 \begin_inset Flex Code
3401 \begin_layout Plain Layout
3402 LyXDir/doc/xx/DocName.lyx
3408 \begin_inset Flex Code
3411 \begin_layout Plain Layout
3417 is the code for the language currently in use.
3418 If there are no translated documents, the default English versions will
3420 Note that the translated versions must have the same filenames (
3421 \begin_inset Flex Code
3424 \begin_layout Plain Layout
3430 above) as the original.
3431 If you feel up to translating the documentation (an excellent way to proof-read
3432 the original documentation by the way!), there are a few things you should
3436 \begin_layout Itemize
3437 Check out the documentation translation web page at
3438 \begin_inset CommandInset href
3440 name "http://www.lyx.org/Translation"
3441 target "http://www.lyx.org/Translation"
3446 That way, you can find out which (if any) documents have already been translate
3447 d into your language.
3448 You can also find out who (if anyone) is organizing the effort to translate
3449 the documentation into your language.
3450 If no one is organizing the effort, please let us know that you're interested.
3453 \begin_layout Standard
3454 Once you get to actually translating, here's a few hints for you that may
3458 \begin_layout Itemize
3459 Join the documentation team! There is information on how to do that in
3460 \begin_inset Flex Code
3463 \begin_layout Plain Layout
3470 \begin_inset Flex Noun
3473 \begin_layout Plain Layout
3474 Help\SpecialChar menuseparator
3480 ), which by the way is the first document you should translate.
3483 \begin_layout Itemize
3484 Learn the typographic conventions for the language you are translating to.
3485 Typography is an ancient art and over the centuries, a great variety of
3486 conventions have developed throughout different parts of the world.
3487 Also study the professional terminology amongst typographers in your country.
3488 Inventing your own terminology will only confuse the users.
3491 (Warning! Typography is addictive!)
3494 \begin_layout Itemize
3495 Make a copy of the document.
3496 This will be your working copy.
3497 You can use this as your personal translated help-file by placing it in
3499 \begin_inset Flex Code
3502 \begin_layout Plain Layout
3509 \begin_inset Note Greyedout
3512 \begin_layout Plain Layout
3517 For a complex document with external material (images, etc.), if you make
3519 \begin_inset space \thinspace{}
3523 \begin_inset space \space{}
3526 in a temp dir, beware that the links to external material may be broken
3527 when the document is moved to a different place.
3528 The best way is to retrieve the \SpecialChar LyX
3530 \begin_inset Flex URL
3533 \begin_layout Plain Layout
3535 http://www.lyx.org/HowToUseGIT
3540 ) and to edit the doc file in place.
3548 \begin_layout Itemize
3549 Sometimes the original document (from the \SpecialChar LyX
3550 team) will be updated.
3551 Use the source viewer at
3552 \begin_inset CommandInset href
3554 name "http://www.lyx.org/trac/timeline"
3555 target "http://www.lyx.org/trac/timeline"
3559 to see what has been changed.
3560 That way you can easily see which parts of the translated document need
3564 \begin_layout Standard
3565 If you ever find an error in the original document, fix it and notify the
3566 rest of the documentation team of the changes! (You didn't forget to join
3567 the documentation team, did you?)
3570 \begin_layout Standard
3571 \begin_inset Branch OutDated
3575 \begin_layout Section
3576 International Keyboard Support
3579 \begin_layout Standard
3582 [Editor's Note: The following section is by
3590 It needs to be fixed to conform to the new Documentation Style sheet and
3591 to make use of the new v1.0 features.
3592 The whole thing also needs to be merged with the section following it.-jw
3593 It may also be badly out of date.-rh (2008)]
3596 \begin_layout Subsection
3597 Defining Own Keymaps: Keymap File Format
3600 \begin_layout Standard
3601 Let's look at a keyboard definition file a little closer.
3602 It is a plain text file defining
3605 \begin_layout Itemize
3606 key-to-key or key-to-string translations
3609 \begin_layout Itemize
3613 \begin_layout Itemize
3614 dead keys exceptions
3617 \begin_layout Standard
3618 To define key-to-key or key-to-string translation, use this command:
3621 \begin_layout Quotation
3622 \begin_inset Flex Code
3625 \begin_layout Plain Layout
3634 \begin_inset Flex Code
3637 \begin_layout Plain Layout
3646 \begin_layout Standard
3648 \begin_inset Flex Code
3651 \begin_layout Plain Layout
3657 is the key to be translated and
3658 \begin_inset Flex Code
3661 \begin_layout Plain Layout
3667 is the string to be inserted into the document.
3668 To define dead keys, use:
3671 \begin_layout Quotation
3672 \begin_inset Flex Code
3675 \begin_layout Plain Layout
3684 \begin_inset Flex Code
3687 \begin_layout Plain Layout
3696 \begin_layout Standard
3698 \begin_inset Flex Code
3701 \begin_layout Plain Layout
3707 is a keyboard key and
3708 \begin_inset Flex Code
3711 \begin_layout Plain Layout
3718 The following dead keys are supported (shortcut name is in parentheses):
3721 \begin_layout Quotation
3725 \begin_inset space \hfill{}
3731 \begin_layout Quotation
3733 \begin_inset space \hfill{}
3739 \begin_layout Quotation
3741 \begin_inset space \hfill{}
3747 \begin_layout Quotation
3749 \begin_inset space \hfill{}
3755 \begin_layout Quotation
3757 \begin_inset space \hfill{}
3763 \begin_layout Quotation
3765 \begin_inset space \hfill{}
3772 \begin_layout Plain Layout
3784 \begin_layout Quotation
3786 \begin_inset space \hfill{}
3792 \begin_layout Quotation
3794 \begin_inset space \hfill{}
3801 \begin_layout Plain Layout
3813 \begin_layout Quotation
3815 \begin_inset space \hfill{}
3821 \begin_layout Quotation
3823 \begin_inset space \hfill{}
3829 \begin_layout Quotation
3831 \begin_inset space \hfill{}
3838 \begin_layout Plain Layout
3850 \begin_layout Quotation
3852 \begin_inset space \hfill{}
3859 \begin_layout Plain Layout
3871 \begin_layout Quotation
3873 \begin_inset space \hfill{}
3879 \begin_layout Quotation
3880 hungarian umlaut (hug)
3881 \begin_inset space \hfill{}
3887 \begin_layout Quotation
3889 \begin_inset space \hfill{}
3895 \begin_layout Quotation
3897 \begin_inset space \hfill{}
3904 \begin_layout Plain Layout
3916 \begin_layout Standard
3917 Since in many international keyboards there are exceptions to what some
3918 dead keys should do, you can define them using
3921 \begin_layout Quotation
3922 \begin_inset Flex Code
3925 \begin_layout Plain Layout
3933 deadkey key outstring
3936 \begin_layout Standard
3937 For example, on Slovak keyboard, if you enter caron-o, it generates circumflex-o
3941 \begin_layout Quotation
3942 \begin_inset Flex Code
3945 \begin_layout Plain Layout
3958 \begin_layout Standard
3959 to make it work correctly.
3960 Also, you have to define as exceptions dead keys over i and j, to remove
3961 the dot from them before inserting an accent mark.
3962 I will change this when the time comes, but so far I haven't had time.
3965 \begin_layout Standard
3966 Oh, and about characters: backslash is escaped, so to enter it, you'll need
3969 \begin_inset Flex Code
3972 \begin_layout Plain Layout
3978 have different meaning.
3980 \begin_inset Flex Code
3983 \begin_layout Plain Layout
3989 marks comments, quotes start and end \SpecialChar LaTeX
3991 To enter quote, you'll need to use
3992 \begin_inset Flex Code
3995 \begin_layout Plain Layout
4004 \begin_inset Flex Code
4007 \begin_layout Plain Layout
4014 \begin_inset Flex Code
4017 \begin_layout Plain Layout
4028 \begin_layout Standard
4029 If you make a keyboard description file that works for your language, please
4030 mail it to me, so I can include it in the next keymap distribution.
4033 \begin_layout Standard
4034 More keywords will be supported in keymap configuration file in future,
4038 \begin_layout Itemize
4039 \begin_inset Flex Code
4042 \begin_layout Plain Layout
4053 \begin_inset space \hfill{}
4057 \begin_inset Flex Code
4060 \begin_layout Plain Layout
4069 \begin_layout Itemize
4070 \begin_inset Flex Code
4073 \begin_layout Plain Layout
4084 \begin_inset space \hfill{}
4088 \begin_inset Flex Code
4091 \begin_layout Plain Layout
4097 an external keymap translation program
4100 \begin_layout Standard
4101 Also, it should look into
4102 \begin_inset Flex Code
4105 \begin_layout Plain Layout
4111 file for defaults, too (for example, a
4112 \begin_inset Flex Code
4115 \begin_layout Plain Layout
4123 option to include default keyboard).
4131 \begin_layout Section
4132 International Keymap Stuff
4133 \begin_inset CommandInset label
4135 name "sec:International-Keymap-Stuff"
4142 \begin_layout Standard
4143 \begin_inset Note Note
4146 \begin_layout Plain Layout
4147 In doing the revisions on this document in March 2008, I did not look over
4148 this stuff, as I do not understand it.
4149 It would be good if someone else could do so.
4158 \begin_layout Standard
4159 The next two sections describe the
4160 \begin_inset Flex Code
4163 \begin_layout Plain Layout
4172 \begin_inset Flex Code
4175 \begin_layout Plain Layout
4183 file syntax in detail.
4184 These sections should help you design your own key map if the ones provided
4185 do not meet your needs.
4188 \begin_layout Subsection
4192 \begin_layout Standard
4196 \begin_inset Flex Code
4199 \begin_layout Plain Layout
4205 file maps keystrokes to characters or strings.
4206 As the name suggests, it sets a keyboard mapping.
4208 \begin_inset Flex Code
4211 \begin_layout Plain Layout
4222 \begin_inset Flex Code
4225 \begin_layout Plain Layout
4240 \begin_inset Flex Code
4243 \begin_layout Plain Layout
4256 \begin_inset Flex Code
4259 \begin_layout Plain Layout
4268 \begin_inset Flex Code
4271 \begin_layout Plain Layout
4279 are described in this section.
4282 \begin_layout Labeling
4283 \labelwidthstring 00.00.0000
4284 \begin_inset Flex Code
4287 \begin_layout Plain Layout
4295 Map a character to a string
4298 \begin_layout LyX-Code
4313 \begin_layout Standard
4346 the double-quote (")
4363 must be escaped with a preceding backslash (
4374 \begin_layout Standard
4376 \begin_inset Flex Noun
4379 \begin_layout Plain Layout
4387 statement to cause the symbol
4388 \begin_inset Flex Noun
4391 \begin_layout Plain Layout
4399 to be output for the keystroke
4400 \begin_inset Flex Noun
4403 \begin_layout Plain Layout
4414 \begin_layout LyX-Code
4420 \begin_layout Labeling
4421 \labelwidthstring 00.00.0000
4422 \begin_inset Flex Code
4425 \begin_layout Plain Layout
4433 Specify an accent character
4436 \begin_layout LyX-Code
4445 \begin_layout Standard
4446 This will make the cha
4484 This is the dead key
4488 \begin_layout Plain Layout
4495 refers to a key that does not produce a character by itself, but when followed
4496 with another key, produces the desired accent character.
4497 For example, a German characte
4499 r with an umlaut like
4509 can be produced in this manner.
4518 \begin_layout Standard
4531 and then another key not in
4548 followed by the other, not allowed key, as output.
4552 \begin_inset Flex Noun
4555 \begin_layout Plain Layout
4563 cancels a dead key, so if
4574 \begin_inset Flex Noun
4577 \begin_layout Plain Layout
4586 , the cursor will not go one position backwards but will instead cancel
4602 might have had on the next keystroke.
4606 \begin_layout Standard
4607 The following example specifies that the character ' is to be an acute accent,
4608 allowed on the characters a, e, i, o, u, A, E, I, O, and U:
4611 \begin_layout LyX-Code
4614 kmod ' acute aeiouAEIOU
4617 \begin_layout Labeling
4618 \labelwidthstring 00.00.0000
4619 \begin_inset Flex Code
4622 \begin_layout Plain Layout
4628 Specify an exception to the accent character
4631 \begin_layout LyX-Code
4640 \begin_layout Standard
4641 This defines an exce
4682 have been assigned a keystroke with a previous
4685 \begin_inset Flex Code
4688 \begin_layout Plain Layout
4712 must not belong in the
4759 If such a declaration does not exist in
4767 \begin_inset Flex Code
4770 \begin_layout Plain Layout
4804 \begin_inset Flex Code
4807 \begin_layout Plain Layout
4821 \begin_layout Standard
4822 The following command produces causes äi to be produced when you enter acute-i
4826 \begin_layout LyX-Code
4840 \begin_layout Labeling
4841 \labelwidthstring 00.00.0000
4842 \begin_inset Flex Code
4845 \begin_layout Plain Layout
4851 Combine two accent characters
4854 \begin_layout LyX-Code
4860 accent1 accent2 allowed
4863 \begin_layout Standard
4864 This one is getting pretty esoteric.
4865 It allows you to combine the effect
4921 \begin_inset Flex Code
4924 \begin_layout Plain Layout
4952 \begin_layout Standard
4953 Consider this example from the
4954 \begin_inset Flex Code
4957 \begin_layout Plain Layout
4968 \begin_layout LyX-Code
4971 kmod ; acute aeioyvhAEIOYVH
4975 kcomb acute umlaut iyIY
4978 \begin_layout Standard
4979 This allows you to press
4980 \begin_inset Flex Noun
4983 \begin_layout Plain Layout
4991 and get the effect of
4992 \begin_inset Flex Code
4995 \begin_layout Plain Layout
5014 in this case cancels the last dead key, so if you press
5015 \begin_inset Flex Noun
5018 \begin_layout Plain Layout
5027 \begin_inset Flex Code
5030 \begin_layout Plain Layout
5043 \begin_layout Subsection
5047 \begin_layout Standard
5049 \begin_inset Flex Code
5052 \begin_layout Plain Layout
5060 mapping is performed, a
5061 \begin_inset Flex Code
5064 \begin_layout Plain Layout
5074 file maps the strings that the symbols generate to characters in the current
5076 The \SpecialChar LyX
5077 distribution currently includes at least the
5078 \begin_inset Flex Code
5081 \begin_layout Plain Layout
5090 \begin_inset Flex Code
5093 \begin_layout Plain Layout
5104 \begin_layout Standard
5106 \begin_inset Flex Code
5109 \begin_layout Plain Layout
5117 file is a sequence of declarations of the form
5120 \begin_layout LyX-Code
5133 \begin_layout Standard
5134 For example, in order to map
5135 \begin_inset Flex Noun
5138 \begin_layout Plain Layout
5148 to the corresponding character in the iso-8859-1 set (233), the following
5152 \begin_layout LyX-Code
5160 \begin_layout Standard
5162 \begin_inset Flex Code
5165 \begin_layout Plain Layout
5174 \begin_inset Flex Code
5177 \begin_layout Plain Layout
5195 the same character can apply to more than one string.
5197 \begin_inset Flex Code
5200 \begin_layout Plain Layout
5211 \begin_layout LyX-Code
5223 \begin_inset Newline newline
5239 \begin_layout Standard
5241 cannot find a mapping for the string produced by the keystroke or a
5242 deadkey sequence, it will check if it looks like an accented char and try
5243 to draw an accent over the character on screen.
5246 \begin_layout Subsection
5250 \begin_layout Standard
5251 There is a second way to add support for international characters through
5252 so-called dead-keys.
5253 A dead-key works in combination with a letter to produce an accented character.
5254 Here, we'll explain how to create a really simple dead-key to illustrate
5258 \begin_layout Standard
5259 Suppose you happen to need the circumflex character,
5260 \begin_inset Quotes eld
5264 \begin_inset Quotes erd
5269 \begin_inset Flex Noun
5272 \begin_layout Plain Layout
5279 \begin_inset space ~
5283 \begin_inset Flex Noun
5286 \begin_layout Plain Layout
5292 ] to the \SpecialChar LyX
5294 \begin_inset Flex Code
5297 \begin_layout Plain Layout
5304 \begin_inset Flex Code
5307 \begin_layout Plain Layout
5314 Now, whenever you type the
5315 \begin_inset Flex Noun
5318 \begin_layout Plain Layout
5324 -key followed by a letter, that letter will have a circumflex accent on
5326 For example, the sequence
5327 \begin_inset Quotes eld
5331 \begin_inset Flex Noun
5334 \begin_layout Plain Layout
5341 \begin_inset Quotes erd
5344 produces the letter:
5345 \begin_inset Quotes eld
5349 \begin_inset Quotes erd
5353 If you tried to type
5354 \begin_inset Quotes eld
5358 \begin_inset Flex Noun
5361 \begin_layout Plain Layout
5368 \begin_inset Quotes erd
5371 , however, \SpecialChar LyX
5372 will complain with a beep, since a
5373 \begin_inset Quotes eld
5377 \begin_inset Flex Noun
5380 \begin_layout Plain Layout
5387 \begin_inset Quotes erd
5390 never takes a circumflex accent.
5392 \begin_inset Flex Noun
5395 \begin_layout Plain Layout
5401 after a dead-key produces the bare-accent.
5402 Please note this last point! If you bind a key to a dead-key, you'll need
5403 to rebind the character on that key to yet another key.
5405 \begin_inset Flex Noun
5408 \begin_layout Plain Layout
5414 to a cedilla is a bad idea, since you'll only get cedillas instead of commas.
5417 \begin_layout Standard
5418 One common way to bind dead-keys is to use
5419 \begin_inset Flex Noun
5422 \begin_layout Plain Layout
5429 \begin_inset Flex Noun
5432 \begin_layout Plain Layout
5439 \begin_inset Flex Noun
5442 \begin_layout Plain Layout
5448 in combination with an accent, like
5449 \begin_inset Quotes eld
5453 \begin_inset Flex Noun
5456 \begin_layout Plain Layout
5463 \begin_inset Quotes erd
5467 \begin_inset Quotes eld
5471 \begin_inset Flex Noun
5474 \begin_layout Plain Layout
5481 \begin_inset Quotes erd
5485 \begin_inset Quotes eld
5489 \begin_inset Flex Noun
5492 \begin_layout Plain Layout
5499 \begin_inset Quotes erd
5503 Another way involves using
5504 \begin_inset Flex Code
5507 \begin_layout Plain Layout
5514 \begin_inset Flex Code
5517 \begin_layout Plain Layout
5523 to set up the special
5524 \begin_inset Flex Code
5527 \begin_layout Plain Layout
5535 \begin_inset Flex Code
5538 \begin_layout Plain Layout
5544 acts in some ways just like
5545 \begin_inset Flex Noun
5548 \begin_layout Plain Layout
5554 and permits you to bind keys to accented characters.
5555 You can also turn keys into dead-keys by binding them to something like
5557 \begin_inset Flex Code
5560 \begin_layout Plain Layout
5566 and then binding this symbolic key to the corresponding \SpecialChar LyX
5571 \begin_layout Plain Layout
5576 : This is exactly what I do in my
5577 \begin_inset Flex Code
5580 \begin_layout Plain Layout
5587 \begin_inset Flex Code
5590 \begin_layout Plain Layout
5598 \begin_inset Flex Noun
5601 \begin_layout Plain Layout
5603 \begin_inset space ~
5612 \begin_inset Flex Code
5615 \begin_layout Plain Layout
5621 and a bunch of these
5622 \begin_inset Quotes eld
5626 \begin_inset Flex Code
5629 \begin_layout Plain Layout
5636 \begin_inset Quotes erd
5639 symbolic keys bound such things as
5640 \begin_inset Flex Noun
5643 \begin_layout Plain Layout
5645 \begin_inset space ~
5654 \begin_inset Flex Noun
5657 \begin_layout Plain Layout
5659 \begin_inset space ~
5668 This is how I produce my accented characters.
5673 You can make just about anything into the
5674 \begin_inset Flex Code
5677 \begin_layout Plain Layout
5684 \begin_inset Flex Noun
5687 \begin_layout Plain Layout
5693 keys, a spare function key, etc.
5694 As for the \SpecialChar LyX
5695 commands that produce accents, check the entry for
5696 \begin_inset Flex Code
5699 \begin_layout Plain Layout
5710 You'll find the complete list there.
5713 \begin_layout Subsection
5714 Saving your Language Configuration
5717 \begin_layout Standard
5718 You can edit your preferences so that your desired language environment
5719 is automatically configured when \SpecialChar LyX
5721 \begin_inset Flex Noun
5724 \begin_layout Plain Layout
5725 Edit\SpecialChar menuseparator
5734 \begin_layout Chapter
5735 Installing New Document Classes, Layouts, and Templates
5736 \begin_inset CommandInset label
5738 name "cha:Installing-New-Document"
5743 \begin_inset Argument 1
5746 \begin_layout Plain Layout
5747 Installing New Document Classes
5755 \begin_layout Standard
5756 In this chapter, we describe the procedures for creating and installing
5757 new \SpecialChar LyX
5758 layout and template files, as well as offer a refresher on correctly
5759 installing new \SpecialChar LaTeX
5764 \begin_layout Standard
5765 First, let us a say a few words about how one ought to think about the relation
5766 between \SpecialChar LyX
5767 and \SpecialChar LaTeX
5769 The thing to understand is that, in a certain sense, \SpecialChar LyX
5770 doesn't know anything
5771 about \SpecialChar LaTeX
5773 Indeed, from \SpecialChar LyX
5774 's point of view, \SpecialChar LaTeX
5775 is just one of several
5776 \begin_inset Quotes eld
5780 \begin_inset Quotes erd
5783 in which it is capable of producing output.
5784 Other such formats are DocBook, plaintext, and XHTML.
5786 is, of course, a particularly important format, but very little of the
5787 information \SpecialChar LyX
5788 has about \SpecialChar LaTeX
5789 is actually contained in the program itself.
5793 \begin_layout Plain Layout
5794 Some commands are sufficiently complex that they are
5795 \begin_inset Quotes eld
5799 \begin_inset Quotes erd
5802 into \SpecialChar LyX
5804 But the developers generally regard this as a Bad Thing.
5809 Rather, that information, even for the standard classes like
5810 \begin_inset Flex Code
5813 \begin_layout Plain Layout
5819 , is contained in `layout files'.
5820 Similarly, \SpecialChar LyX
5821 itself does not know much about DocBook or XHTML.
5822 What it knows is contained in layout files.
5825 \begin_layout Standard
5826 You can think of the layout file for a given document class as a translation
5827 manual between \SpecialChar LyX
5828 constructs—paragraphs with their corresponding styles,
5829 certain sorts of insets, etc—and the corresponding \SpecialChar LaTeX
5832 Almost everything \SpecialChar LyX
5834 \begin_inset Flex Code
5837 \begin_layout Plain Layout
5843 , for example, is contained in the file
5844 \begin_inset Flex Code
5847 \begin_layout Plain Layout
5853 and in various other files it includes.
5854 For this reason, anyone intending to write layout files should plan to
5855 study the existing files.
5856 A good place to start is with
5857 \begin_inset Flex Code
5860 \begin_layout Plain Layout
5866 , which is included in
5867 \begin_inset Flex Code
5870 \begin_layout Plain Layout
5877 \begin_inset Flex Code
5880 \begin_layout Plain Layout
5886 , and many of the other layout files for document classes.
5887 This file is where sections and the like are defined:
5888 \begin_inset Flex Code
5891 \begin_layout Plain Layout
5897 tells \SpecialChar LyX
5898 how paragraphs that are marked with the Section, Subsection, etc,
5899 styles can be translated into corresponding \SpecialChar LaTeX
5900 , DocBook, and XHTML commands
5903 \begin_inset Flex Code
5906 \begin_layout Plain Layout
5912 file basically just includes several of these
5913 \begin_inset Flex Code
5916 \begin_layout Plain Layout
5925 \begin_layout Standard
5926 Defining the \SpecialChar LyX
5928 correspondence is not the only thing layout files do, though.
5929 Their other job is to define how the \SpecialChar LyX
5930 constructs themselves will appear
5932 The fact that layout files have these two jobs is often a source of confusion,
5933 because they are completely separate.
5934 Telling \SpecialChar LyX
5935 how to translate a certain paragraph style into \SpecialChar LaTeX
5938 how to display it; conversely, telling \SpecialChar LyX
5939 how to display a certain paragraph
5940 style does not tell \SpecialChar LyX
5941 how to translate it into \SpecialChar LaTeX
5942 (let alone tell \SpecialChar LaTeX
5945 So, in general, when you define a new \SpecialChar LyX
5946 construct, you must always do two
5947 quite separate things: (i)
5948 \begin_inset space ~
5951 tell \SpecialChar LyX
5952 how to translate it into \SpecialChar LaTeX
5954 \begin_inset space ~
5957 tell \SpecialChar LyX
5961 \begin_layout Standard
5962 Much the same is true, of course, as regards \SpecialChar LyX
5963 's other backend formats, though
5964 XHTML is in some ways different, because in that case \SpecialChar LyX
5969 able, to some extent, to use information about how it should display a
5970 paragraph on the screen to output information (in the form of CSS) about
5971 how the paragraph should be displayed in a browser.
5972 Even in this case, however, the distinction between what \SpecialChar LyX
5974 and how things are rendered externally remains in force, and the two can
5975 be controlled separately.
5977 \begin_inset CommandInset ref
5979 reference "sec:Tags-for-XHTML"
5986 \begin_layout Section
5987 Installing new \SpecialChar LaTeX
5991 \begin_layout Standard
5992 Some installations may not include a \SpecialChar LaTeX
5993 package or class file that you would
5994 like to use within \SpecialChar LyX
5996 For example, you might need Foil\SpecialChar TeX
5997 , a package for preparing slides for overhead
5999 Modern \SpecialChar LaTeX
6000 distributions like \SpecialChar TeX
6001 Live (2008 or newer) or MiK\SpecialChar TeX
6002 provide a user interface
6003 for installing such packages.
6004 For example, with MiK\SpecialChar TeX
6005 , you start the program
6006 \begin_inset Quotes eld
6010 \begin_inset space ~
6014 \begin_inset Quotes erd
6017 to get a list of available packages.
6018 To install one of them, right click on it or use the corresponding toolbar
6022 \begin_layout Standard
6023 If your \SpecialChar LaTeX
6024 distribution does not provide such a `package manager', or if the
6025 package is not available from your distribution, then follow these steps
6026 to install it manually:
6029 \begin_layout Enumerate
6030 Get the package from
6031 \begin_inset CommandInset href
6034 target "http://www.ctan.org/"
6041 \begin_layout Enumerate
6042 If the package contains a file with the ending
6043 \begin_inset Quotes eld
6047 \begin_inset Flex Code
6050 \begin_layout Plain Layout
6057 \begin_inset Quotes erd
6060 (is the case for Foil\SpecialChar TeX
6061 ) then open a console, change to the folder of this
6062 file and execute the command
6063 \begin_inset Flex Code
6066 \begin_layout Plain Layout
6073 You have now unpacked the package and have all files to install it.
6074 Most \SpecialChar LaTeX
6075 -packages are not packed and you can skip this step.
6078 \begin_layout Enumerate
6079 Now you need to decide if the package should be available for all users
6084 \begin_layout Enumerate
6085 On *nix systems (Linux, OSX, etc.), if you want the new package to be available
6086 for all users on your system, then install it in your `local' \SpecialChar TeX
6088 install it in your own `user' \SpecialChar TeX
6090 Where these trees should be created, if they do not already exist, depends
6092 To find this out, look in the file
6093 \begin_inset Flex Code
6096 \begin_layout Plain Layout
6106 \begin_layout Plain Layout
6107 This is usually in the directory
6108 \begin_inset Flex Code
6111 \begin_layout Plain Layout
6117 , though you can execute the command
6118 \begin_inset Flex Code
6121 \begin_layout Plain Layout
6132 The location of the `local' \SpecialChar TeX
6133 tree is defined by the
6134 \begin_inset Flex Code
6137 \begin_layout Plain Layout
6143 variable; this is usually somewhere like
6144 \begin_inset Flex Code
6147 \begin_layout Plain Layout
6148 /usr/local/share/texmf
6153 or /usr/local/texlive/XXXX where XXXX is the year of the installed \SpecialChar TeX
6156 The location of the `user' \SpecialChar TeX
6158 \begin_inset Flex Code
6161 \begin_layout Plain Layout
6168 \begin_inset Flex Code
6171 \begin_layout Plain Layout
6178 \begin_inset Flex Code
6181 \begin_layout Plain Layout
6191 (If these variables are not predefined, you have to define them.) You'll
6192 probably need root permissions to create or modify the `local' tree, but
6193 not for your `user' tree.
6194 \begin_inset Newline newline
6197 In general, it is recommended to install in the user tree because your user
6198 will not be modified or even overwritten when you upgrade your system.
6199 It will typically also be backed up together with everything else when
6200 you backup your home directory (which, of course, you do on a regular basis).
6203 \begin_layout Enumerate
6204 On Windows, if you want the new package to be available for all users on
6205 your system, change to the folder where \SpecialChar LaTeX
6206 is installed and then change to
6208 \begin_inset Flex Code
6211 \begin_layout Plain Layout
6222 (For MiK\SpecialChar TeX
6223 , this would be by default the folder
6224 \begin_inset Flex Code
6227 \begin_layout Plain Layout
6245 \begin_layout Plain Layout
6246 Note that this will be the correct path only on English installations.
6247 On a German one, it would be
6248 \begin_inset Flex Code
6251 \begin_layout Plain Layout
6265 , and similarly for other languages.
6270 Create there a new folder
6271 \begin_inset Flex Code
6274 \begin_layout Plain Layout
6280 and copy all files of the package into it.
6282 \begin_inset Newline newline
6285 If the package should only available for you or you don't have admin permissions
6286 , do the same, but in the local \SpecialChar LaTeX
6289 \begin_inset space \thinspace{}
6292 g., for MiK\SpecialChar TeX
6294 \begin_inset space ~
6297 2.8 under Windows XP, this would be the folder:
6298 \begin_inset Newline newline
6304 \begin_inset Flex Code
6307 \begin_layout Plain Layout
6310 Documents and Settings
6322 \begin_inset Newline newline
6328 \begin_inset Phantom HPhantom
6331 \begin_layout Plain Layout
6342 \begin_inset Flex Code
6345 \begin_layout Plain Layout
6358 \begin_inset Newline newline
6361 On Vista, it would be:
6362 \begin_inset Newline newline
6366 \begin_inset Flex Code
6369 \begin_layout Plain Layout
6395 \begin_layout Enumerate
6396 Now one only need to tell \SpecialChar LaTeX
6397 that there are new files.
6398 This depends on the used \SpecialChar LaTeX
6403 \begin_layout Enumerate
6404 For \SpecialChar TeX
6405 Live execute the command
6406 \begin_inset Flex Code
6409 \begin_layout Plain Layout
6416 If you installed the package for all users, then you will probably need
6417 to have root permissions for that.
6420 \begin_layout Enumerate
6421 For MiK\SpecialChar TeX
6422 , if you have installed the package for all users, start the program
6424 \begin_inset Quotes eld
6428 \begin_inset space ~
6432 \begin_inset Quotes erd
6435 and press the button marked
6436 \begin_inset Quotes eld
6440 \begin_inset Quotes erd
6444 Otherwise start the program
6445 \begin_inset Quotes eld
6449 \begin_inset Quotes erd
6456 \begin_layout Enumerate
6457 Finally, you need to tell \SpecialChar LyX
6458 that there are new packages available.
6459 So, in \SpecialChar LyX
6461 \begin_inset Flex Noun
6464 \begin_layout Plain Layout
6467 \SpecialChar menuseparator
6473 and then restart \SpecialChar LyX
6477 \begin_layout Standard
6478 Now the package is installed.
6479 In our example, the document class
6480 \begin_inset Flex Code
6483 \begin_layout Plain Layout
6485 \begin_inset space ~
6493 will now be available under
6494 \begin_inset Flex Noun
6497 \begin_layout Plain Layout
6498 Document\SpecialChar menuseparator
6499 Settings\SpecialChar menuseparator
6509 \begin_layout Standard
6510 If you would like to use a \SpecialChar LaTeX
6511 document class that is not even listed in the
6513 \begin_inset Flex Noun
6516 \begin_layout Plain Layout
6517 Document\SpecialChar menuseparator
6518 Settings\SpecialChar menuseparator
6524 , then you need to create a `layout' file for it.
6525 That is the topic of the next section.
6528 \begin_layout Section
6529 Types of layout files
6532 \begin_layout Standard
6533 This section describes the various sorts of \SpecialChar LyX
6534 files that contain layout informati
6536 These files describe various paragraph and character styles, determining
6537 how \SpecialChar LyX
6538 should display them and how they should be translated into \SpecialChar LaTeX
6540 XHTML, or whatever output format is being used.
6544 \begin_layout Standard
6545 We shall try to provide a thorough description of the process of writing
6547 However, there are so many different types of documents supported even
6548 by just \SpecialChar LaTeX
6549 that we can't hope to cover every different possibility or problem
6550 you might encounter.
6551 The \SpecialChar LyX
6552 users' list is frequented by people with lots of experience with layout
6553 design who are willing to share what they've learned, so please feel free
6554 to ask questions there.
6557 \begin_layout Standard
6558 As you prepare to write a new layout, it is extremely helpful to look at
6559 the layouts distributed with \SpecialChar LyX
6561 If you write a \SpecialChar LyX
6562 layout for a \SpecialChar LaTeX
6563 document class that might also be used by
6564 others, or write a module that might be useful to others, then you should
6565 consider posting your layout to the
6566 \begin_inset CommandInset href
6568 name "layout section on the LyX wiki"
6569 target "http://wiki.lyx.org/Layouts/Layouts"
6573 or even to the \SpecialChar LyX
6574 developers' list, so that it might be included in \SpecialChar LyX
6579 \begin_layout Plain Layout
6580 Note that \SpecialChar LyX
6581 is licensed under the General Public License, so any material
6582 that is contributed to \SpecialChar LyX
6583 must be similarly licensed.
6591 \begin_layout Subsection
6593 \begin_inset CommandInset label
6595 name "subsec:Layout-modules"
6602 \begin_layout Standard
6603 We have spoken to this point about `layout files'.
6604 But there are different sorts of files that contain layout information.
6605 Layout files, strictly so called, have the
6606 \begin_inset Flex Code
6609 \begin_layout Plain Layout
6615 extension and provide \SpecialChar LyX
6616 with information about document classes.
6617 Since \SpecialChar LyX
6618 1.6 layout information can also be contained in layout
6623 \begin_inset Flex Code
6626 \begin_layout Plain Layout
6633 Modules are to \SpecialChar LaTeX
6634 packages much as layouts are to \SpecialChar LaTeX
6635 classes, and some modules—such
6637 \begin_inset Flex Code
6640 \begin_layout Plain Layout
6646 module—specifically provide support for one package.
6647 In a sense, layout modules are similar to included
6651 \begin_layout Plain Layout
6652 These can have any extension, but by convention have the
6653 \begin_inset Flex Code
6656 \begin_layout Plain Layout
6668 \begin_inset Flex Code
6671 \begin_layout Plain Layout
6677 —in that modules are not specific to a given document class but may be used
6678 with many different classes.
6679 The difference is that using an included file with
6680 \begin_inset Flex Code
6683 \begin_layout Plain Layout
6689 requires editing that file.
6690 Modules, by contrast, are selected in the
6691 \begin_inset Flex Noun
6694 \begin_layout Plain Layout
6695 Document\SpecialChar menuseparator
6704 \begin_layout Standard
6705 Building modules is the easiest way to get started with layout editing,
6706 since it can be as simple as adding a single new paragraph style or flex
6708 But modules may, in principle, contain anything a layout file can contain.
6711 \begin_layout Standard
6712 After creating a new module and copying it to the
6713 \begin_inset Flex Code
6716 \begin_layout Plain Layout
6722 folder, you will need to reconfigure and then restart \SpecialChar LyX
6725 However, changes you make to the module will be seen immediately, if you
6727 \begin_inset Flex Noun
6730 \begin_layout Plain Layout
6731 Document\SpecialChar menuseparator
6737 , highlight something, and then hit
6738 \begin_inset Quotes eld
6742 \begin_inset Quotes erd
6748 It is strongly recommended that you save your work before doing this
6753 it is strongly recommended that you not attempt to edit modules while simultaneo
6754 usly working on actual documents
6757 Though of course the developers strive to keep \SpecialChar LyX
6758 stable in such situations,
6759 syntax errors and the like in your module file could cause strange behavior.
6762 \begin_layout Subsubsection
6766 \begin_layout Standard
6767 Modules are to \SpecialChar LyX
6768 as packages are to \SpecialChar LaTeX
6770 Sometimes, however, you find yourself wanting a specific inset or character
6771 style just for one document and writing a module that will also be available
6772 to other documents makes little sense.
6773 What you need is \SpecialChar LyX
6775 \begin_inset Quotes eld
6779 \begin_inset Quotes erd
6785 \begin_layout Standard
6786 You will find it under
6788 Document\SpecialChar menuseparator
6789 Settings\SpecialChar menuseparator
6793 The large text box allows you to enter anything that you might enter in
6794 a layout file or module.
6795 You can think of a document's local layout, in fact, as a module that belongs
6797 So, in particular, you must enter a
6798 \begin_inset Flex Code
6801 \begin_layout Plain Layout
6808 Any format is acceptable, but one would normally use the format current
6810 (In \SpecialChar LyX
6811 2.2, the current layout format is 60.)
6814 \begin_layout Standard
6815 When you have entered something in the
6816 \begin_inset Flex Code
6819 \begin_layout Plain Layout
6825 pane, \SpecialChar LyX
6827 \begin_inset Quotes eld
6831 \begin_inset Quotes erd
6834 button at the bottom.
6835 Clicking this button will cause \SpecialChar LyX
6836 to determine whether what you have entered
6837 is valid layout information for the chosen format.
6839 will report the result but, unfortunately, will not tell you what errors
6840 there might have been.
6841 These will be written to the terminal, however, if \SpecialChar LyX
6842 is started from a terminal.
6843 You will not be permitted to save your local layout until you have entered
6847 \begin_layout Standard
6848 The warnings at the end of the previous section apply here, too.
6849 Do not play with local layout while you are actually working, especially
6850 if you have not saved your document.
6851 That said, using local layout with a test document can be a very convenient
6852 way to try out layout ideas, or even to start developing a module.
6855 \begin_layout Subsection
6857 \begin_inset Flex Noun
6860 \begin_layout Plain Layout
6869 \begin_layout Standard
6870 There are two situations you are likely to encounter when wanting to support
6871 a new \SpecialChar LaTeX
6872 document class, involving style (
6873 \begin_inset Flex Code
6876 \begin_layout Plain Layout
6882 ) files and \SpecialChar LaTeX2e
6884 \begin_inset Flex Code
6887 \begin_layout Plain Layout
6894 Supporting a style file is usually fairly easy.
6895 Supporting a new class file is a bit harder.
6896 We'll discuss the former in this section and the latter in the next.
6897 Similar remarks apply, of course, if you want to support a new DocBook
6901 \begin_layout Standard
6902 The easier case is the one in which your new document class is provided
6903 as a style file that is to be used in conjunction with an already supported
6905 For the sake of the example, we'll assume that the style file is called
6907 \begin_inset Flex Noun
6910 \begin_layout Plain Layout
6916 and that it is meant to be used with
6917 \begin_inset Flex Noun
6920 \begin_layout Plain Layout
6926 , which is a standard class.
6930 \begin_layout Standard
6931 Start by copying the existing class's layout file into your local directory:
6935 \begin_layout Plain Layout
6936 Of course, which directory is your local directory will vary by platform,
6937 and \SpecialChar LyX
6938 allows you to specify your local directory on startup, too, using
6940 \begin_inset Flex Code
6943 \begin_layout Plain Layout
6957 \begin_layout LyX-Code
6958 cp report.layout ~/.lyx/layouts/myclass.layout
6961 \begin_layout Standard
6963 \begin_inset Flex Code
6966 \begin_layout Plain Layout
6972 and change the line:
6975 \begin_layout LyX-Code
6978 DeclareLaTeXClass{report}
6981 \begin_layout Standard
6985 \begin_layout LyX-Code
6988 DeclareLaTeXClass[report, myclass.sty]{report (myclass)}
6991 \begin_layout Standard
6995 \begin_layout LyX-Code
6997 \begin_inset Newline newline
7003 \begin_inset Newline newline
7009 \begin_layout Standard
7010 near the top of the file.
7013 \begin_layout Standard
7014 Start \SpecialChar LyX
7016 \begin_inset Flex Noun
7019 \begin_layout Plain Layout
7020 Tools\SpecialChar menuseparator
7027 Then restart \SpecialChar LyX
7028 and try creating a new document.
7030 \begin_inset Flex Noun
7033 \begin_layout Plain Layout
7039 " as a document class option in the
7040 \begin_inset Flex Noun
7043 \begin_layout Plain Layout
7044 Document\SpecialChar menuseparator
7051 It is likely that some of the sectioning commands and such in your new
7052 class will work differently from how they worked in the base class—
7053 \begin_inset Flex Code
7056 \begin_layout Plain Layout
7062 in this example—so you can fiddle around with the settings for the different
7063 sections if you wish.
7064 The layout information for sections is contained in
7065 \begin_inset Flex Code
7068 \begin_layout Plain Layout
7074 , but you do not need to copy and change this file.
7075 Instead, you can simply add your changes to your layout file, after the
7077 \begin_inset Flex Code
7080 \begin_layout Plain Layout
7086 , which itself includes
7087 \begin_inset Flex Code
7090 \begin_layout Plain Layout
7097 For example, you might add these lines:
7100 \begin_layout LyX-Code
7104 \begin_layout LyX-Code
7108 \begin_layout LyX-Code
7112 \begin_layout LyX-Code
7116 \begin_layout LyX-Code
7120 \begin_layout Standard
7121 to change the font for chapter headings to sans-serif.
7122 This will override (or, in this case, add to) the existing declaration
7123 for the Chapter style.
7127 \begin_layout Standard
7128 Your new package may also provide commands or environments not present in
7130 In this case, you will want to add these to the layout file.
7132 \begin_inset CommandInset ref
7134 reference "sec:TextClass"
7138 for information on how to do so.
7141 \begin_layout Standard
7143 \begin_inset Flex Noun
7146 \begin_layout Plain Layout
7152 can be used with several different document classes, and even if it cannot,
7153 you might find it easiest just to write a module that you can load with
7155 The simplest possible such module would be:
7158 \begin_layout LyX-Code
7161 DeclareLyXModule{My Package}
7164 \begin_layout LyX-Code
7168 \begin_layout LyX-Code
7169 #Support for mypkg.sty.
7172 \begin_layout LyX-Code
7174 \begin_inset Newline newline
7180 \begin_layout LyX-Code
7182 \begin_inset Newline newline
7188 \begin_layout LyX-Code
7190 \begin_inset Newline newline
7196 \begin_inset Newline newline
7202 \begin_layout Standard
7203 A more complex module might modify the behavior of some existing constructs
7204 or define some new ones.
7206 \begin_inset CommandInset ref
7208 reference "sec:TextClass"
7215 \begin_layout Subsection
7217 \begin_inset Flex Noun
7220 \begin_layout Plain Layout
7229 \begin_layout Standard
7230 There are two possibilities here.
7231 One is that the class file is itself based upon an existing document class.
7232 For example, many thesis classes are based upon
7233 \begin_inset Flex Noun
7236 \begin_layout Plain Layout
7243 To see whether yours is, look for a line like
7246 \begin_layout LyX-Code
7252 \begin_layout Standard
7254 If so, then you may proceed largely as in the previous section, though
7256 \begin_inset Flex Code
7259 \begin_layout Plain Layout
7260 Declare\SpecialChar LaTeX
7266 line will be different.
7267 If your new class is
7268 \begin_inset Flex Code
7271 \begin_layout Plain Layout
7277 and it is based upon
7278 \begin_inset Flex Code
7281 \begin_layout Plain Layout
7287 , then the line should read:
7291 \begin_layout Plain Layout
7292 And it will be easiest if you save the file to
7293 \begin_inset Flex Code
7296 \begin_layout Plain Layout
7303 assumes that the document class has the same name as the layout file.
7312 \begin_layout LyX-Code
7315 DeclareLaTeXClass[thesis,book]{thesis}
7318 \begin_layout Standard
7319 If, on the other hand, the new class is not based upon an existing class,
7320 you will probably have to
7321 \begin_inset Quotes eld
7325 \begin_inset Quotes erd
7329 We strongly suggest copying an existing layout file which uses a similar
7331 class and then modifying it, if you can do so.
7332 At least use an existing file as a starting point so you can find out what
7333 items you need to worry about.
7334 Again, the specifics are covered below.
7337 \begin_layout Subsection
7339 \begin_inset CommandInset label
7341 name "subsec:Creating-Templates"
7348 \begin_layout Standard
7349 Once you have written a layout file for a new document class, you might
7350 want to consider writing a
7355 A template acts as a kind of tutorial for your layout, showing how it might
7356 be used, though containing dummy content.
7357 You can of course look at the various templates included with \SpecialChar LyX
7361 \begin_layout Standard
7362 Templates are created just like usual documents: using \SpecialChar LyX
7364 The only difference is that usual documents contain all possible settings,
7365 including the font scheme and the paper size.
7366 Usually a user doesn't want a template to overwrite his preferred settings
7367 for such parameters.
7368 For that reason, the designer of a template should remove the corresponding
7370 \begin_inset Flex Code
7373 \begin_layout Plain Layout
7382 \begin_inset Flex Code
7385 \begin_layout Plain Layout
7393 from the template \SpecialChar LyX
7395 This can be done with any simple text-editor, for example
7396 \begin_inset Flex Code
7399 \begin_layout Plain Layout
7406 \begin_inset Flex Code
7409 \begin_layout Plain Layout
7418 \begin_layout Standard
7419 Put the edited template files you create in
7420 \begin_inset Flex Code
7423 \begin_layout Plain Layout
7429 , copy the ones you use from the global template directory in
7430 \begin_inset Flex Code
7433 \begin_layout Plain Layout
7439 to the same place, and redefine the template path in the
7440 \begin_inset Flex Noun
7443 \begin_layout Plain Layout
7444 Tools\SpecialChar menuseparator
7445 Preferences\SpecialChar menuseparator
7454 \begin_layout Standard
7455 Note, by the way, that there is a template which has a particular meaning:
7457 \begin_inset Flex Code
7460 \begin_layout Plain Layout
7467 This template is loaded every time you create a new document with
7468 \begin_inset Flex Noun
7471 \begin_layout Plain Layout
7472 File\SpecialChar menuseparator
7478 in order to provide useful defaults.
7479 To create this template from inside \SpecialChar LyX
7480 , all you have to do is to open a document
7481 with the correct settings, and use the
7482 \begin_inset Flex Noun
7485 \begin_layout Plain Layout
7486 Save as Document Defaults
7494 \begin_layout Subsection
7495 Upgrading old layout files
7498 \begin_layout Standard
7499 The format of layout files changes with each \SpecialChar LyX
7500 release, so old layout files
7501 need to be converted to the new format.
7503 reads a layout file in an older format, it automatically calls the
7505 \begin_inset Flex Code
7508 \begin_layout Plain Layout
7514 to convert it to a temporary file in current format.
7515 The original file is left untouched.
7516 If you use the layout file often, then, you may want to convert it permanently,
7517 so that \SpecialChar LyX
7518 does not have to do so itself every time.
7519 To do this, you can call the converter manually:
7522 \begin_layout Enumerate
7524 \begin_inset Flex Code
7527 \begin_layout Plain Layout
7534 \begin_inset Flex Code
7537 \begin_layout Plain Layout
7546 \begin_layout Enumerate
7548 \begin_inset Newline newline
7552 \begin_inset Flex Code
7555 \begin_layout Plain Layout
7556 python LyXDir/scripts/layout2layout.py myclass.old myclass.layout
7562 \begin_inset Newline newline
7566 \begin_inset Flex Code
7569 \begin_layout Plain Layout
7575 is the name of your \SpecialChar LyX
7579 \begin_layout Standard
7580 Note that manual conversion does not affect included files, so these will
7581 have to be converted separately.
7582 \change_inserted -712698321 1483873435
7586 \begin_layout Subsection
7588 \change_inserted -712698321 1483875083
7589 \begin_inset CommandInset label
7591 name "subsec:Cite-Engine-Files"
7598 \begin_layout Standard
7600 \change_inserted -712698321 1483874213
7601 A specific form of layout files are the so-called
7602 \begin_inset Flex Code
7605 \begin_layout Plain Layout
7607 \change_inserted -712698321 1483873546
7613 files that are located in the
7614 \begin_inset Flex Code
7617 \begin_layout Plain Layout
7619 \change_inserted -712698321 1483873546
7626 Their purpose is to define the specifics of \SpecialChar LaTeX
7627 packages aimed at bibliography
7640 , but also the way how normal Bib\SpecialChar TeX
7641 citations (without additional packages)
7642 are handled in \SpecialChar LyX
7643 is defined in such a file.
7647 \begin_layout Standard
7649 \change_inserted -712698321 1483874969
7650 More specifically, it is defined which packages \SpecialChar LyX
7651 needs to load, which citation
7652 commands are available, how these are to be displayed in \SpecialChar LyX
7654 the dialogs, the context menus) as well as in the XHTML and plain text
7656 Furthermore, the files specify available style variants (author-year, numerical
7657 , etc.) and their specifics.
7658 The cite engine files are also used to generate the options that are available
7661 Document\SpecialChar menuseparator
7662 Settings\SpecialChar ldots
7663 \SpecialChar menuseparator
7664 Bibliography\SpecialChar menuseparator
7670 \begin_layout Standard
7672 \change_inserted -712698321 1483875180
7673 Even though a cite engine file is essentially a normal layout file that
7674 could theoretically include any layout information, it usually primarily
7675 includes some specific parameters such as
7676 \begin_inset Flex Code
7679 \begin_layout Plain Layout
7681 \change_inserted -712698321 1483874688
7690 \begin_inset Flex Code
7693 \begin_layout Plain Layout
7695 \change_inserted -712698321 1483875180
7704 \begin_inset Flex Code
7707 \begin_layout Plain Layout
7709 \change_inserted -712698321 1483874477
7718 \begin_inset Flex Code
7721 \begin_layout Plain Layout
7723 \change_inserted -712698321 1483874482
7732 The syntax of the latter two is described in
7733 \begin_inset CommandInset ref
7735 reference "subsec:Citation-engine-description"
7743 \begin_inset CommandInset ref
7745 reference "subsec:Citation-format-description"
7749 , as well as in the files themselves.
7754 \begin_layout Section
7755 \begin_inset CommandInset label
7757 name "sec:TextClass"
7761 The layout file format
7764 \begin_layout Standard
7765 The following sections describe how layout files are structured and written.
7766 Our advice is to go slowly, save and test often.
7767 It is really not that hard, except that the multitude of options can become
7768 overwhelming, especially if you try to check out too many at once.
7769 It becomes easier if you use existing layouts of \SpecialChar LyX
7770 as examples/reference
7771 or if you modify an existing layout to your needs.
7774 \begin_layout Standard
7775 Note that all the tags used in layout files are case-insensitive.
7777 \begin_inset Flex Code
7780 \begin_layout Plain Layout
7787 \begin_inset Flex Code
7790 \begin_layout Plain Layout
7797 \begin_inset Flex Code
7800 \begin_layout Plain Layout
7806 are really the same tag.
7807 The possible arguments are printed in brackets after the tag's name.
7808 The default argument is typeset
7809 \begin_inset Flex Code
7812 \begin_layout Plain Layout
7821 If the argument has a data type like
7822 \begin_inset Quotes eld
7826 \begin_inset Quotes erd
7830 \begin_inset Quotes eld
7834 \begin_inset Quotes erd
7837 , the default is shown like this:
7838 \begin_inset Flex Code
7841 \begin_layout Plain Layout
7852 \begin_layout Subsection
7853 The document class declaration and classification
7856 \begin_layout Standard
7857 Lines in a layout file which begin with
7858 \begin_inset Flex Code
7861 \begin_layout Plain Layout
7868 There is one exception to this rule.
7870 \begin_inset Flex Code
7873 \begin_layout Plain Layout
7879 files should begin with lines like:
7882 \begin_layout LyX-Code
7885 #% Do not delete the line below; configure depends on this
7888 \begin_layout LyX-Code
7893 DeclareLaTeXClass{Article (Standard Class)}
7896 \begin_layout LyX-Code
7901 DeclareCategory{Articles}
7904 \begin_layout Standard
7905 The second and third lines are used when you (re)configure \SpecialChar LyX
7907 The layout file is read by the \SpecialChar LaTeX
7909 \begin_inset Flex Code
7912 \begin_layout Plain Layout
7918 , in a special mode where
7919 \begin_inset Flex Code
7922 \begin_layout Plain Layout
7929 The first line is just a \SpecialChar LaTeX
7930 comment, the second one contains the mandatory
7931 declaration of the text class and the third line contains the optional
7932 classification of the class.
7933 If these lines appear in a file named
7934 \begin_inset Flex Code
7937 \begin_layout Plain Layout
7943 , then they define a text class of name
7944 \begin_inset Flex Code
7947 \begin_layout Plain Layout
7953 (the name of the layout file) which uses the \SpecialChar LaTeX
7955 \begin_inset Flex Code
7958 \begin_layout Plain Layout
7964 (the default is to use the same name as the layout).
7966 \begin_inset Quotes eld
7969 Article (Standard Class)
7970 \begin_inset Quotes erd
7973 that appears above is used as a description of the text class in the
7974 \begin_inset Flex Noun
7977 \begin_layout Plain Layout
7978 Document\SpecialChar menuseparator
7986 \begin_inset Quotes eld
7990 \begin_inset Quotes erd
7993 in the example) is also used in the
7994 \begin_inset Flex Noun
7997 \begin_layout Plain Layout
7998 Document\SpecialChar menuseparator
8004 dialog: the text classes are grouped by these categories (which are usually
8005 genres, so typical categories are
8006 \begin_inset Quotes eld
8010 \begin_inset Quotes erd
8014 \begin_inset Quotes eld
8018 \begin_inset Quotes erd
8022 \begin_inset Quotes eld
8026 \begin_inset Quotes erd
8030 \begin_inset Quotes eld
8034 \begin_inset Quotes erd
8038 \begin_inset Quotes eld
8042 \begin_inset Quotes erd
8046 \begin_inset Quotes eld
8050 \begin_inset Quotes erd
8054 If no category has been declared, the class will be put in the
8055 \begin_inset Quotes eld
8059 \begin_inset Quotes erd
8065 \begin_layout Standard
8066 Let's assume that you wrote your own text class that uses the
8067 \begin_inset Flex Code
8070 \begin_layout Plain Layout
8076 document class, but where you changed the appearance of the section headings.
8077 If you put it in a file
8078 \begin_inset Flex Code
8081 \begin_layout Plain Layout
8087 , the header of this file should be:
8090 \begin_layout LyX-Code
8093 #% Do not delete the line below; configure depends on this
8096 \begin_layout LyX-Code
8101 DeclareLaTeXClass[article]{Article (with My Own Headings)}
8104 \begin_layout LyX-Code
8109 DeclareCategory{Articles}
8112 \begin_layout Standard
8113 This declares a text class
8114 \begin_inset Flex Code
8117 \begin_layout Plain Layout
8123 , associated with the \SpecialChar LaTeX
8125 \begin_inset Flex Code
8128 \begin_layout Plain Layout
8135 \begin_inset Quotes eld
8138 Article (with My Own Headings)
8139 \begin_inset Quotes erd
8143 If your text class depends on several packages, you can declare it as:
8146 \begin_layout LyX-Code
8149 #% Do not delete the line below; configure depends on this
8152 \begin_layout LyX-Code
8157 DeclareLaTeXClass[article,foo.sty]{Article (with My Own Headings)}
8160 \begin_layout LyX-Code
8165 DeclareCategory{Articles}
8168 \begin_layout Standard
8169 This indicates that your text class uses the
8170 \begin_inset Flex Code
8173 \begin_layout Plain Layout
8180 Finally, it is also possible to declare classes for DocBook code.
8181 Typical declarations will look like:
8184 \begin_layout LyX-Code
8187 #% Do not delete the line below; configure depends on this
8190 \begin_layout LyX-Code
8195 DeclareDocBookClass[article]{SGML (DocBook Article)}
8198 \begin_layout LyX-Code
8203 DeclareCategory{Articles (DocBook)}
8206 \begin_layout Standard
8207 Note that these declarations can also be given an optional parameter declaring
8208 the name of the document class (but not a list).
8211 \begin_layout Standard
8212 So, to be as explicit as possible, the form of the layout declaration is:
8215 \begin_layout LyX-Code
8220 DeclareLaTeXClass[class,package.sty]{layout description}
8223 \begin_layout LyX-Code
8228 DeclareCategory{category}
8231 \begin_layout Standard
8232 The class need only be specified if the name of the \SpecialChar LaTeX
8234 name of the layout file are different or if there are packages to load.
8235 If the name of the class file is not specified, then \SpecialChar LyX
8237 that it is the same as the name of the layout file.
8240 \begin_layout Standard
8241 When the text class has been modified to your taste, all you have to do
8242 is to copy it either to
8243 \begin_inset Flex Code
8246 \begin_layout Plain Layout
8253 \begin_inset Flex Code
8256 \begin_layout Plain Layout
8263 \begin_inset Flex Noun
8266 \begin_layout Plain Layout
8267 Tools\SpecialChar menuseparator
8273 , exit \SpecialChar LyX
8275 Then your new text class should be available along with the others.
8278 \begin_layout Standard
8279 Once the layout file is installed, you can edit it and see your changes
8280 without having to reconfigure or to restart \SpecialChar LyX
8286 \begin_layout Plain Layout
8287 In versions of \SpecialChar LyX
8288 prior to 1.6, this was not true.
8289 As a result, editing layout files was very time consuming, since you had
8290 constantly to restart \SpecialChar LyX
8296 You can force a reload of the current layout by using the \SpecialChar LyX
8298 \begin_inset Flex Noun
8301 \begin_layout Plain Layout
8308 There is no default binding for this function—though, of course, you can
8309 bind it to a key yourself.
8310 But you will normally use this function simply by entering it in the mini-buffe
8315 \begin_layout Standard
8321 \begin_inset Flex Noun
8324 \begin_layout Plain Layout
8330 is very much an `advanced feature'.
8335 recommended that you save your work before using this function.
8340 recommended that you not attempt to edit layout information while simultaneousl
8341 y working on a document that you care about.
8342 Use a test document.
8343 Syntax errors and the like in your layout file could cause peculiar behavior.
8344 In particular, such errors could cause \SpecialChar LyX
8345 to regard the current layout as
8346 invalid and to attempt to switch to some other layout.
8350 \begin_layout Plain Layout
8351 Really bad syntax errors may even caused \SpecialChar LyX
8353 This is because certain sorts of errors may make \SpecialChar LyX
8364 The \SpecialChar LyX
8365 team strives to keep \SpecialChar LyX
8366 stable in such situations, but safe is better
8371 \begin_layout Plain Layout
8372 While we're giving advice: make regular backups.
8373 And be nice to your mother.
8381 \begin_layout Subsection
8382 The Module declaration
8385 \begin_layout Standard
8386 A module must begin with a line like the following:
8389 \begin_layout LyX-Code
8392 DeclareLyXModule[endnotes.sty]{Endnotes}
8395 \begin_layout Standard
8396 The mandatory argument, in curly brackets, is the name of the module, as
8398 \begin_inset Flex Noun
8401 \begin_layout Plain Layout
8402 Document\SpecialChar menuseparator
8403 Settings\SpecialChar menuseparator
8410 The argument in square brackets is optional: It declares any \SpecialChar LaTeX
8412 on which the module depends.
8413 It is also possible to use the form
8414 \begin_inset Flex Noun
8417 \begin_layout Plain Layout
8423 as an optional argument, which declares that the module can only be used
8424 when there exists a conversion chain between the formats `
8425 \begin_inset Flex Code
8428 \begin_layout Plain Layout
8435 \begin_inset Flex Code
8438 \begin_layout Plain Layout
8447 \begin_layout Standard
8448 The module declaration should then be followed by lines like the following
8452 \begin_layout Plain Layout
8453 Preferably in English if the module should be published with \SpecialChar LyX
8455 This description will appear in the list of messages to be translated and
8456 will be thus translated with the next interface update.
8464 \begin_layout LyX-Code
8468 \begin_layout LyX-Code
8469 #Adds an endnote command, in addition to footnotes.
8473 \begin_layout LyX-Code
8474 #You will need to add
8476 theendnotes in TeX code where you
8479 \begin_layout LyX-Code
8480 #want the endnotes to appear.
8484 \begin_layout LyX-Code
8488 \begin_layout LyX-Code
8489 #Requires: somemodule | othermodule
8492 \begin_layout LyX-Code
8493 #Excludes: badmodule
8496 \begin_layout Standard
8497 The description is used in
8498 \begin_inset Flex Noun
8501 \begin_layout Plain Layout
8502 Document\SpecialChar menuseparator
8503 Settings\SpecialChar menuseparator
8509 to provide the user with information about what the module does.
8511 \begin_inset Flex Code
8514 \begin_layout Plain Layout
8520 line is used to identify other modules with which this one must be used;
8522 \begin_inset Flex Code
8525 \begin_layout Plain Layout
8531 line is used to identify modules with which this one may not be used.
8532 Both are optional, and, as shown, multiple modules should be separated
8533 with the pipe symbol: |.
8534 Note that the required modules are treated disjunctively:
8538 of the required modules must be used.
8543 excluded module may be used.
8544 Note that modules are identified here by their filenames without the
8545 \begin_inset Flex Code
8548 \begin_layout Plain Layout
8556 \begin_inset Flex Code
8559 \begin_layout Plain Layout
8566 \begin_inset Flex Code
8569 \begin_layout Plain Layout
8576 \change_inserted -712698321 1483873000
8580 \begin_layout Subsection
8582 \change_inserted -712698321 1483873010
8583 The CiteEngine file declaration
8586 \begin_layout Standard
8588 \change_inserted -712698321 1483873022
8589 A cite engine file must begin with a line like the following:
8592 \begin_layout LyX-Code
8594 \change_inserted -712698321 1483873047
8597 DeclareLyXCiteEngineModule[biblatex.sty]{Biblatex}
8600 \begin_layout Standard
8602 \change_inserted -712698321 1483873077
8603 The mandatory argument, in curly brackets, is the name of the module, as
8605 \begin_inset Flex Noun
8608 \begin_layout Plain Layout
8610 \change_inserted -712698321 1483873068
8611 Document\SpecialChar menuseparator
8612 Settings\SpecialChar menuseparator
8619 The argument in square brackets is optional: It declares any \SpecialChar LaTeX
8621 on which the cite engine depends.
8624 \begin_layout Standard
8626 \change_inserted -712698321 1483873102
8627 The cite engine declaration should then be followed by lines like the following
8631 \begin_layout Plain Layout
8633 \change_inserted -712698321 1483873000
8634 Preferably in English if the module should be published with \SpecialChar LyX
8636 This description will appear in the list of messages to be translated and
8637 will be thus translated with the next interface update.
8645 \begin_layout LyX-Code
8647 \change_inserted -712698321 1483873128
8651 \begin_layout LyX-Code
8653 \change_inserted -712698321 1483873140
8654 # Biblatex supports many author-year and numerical styles.
8657 \begin_layout LyX-Code
8659 \change_inserted -712698321 1483873152
8660 # It is mainly aimed at the Humanities.
8664 \begin_layout LyX-Code
8666 \change_inserted -712698321 1483873160
8667 # customizable, fully localized and provides many features
8670 \begin_layout LyX-Code
8672 \change_inserted -712698321 1483873170
8673 # that are not possible with BibTeX.
8674 The use of 'biber' as
8677 \begin_layout LyX-Code
8679 \change_inserted -712698321 1483873174
8680 # bibliography processor is advised.
8683 \begin_layout LyX-Code
8685 \change_inserted -712698321 1483873224
8689 \begin_layout Standard
8691 \change_inserted -712698321 1483873207
8692 The description is used in
8693 \begin_inset Flex Noun
8696 \begin_layout Plain Layout
8698 \change_inserted -712698321 1483873194
8699 Document\SpecialChar menuseparator
8700 Settings\SpecialChar menuseparator
8706 to provide the user with information about the cite engine.
8711 \begin_layout Subsection
8715 \begin_layout Standard
8716 The first non-comment line of any layout file, included file, or module
8721 contain the file format number:
8724 \begin_layout Description
8725 \begin_inset Flex Code
8728 \begin_layout Plain Layout
8735 \begin_inset Flex Code
8738 \begin_layout Plain Layout
8744 ] The format number of the layout file.
8747 \begin_layout Standard
8748 This tag was introduced with \SpecialChar LyX
8750 \begin_inset space ~
8754 Layout files from older \SpecialChar LyX
8755 versions do not have an explicit file format and
8756 are considered to have
8757 \begin_inset Flex Code
8760 \begin_layout Plain Layout
8762 \begin_inset space ~
8771 The format for the present version of \SpecialChar LyX
8773 But each version of \SpecialChar LyX
8774 is capable of reading earlier versions' layout files,
8775 just as they are capable of reading files produced by earlier versions
8778 There is, however, no provision for converting to earlier formats.
8781 \begin_layout Subsection
8782 \begin_inset CommandInset label
8784 name "subsec:General-text-class"
8788 General text class parameters
8791 \begin_layout Standard
8792 These are general parameters that govern the behavior of an entire document
8798 mean that they must appear in
8799 \begin_inset Flex Code
8802 \begin_layout Plain Layout
8808 files rather than in modules.
8809 A module can contain any layout tag.)
8812 \begin_layout Description
8813 \begin_inset Flex Code
8816 \begin_layout Plain Layout
8822 Adds information that will be output in the
8823 \begin_inset Flex Code
8826 \begin_layout Plain Layout
8832 block when the document is output to XHTML.
8833 Typically, this would be used to output CSS style information, but it can
8834 be used for anything that can appear in
8835 \begin_inset Flex Code
8838 \begin_layout Plain Layout
8846 \begin_inset Quotes eld
8850 \begin_inset Flex Code
8853 \begin_layout Plain Layout
8860 \begin_inset Quotes erd
8866 \begin_layout Description
8867 \begin_inset Flex Code
8870 \begin_layout Plain Layout
8876 Adds information to the document preamble.
8878 \begin_inset Newline newline
8882 \begin_inset Quotes eld
8886 \begin_inset Flex Code
8889 \begin_layout Plain Layout
8896 \begin_inset Quotes erd
8900 \change_inserted -712698321 1483872509
8904 \begin_layout Description
8906 \change_inserted -712698321 1483874560
8907 \begin_inset Flex Code
8910 \begin_layout Plain Layout
8912 \change_inserted -712698321 1483872558
8918 Defines the possibilities for displaying citation references.
8920 \begin_inset CommandInset ref
8922 reference "subsec:Citation-engine-description"
8931 \begin_inset Quotes eld
8935 \begin_inset Flex Code
8938 \begin_layout Plain Layout
8940 \change_inserted -712698321 1483872548
8947 \begin_inset Quotes erd
8951 Primarily used in cite engine files (see
8952 \begin_inset CommandInset ref
8954 reference "subsec:Cite-Engine-Files"
8966 \begin_layout Description
8967 \begin_inset Flex Code
8970 \begin_layout Plain Layout
8976 Defines formats for use in the display of bibliographic information.
8978 \begin_inset CommandInset ref
8980 reference "subsec:Citation-format-description"
8986 \begin_inset Quotes eld
8990 \begin_inset Flex Code
8993 \begin_layout Plain Layout
9000 \begin_inset Quotes erd
9005 \change_inserted -712698321 1483875199
9006 Primarily used in cite engine files (see
9007 \begin_inset CommandInset ref
9009 reference "subsec:Cite-Engine-Files"
9021 \begin_layout Description
9023 \change_inserted -712698321 1483874578
9024 \begin_inset Flex Code
9027 \begin_layout Plain Layout
9029 \change_inserted -712698321 1483872820
9036 \begin_inset Flex Code
9039 \begin_layout Plain Layout
9041 \change_inserted -712698321 1483872852
9052 \begin_inset Flex Code
9055 \begin_layout Plain Layout
9057 \change_inserted -712698321 1483872857
9065 ] Determines whether
9069 or Bib\SpecialChar TeX
9070 is used to generate a Bibliography.
9071 Primarily used in cite engine files (see
9072 \begin_inset CommandInset ref
9074 reference "subsec:Cite-Engine-Files"
9086 \begin_layout Description
9087 \begin_inset Flex Code
9090 \begin_layout Plain Layout
9096 Describes various global options supported by the document class.
9098 \begin_inset CommandInset ref
9100 reference "subsec:ClassOptions"
9106 \begin_inset Quotes eld
9110 \begin_inset Flex Code
9113 \begin_layout Plain Layout
9120 \begin_inset Quotes erd
9126 \begin_layout Description
9127 \begin_inset Flex Code
9130 \begin_layout Plain Layout
9137 \begin_inset Flex Code
9140 \begin_layout Plain Layout
9149 \begin_inset space \thinspace{}
9153 \begin_inset Flex Code
9156 \begin_layout Plain Layout
9162 ] Whether the class should
9166 to having one or two columns.
9167 Can be changed in the
9168 \begin_inset Flex Noun
9171 \begin_layout Plain Layout
9172 Document\SpecialChar menuseparator
9181 \begin_layout Description
9182 \begin_inset Flex Code
9185 \begin_layout Plain Layout
9192 \begin_inset Flex Code
9195 \begin_layout Plain Layout
9201 ] This sequence defines the properties for a counter.
9202 If the counter does not yet exist, it is created; if it does exist, it
9205 \begin_inset Quotes eld
9209 \begin_inset Flex Code
9212 \begin_layout Plain Layout
9219 \begin_inset Quotes erd
9223 \begin_inset Newline newline
9227 \begin_inset CommandInset ref
9229 reference "subsec:Counters"
9233 for details on counters.
9236 \begin_layout Description
9237 \begin_inset Flex Code
9240 \begin_layout Plain Layout
9246 Sets the default font used to display the document.
9248 \begin_inset CommandInset ref
9250 reference "subsec:Font-description"
9254 for how to declare fonts.
9256 \begin_inset Quotes eld
9260 \begin_inset Flex Code
9263 \begin_layout Plain Layout
9270 \begin_inset Quotes erd
9276 \begin_layout Description
9277 \begin_inset Flex Code
9280 \begin_layout Plain Layout
9287 \begin_inset Flex Code
9290 \begin_layout Plain Layout
9296 ] Specifies a module to be included by default with this document class.
9297 The module is specified as filename without the
9298 \begin_inset Flex Code
9301 \begin_layout Plain Layout
9308 The user can still remove the module, but it will be active at the outset.
9309 (This applies only when new files are created, or when this class is chosen
9310 for an existing document.)
9313 \begin_layout Description
9314 \begin_inset Flex Code
9317 \begin_layout Plain Layout
9324 \begin_inset Flex Code
9327 \begin_layout Plain Layout
9333 ] This is the style that will be assigned to new paragraphs, usually
9334 \begin_inset Flex Noun
9337 \begin_layout Plain Layout
9344 This will default to the first defined style if not given, but you are
9345 encouraged to use this directive.
9348 \begin_layout Description
9349 \begin_inset Flex Code
9352 \begin_layout Plain Layout
9359 \begin_inset Flex Code
9362 \begin_layout Plain Layout
9368 ] This tag indicates that the module (which is specified by filename without
9370 \begin_inset Flex Code
9373 \begin_layout Plain Layout
9379 extension) cannot be used with this document class.
9380 This might be used in a journal-specific layout file to prevent, say, the
9382 \begin_inset Flex Code
9385 \begin_layout Plain Layout
9391 module that numbers theorems by section.
9396 be used in a module.
9397 Modules have their own way of excluding other modules (see
9398 \begin_inset CommandInset ref
9400 reference "subsec:Layout-modules"
9407 \begin_layout Description
9408 \begin_inset Flex Code
9411 \begin_layout Plain Layout
9417 Defines a new float.
9419 \begin_inset CommandInset ref
9421 reference "subsec:Floats"
9427 \begin_inset Quotes eld
9431 \begin_inset Flex Code
9434 \begin_layout Plain Layout
9441 \begin_inset Quotes erd
9447 \begin_layout Description
9448 \begin_inset Flex Code
9451 \begin_layout Plain Layout
9457 Sets the information that will be output in the
9458 \begin_inset Flex Code
9461 \begin_layout Plain Layout
9467 block when this document class is output to XHTML.
9468 Note that this will completely override any prior
9469 \begin_inset Flex Code
9472 \begin_layout Plain Layout
9479 \begin_inset Flex Code
9482 \begin_layout Plain Layout
9490 \begin_inset Newline newline
9494 \begin_inset Flex Code
9497 \begin_layout Plain Layout
9503 if you just want to add material to the preamble.) Must end with
9504 \begin_inset Quotes eld
9508 \begin_inset Flex Code
9511 \begin_layout Plain Layout
9518 \begin_inset Quotes erd
9524 \begin_layout Description
9525 \begin_inset Flex Code
9528 \begin_layout Plain Layout
9535 \begin_inset Flex Code
9538 \begin_layout Plain Layout
9544 ] The style to use for the table of contents, bibliography, and so forth,
9545 when the document is output to HTML.
9546 For articles, this should normally be
9547 \begin_inset Flex Code
9550 \begin_layout Plain Layout
9557 \begin_inset Flex Code
9560 \begin_layout Plain Layout
9567 If it is not given, then \SpecialChar LyX
9568 will attempt to figure out which layout to use.
9571 \begin_layout Description
9572 \begin_inset Flex Code
9575 \begin_layout Plain Layout
9582 \begin_inset Flex Code
9585 \begin_layout Plain Layout
9591 ] Modifies the properties of the given counter.
9592 If the counter does not exist, the statement is ignored.
9594 \begin_inset Quotes eld
9598 \begin_inset Flex Code
9601 \begin_layout Plain Layout
9608 \begin_inset Quotes erd
9612 \begin_inset Newline newline
9616 \begin_inset CommandInset ref
9618 reference "subsec:Counters"
9622 for details on counters.
9625 \begin_layout Description
9626 \begin_inset Flex Code
9629 \begin_layout Plain Layout
9636 \begin_inset Flex Code
9639 \begin_layout Plain Layout
9645 ] This allows you to include another layout definition file within yours
9646 to avoid duplicating commands.
9647 Common examples are the standard layout files, for example,
9648 \begin_inset Flex Code
9651 \begin_layout Plain Layout
9657 , which contains most of the basic layouts.
9660 \begin_layout Description
9661 \begin_inset Flex Code
9664 \begin_layout Plain Layout
9671 \begin_inset Flex Code
9674 \begin_layout Plain Layout
9680 ] This section (re-)defines the layout of an inset.
9681 It can be applied to an existing inset or to a new, user-defined inset,
9682 e.g., a new character style.
9684 \begin_inset Quotes eld
9688 \begin_inset Flex Code
9691 \begin_layout Plain Layout
9698 \begin_inset Quotes erd
9702 \begin_inset Newline newline
9706 \begin_inset CommandInset ref
9708 reference "subsec:Flex-insets-and"
9712 for more information.
9716 \begin_layout Description
9717 \begin_inset Flex Code
9720 \begin_layout Plain Layout
9727 \begin_inset Flex Code
9730 \begin_layout Plain Layout
9736 ] A string that indicates the width of the left margin on the screen, for
9738 \begin_inset Quotes eld
9742 \begin_inset Flex Code
9745 \begin_layout Plain Layout
9752 \begin_inset Quotes erd
9756 (Note that this is not a `length', like
9757 \begin_inset Quotes eld
9761 \begin_inset Quotes erd
9765 \change_inserted -712698321 1483872681
9769 \begin_layout Description
9771 \change_inserted -712698321 1483874598
9772 \begin_inset Flex Code
9775 \begin_layout Plain Layout
9777 \change_inserted -712698321 1483872687
9784 \begin_inset Flex Code
9787 \begin_layout Plain Layout
9789 \change_inserted -712698321 1483872692
9795 ] An integer that determines the maximal number of names displayed in an
9796 author-year citation before the citation switches to
9797 \begin_inset Quotes eld
9801 \begin_inset Quotes erd
9805 Primarily used in cite engine files (see
9806 \begin_inset CommandInset ref
9808 reference "subsec:Cite-Engine-Files"
9820 \begin_layout Description
9821 \begin_inset Flex Code
9824 \begin_layout Plain Layout
9831 \begin_inset Flex Code
9834 \begin_layout Plain Layout
9840 ] Modifies the properties of the given paragraph style.
9841 If the style does not exist, this section is ignored.
9843 \begin_inset Quotes eld
9847 \begin_inset Flex Code
9850 \begin_layout Plain Layout
9857 \begin_inset Quotes erd
9863 \begin_layout Description
9864 \begin_inset Flex Code
9867 \begin_layout Plain Layout
9874 \begin_inset Flex Code
9877 \begin_layout Plain Layout
9883 ] Deletes an existing counter, usually one defined in an included file.
9886 \begin_layout Description
9887 \begin_inset Flex Code
9890 \begin_layout Plain Layout
9897 \begin_inset Flex Code
9900 \begin_layout Plain Layout
9906 ] Deletes an existing float.
9907 This is particularly useful when you want to suppress a float that has
9908 been defined in an input file.
9911 \begin_layout Description
9912 \begin_inset Flex Code
9915 \begin_layout Plain Layout
9922 \begin_inset Flex Code
9925 \begin_layout Plain Layout
9931 ] Deletes an existing style.
9934 \begin_layout Description
9935 \begin_inset Flex Code
9938 \begin_layout Plain Layout
9945 \begin_inset Flex Code
9948 \begin_layout Plain Layout
9954 ] The file format (as defined in the \SpecialChar LyX
9955 preferences) produced by this document
9957 It is mainly useful when
9958 \begin_inset Flex Code
9961 \begin_layout Plain Layout
9968 \begin_inset Flex Code
9971 \begin_layout Plain Layout
9977 and one wants to define a new type of literate document.
9978 The format is reset to
9979 \begin_inset Quotes eld
9983 \begin_inset Flex Code
9986 \begin_layout Plain Layout
9993 \begin_inset Quotes erd
9997 \begin_inset Quotes eld
10001 \begin_inset Flex Code
10004 \begin_layout Plain Layout
10011 \begin_inset Quotes erd
10014 when the corresponding
10015 \begin_inset Flex Code
10018 \begin_layout Plain Layout
10024 parameter is encountered.
10027 \begin_layout Description
10028 \begin_inset Flex Code
10031 \begin_layout Plain Layout
10038 \begin_inset Flex Code
10041 \begin_layout Plain Layout
10052 \begin_inset Flex Code
10055 \begin_layout Plain Layout
10062 \begin_inset Flex Code
10065 \begin_layout Plain Layout
10071 ] Specifies what sort of output documents using this class will produce.
10074 \begin_layout Description
10075 \begin_inset Flex Code
10078 \begin_layout Plain Layout
10085 \begin_inset Flex Code
10088 \begin_layout Plain Layout
10095 \begin_inset Flex Code
10098 \begin_layout Plain Layout
10104 ] Specifies options, given in the second string, for the package named by
10107 \begin_inset Quotes eld
10111 \begin_inset Flex Code
10114 \begin_layout Plain Layout
10115 PackageOptions natbib square
10121 \begin_inset Quotes erd
10125 \begin_inset Flex Code
10128 \begin_layout Plain Layout
10134 to be loaded with the
10135 \begin_inset Flex Code
10138 \begin_layout Plain Layout
10145 (For \SpecialChar TeX
10146 perts, this causes \SpecialChar LyX
10148 \begin_inset Flex Code
10151 \begin_layout Plain Layout
10154 PassOptionsToPackage{natbib}{square}
10160 \begin_inset Flex Code
10163 \begin_layout Plain Layout
10172 \begin_layout Description
10173 \begin_inset Flex Code
10176 \begin_layout Plain Layout
10183 \begin_inset Flex Code
10186 \begin_layout Plain Layout
10195 \begin_inset Flex Code
10198 \begin_layout Plain Layout
10205 \begin_inset Flex Code
10208 \begin_layout Plain Layout
10214 ] The default pagestyle.
10215 Can be changed in the
10216 \begin_inset Flex Noun
10219 \begin_layout Plain Layout
10220 Document\SpecialChar menuseparator
10229 \begin_layout Description
10230 \begin_inset Flex Code
10233 \begin_layout Plain Layout
10239 Sets the preamble for the \SpecialChar LaTeX
10241 Note that this will completely override any prior
10242 \begin_inset Flex Code
10245 \begin_layout Plain Layout
10252 \begin_inset Flex Code
10255 \begin_layout Plain Layout
10263 \begin_inset Flex Code
10266 \begin_layout Plain Layout
10272 if you just want to add material to the preamble.) Must end with
10273 \begin_inset Quotes eld
10277 \begin_inset Flex Code
10280 \begin_layout Plain Layout
10287 \begin_inset Quotes erd
10293 \begin_layout Description
10294 \begin_inset Flex Code
10297 \begin_layout Plain Layout
10304 \begin_inset Flex Code
10307 \begin_layout Plain Layout
10314 \begin_inset Flex Code
10317 \begin_layout Plain Layout
10326 \begin_inset space \thinspace{}
10330 \begin_inset Flex Code
10333 \begin_layout Plain Layout
10339 ] Whether the class already provides the feature
10340 \begin_inset Flex Code
10343 \begin_layout Plain Layout
10350 A feature is in general the name of a package (e.
10351 \begin_inset space \thinspace{}
10355 \begin_inset space \space{}
10359 \begin_inset Flex Code
10362 \begin_layout Plain Layout
10369 \begin_inset Flex Code
10372 \begin_layout Plain Layout
10379 \begin_inset space \thinspace{}
10383 \begin_inset space \space{}
10387 \begin_inset Flex Code
10390 \begin_layout Plain Layout
10397 \begin_inset Flex Code
10400 \begin_layout Plain Layout
10408 \begin_inset CommandInset ref
10410 reference "chap:List-of-functions"
10414 for the list of features.
10417 \begin_layout Description
10418 \begin_inset Flex Code
10421 \begin_layout Plain Layout
10428 \begin_inset Flex Code
10431 \begin_layout Plain Layout
10437 ] Indicates that this layout provides the functionality of the module mentioned,
10438 which should be specified by the filename without the
10439 \begin_inset Flex Code
10442 \begin_layout Plain Layout
10449 This will typically be used if the layout includes the module directly,
10450 rather than using the
10451 \begin_inset Flex Code
10454 \begin_layout Plain Layout
10460 tag to indicate that it ought to be used.
10461 It could also be used in a module that provided an alternate implementation
10462 of the same functionality.
10465 \begin_layout Description
10466 \begin_inset Flex Code
10469 \begin_layout Plain Layout
10476 \begin_inset Flex Code
10479 \begin_layout Plain Layout
10485 ] Creates a new paragraph style if it does not already exist.
10486 If the style does exist, this section is ignored.
10488 \begin_inset Quotes eld
10492 \begin_inset Flex Code
10495 \begin_layout Plain Layout
10502 \begin_inset Quotes erd
10508 \begin_layout Description
10509 \begin_inset Flex Code
10512 \begin_layout Plain Layout
10519 \begin_inset Flex Code
10522 \begin_layout Plain Layout
10528 ] Whether the class requires the feature
10529 \begin_inset Flex Code
10532 \begin_layout Plain Layout
10539 Multiple features must be separated by commas.
10540 Note that you can only request supported features.
10542 \begin_inset CommandInset ref
10544 reference "chap:List-of-functions"
10548 for the list of features.).
10549 If you require a package with specific options, you can additionally use
10551 \begin_inset Flex Code
10554 \begin_layout Plain Layout
10563 \begin_layout Description
10564 \begin_inset Flex Code
10567 \begin_layout Plain Layout
10574 \begin_inset Flex Code
10577 \begin_layout Plain Layout
10583 ] A string that indicates the width of the right margin on the screen, for
10585 \begin_inset Quotes eld
10589 \begin_inset Flex Code
10592 \begin_layout Plain Layout
10599 \begin_inset Quotes erd
10605 \begin_layout Description
10606 \begin_inset Flex Code
10609 \begin_layout Plain Layout
10616 \begin_inset Flex Code
10619 \begin_layout Plain Layout
10625 ] Sets which divisions get numbered.
10627 \begin_inset Newline newline
10631 \begin_inset Flex Code
10634 \begin_layout Plain Layout
10640 counter in \SpecialChar LaTeX
10644 \begin_layout Description
10645 \begin_inset Flex Code
10648 \begin_layout Plain Layout
10655 \begin_inset Flex Code
10658 \begin_layout Plain Layout
10667 \begin_inset space \thinspace{}
10671 \begin_inset Flex Code
10674 \begin_layout Plain Layout
10680 ] Whether the class-default should be printing on one or both sides of the
10682 Can be changed in the
10683 \begin_inset Flex Noun
10686 \begin_layout Plain Layout
10687 Document\SpecialChar menuseparator
10696 \begin_layout Description
10697 \begin_inset Flex Code
10700 \begin_layout Plain Layout
10707 \begin_inset Flex Code
10710 \begin_layout Plain Layout
10716 ] This sequence defines a paragraph style.
10717 If the style does not yet exist, it is created; if it does exist, its parameter
10720 \begin_inset Quotes eld
10724 \begin_inset Flex Code
10727 \begin_layout Plain Layout
10734 \begin_inset Quotes erd
10738 \begin_inset Newline newline
10742 \begin_inset CommandInset ref
10744 reference "subsec:Paragraph-Styles"
10748 for details on paragraph styles.
10751 \begin_layout Description
10752 \begin_inset Flex Code
10755 \begin_layout Plain Layout
10762 \begin_inset Flex Code
10765 \begin_layout Plain Layout
10771 ] The name of the command or environment to be used with
10772 \begin_inset Flex Code
10775 \begin_layout Plain Layout
10784 \begin_layout Description
10785 \begin_inset Flex Code
10788 \begin_layout Plain Layout
10795 \begin_inset Flex Code
10798 \begin_layout Plain Layout
10807 \begin_inset Flex Code
10810 \begin_layout Plain Layout
10816 ] Indicates what kind of markup is used to define the title of a document.
10818 \begin_inset Flex Code
10821 \begin_layout Plain Layout
10827 means that the macro with name
10828 \begin_inset Flex Code
10831 \begin_layout Plain Layout
10837 will be inserted after the last layout which has
10838 \begin_inset Quotes eld
10842 \begin_inset Flex Code
10845 \begin_layout Plain Layout
10847 \begin_inset space ~
10856 \begin_inset Quotes erd
10861 \begin_inset Flex Code
10864 \begin_layout Plain Layout
10870 corresponds to the case where all layouts which have
10871 \begin_inset Quotes eld
10875 \begin_inset Flex Code
10878 \begin_layout Plain Layout
10880 \begin_inset space ~
10889 \begin_inset Quotes erd
10892 should be enclosed into the
10893 \begin_inset Flex Code
10896 \begin_layout Plain Layout
10905 \begin_layout Description
10906 \begin_inset Flex Code
10909 \begin_layout Plain Layout
10916 \begin_inset Flex Code
10919 \begin_layout Plain Layout
10925 ] Sets which divisions are included in the table of contents.
10927 \begin_inset Flex Code
10930 \begin_layout Plain Layout
10936 counter in \SpecialChar LaTeX
10940 \begin_layout Subsection
10941 \begin_inset Flex Code
10944 \begin_layout Plain Layout
10951 \begin_inset CommandInset label
10953 name "subsec:ClassOptions"
10960 \begin_layout Standard
10962 \begin_inset Flex Code
10965 \begin_layout Plain Layout
10971 section can contain the following entries:
10974 \begin_layout Description
10975 \begin_inset Flex Code
10978 \begin_layout Plain Layout
10985 \begin_inset Flex Code
10988 \begin_layout Plain Layout
10994 ] The list of available font sizes for the document's main font, separated
10996 \begin_inset Quotes eld
11000 \begin_inset Flex Code
11003 \begin_layout Plain Layout
11010 \begin_inset Quotes erd
11016 \begin_layout Description
11017 \begin_inset Flex Code
11020 \begin_layout Plain Layout
11026 Used to set the DTD line with XML-based output classes.
11028 \begin_inset space \thinspace{}
11032 \begin_inset Quotes eld
11035 -//OASIS//DTD DocBook V4.2//EN
11036 \begin_inset Quotes erd
11042 \begin_layout Description
11043 \begin_inset Flex Code
11046 \begin_layout Plain Layout
11053 \begin_inset Flex Code
11056 \begin_layout Plain Layout
11057 string="empty|plain|headings|fancy"
11062 ] The list of available page sty\SpecialChar softhyphen
11064 \begin_inset Quotes eld
11068 \begin_inset Flex Code
11071 \begin_layout Plain Layout
11078 \begin_inset Quotes erd
11084 \begin_layout Description
11085 \begin_inset Flex Code
11088 \begin_layout Plain Layout
11095 \begin_inset Flex Code
11098 \begin_layout Plain Layout
11104 ] Some document class options, separated by a comma, that will be added
11105 to the optional part of the
11106 \begin_inset Flex Code
11109 \begin_layout Plain Layout
11120 \begin_layout Standard
11122 \begin_inset Flex Code
11125 \begin_layout Plain Layout
11131 section must end with
11132 \begin_inset Quotes eld
11136 \begin_inset Flex Code
11139 \begin_layout Plain Layout
11146 \begin_inset Quotes erd
11152 \begin_layout Subsection
11154 \begin_inset CommandInset label
11156 name "subsec:Paragraph-Styles"
11163 \begin_layout Standard
11164 A paragraph style description looks like this:
11168 \begin_layout Plain Layout
11169 Note that this will either define a new style or modify an existing one.
11177 \begin_layout LyX-Code
11184 \begin_layout LyX-Code
11188 \begin_layout LyX-Code
11192 \begin_layout Standard
11193 where the following commands are allowed:
11196 \begin_layout Description
11197 \begin_inset Flex Code
11200 \begin_layout Plain Layout
11207 \begin_inset Flex Code
11210 \begin_layout Plain Layout
11215 , left, right, center
11220 ] Paragraph alignment.
11223 \begin_layout Description
11224 \begin_inset Flex Code
11227 \begin_layout Plain Layout
11234 \begin_inset Flex Code
11237 \begin_layout Plain Layout
11242 , left, right, center
11247 ] A comma separated list of permitted alignments.
11248 (Some \SpecialChar LaTeX
11249 styles prohibit certain alignments, since those wouldn't make sense.
11250 For example a right-aligned or centered enumeration isn't possible.)
11253 \begin_layout Description
11254 \begin_inset Flex Code
11257 \begin_layout Plain Layout
11264 \begin_inset Flex Code
11267 \begin_layout Plain Layout
11273 ] Defines argument number <int> of a command\SpecialChar breakableslash
11274 environment associated with
11276 This is useful for things like section headings, and only makes sense with
11279 Every (optional or required) argument of a command or environment – except
11280 for the required argument that is associated with the content of the paragraph
11281 itself – has a separate definition, where the number specifies the order
11283 The definition must end with
11284 \begin_inset Flex Code
11287 \begin_layout Plain Layout
11294 So a command with two optional arguments has:
11298 \begin_layout Quote
11304 \begin_layout Quote
11310 \begin_layout Quote
11316 \begin_layout Quote
11322 \begin_layout Quote
11328 \begin_layout Quote
11334 \begin_layout Standard
11336 \begin_inset Flex Code
11339 \begin_layout Plain Layout
11345 definition, the following specifications are possible:
11348 \begin_layout Itemize
11349 \begin_inset Flex Code
11352 \begin_layout Plain Layout
11359 \begin_inset Flex Code
11362 \begin_layout Plain Layout
11368 The string that will appear both in the menu (to insert this argument)
11369 and on the argument inset button (unless you also specify a separate
11370 \begin_inset Flex Code
11373 \begin_layout Plain Layout
11380 For the menu, you can define an accelerator by appending the respective
11381 character to the string, divided by
11382 \begin_inset Quotes eld
11386 \begin_inset Quotes erd
11390 \begin_inset space \thinspace{}
11394 \begin_inset space \space{}
11398 \begin_inset Quotes eld
11402 \begin_inset Flex Code
11405 \begin_layout Plain Layout
11412 \begin_inset Quotes erd
11418 \begin_layout Itemize
11419 \begin_inset Flex Code
11422 \begin_layout Plain Layout
11429 \begin_inset Flex Code
11432 \begin_layout Plain Layout
11438 A separate string for the menu.
11439 You can define an accelerator by appending the respective character to
11440 the string, divided by
11441 \begin_inset Quotes eld
11445 \begin_inset Quotes erd
11449 \begin_inset space \thinspace{}
11453 \begin_inset space \space{}
11457 \begin_inset Quotes eld
11461 \begin_inset Flex Code
11464 \begin_layout Plain Layout
11471 \begin_inset Quotes erd
11475 This specification is optional.
11476 If it is not given the
11477 \begin_inset Flex Code
11480 \begin_layout Plain Layout
11486 will be used instead for the menu.
11489 \begin_layout Itemize
11490 \begin_inset Flex Code
11493 \begin_layout Plain Layout
11500 \begin_inset Flex Code
11503 \begin_layout Plain Layout
11509 A longer explanatory text that appears in the tooltip when hovering over
11510 the argument inset.
11513 \begin_layout Itemize
11514 \begin_inset Flex Code
11517 \begin_layout Plain Layout
11524 \begin_inset Flex Code
11527 \begin_layout Plain Layout
11536 \begin_inset space \thinspace{}
11540 \begin_inset Flex Code
11543 \begin_layout Plain Layout
11549 ] Declare if this is a mandatory (1) or an optional (0) argument.
11550 Mandatory arguments will be output empty if not given, while optional arguments
11551 will not be output at all.
11552 By default, mandatory arguments are delimited by
11553 \begin_inset Flex Code
11556 \begin_layout Plain Layout
11562 , while optional arguments are delimited by
11563 \begin_inset Flex Code
11566 \begin_layout Plain Layout
11575 \begin_layout Itemize
11576 \begin_inset Flex Code
11579 \begin_layout Plain Layout
11586 \begin_inset Flex Code
11589 \begin_layout Plain Layout
11595 defines another argument (by its number) which this argument requires to
11596 be output if it is itself output.
11598 \begin_inset space \thinspace{}
11601 g., in \SpecialChar LaTeX
11602 commands, optional arguments often require previous optional arguments
11603 to be output (at least empty), as in
11604 \begin_inset Flex Code
11607 \begin_layout Plain Layout
11610 command[][argument]{text}
11616 This can be achieved by the statement
11617 \begin_inset Flex Code
11620 \begin_layout Plain Layout
11627 \begin_inset Flex Code
11630 \begin_layout Plain Layout
11639 \begin_layout Itemize
11640 \begin_inset Flex Code
11643 \begin_layout Plain Layout
11650 \begin_inset Flex Code
11653 \begin_layout Plain Layout
11659 defines a custom left delimiter (instead of
11660 \begin_inset Flex Code
11663 \begin_layout Plain Layout
11670 \begin_inset Flex Code
11673 \begin_layout Plain Layout
11680 A line break in the output can be indicated by
11681 \begin_inset Flex Code
11684 \begin_layout Plain Layout
11693 \begin_layout Itemize
11694 \begin_inset Flex Code
11697 \begin_layout Plain Layout
11704 \begin_inset Flex Code
11707 \begin_layout Plain Layout
11713 defines a custom right delimiter (instead of
11714 \begin_inset Flex Code
11717 \begin_layout Plain Layout
11724 \begin_inset Flex Code
11727 \begin_layout Plain Layout
11734 A line break in the output can be indicated by
11735 \begin_inset Flex Code
11738 \begin_layout Plain Layout
11747 \begin_layout Itemize
11748 \begin_inset Flex Code
11751 \begin_layout Plain Layout
11758 \begin_inset Flex Code
11761 \begin_layout Plain Layout
11767 defines an argument that is inserted if and only if no user-specified arguments
11769 \begin_inset space \thinspace{}
11773 \begin_inset space \space{}
11776 if no argument inset has been inserted (note that also an empty argument
11777 inset omits the DefaultArg).
11778 Multiple arguments need to be separated by comma.
11781 \begin_layout Itemize
11782 \begin_inset Flex Code
11785 \begin_layout Plain Layout
11792 \begin_inset Flex Code
11795 \begin_layout Plain Layout
11801 defines an argument that is inserted in any case (alone or in addition
11802 to user-specified arguments).
11803 Multiple arguments need to be separated by comma.
11806 \begin_layout Itemize
11807 \begin_inset Flex Code
11810 \begin_layout Plain Layout
11816 The font used for the argument content, see
11817 \begin_inset CommandInset ref
11819 reference "subsec:Font-description"
11826 \begin_layout Itemize
11827 \begin_inset Flex Code
11830 \begin_layout Plain Layout
11836 The font used for the label; see
11837 \begin_inset CommandInset ref
11839 reference "subsec:Font-description"
11846 \begin_layout Itemize
11847 \begin_inset Flex Code
11850 \begin_layout Plain Layout
11857 \begin_inset Flex Code
11860 \begin_layout Plain Layout
11865 , Minimalistic, Conglomerate
11870 ] describes the rendering style used for the inset's frame and buttons.
11873 \begin_layout Itemize
11874 \begin_inset Flex Code
11877 \begin_layout Plain Layout
11884 \begin_inset Flex Code
11887 \begin_layout Plain Layout
11894 \begin_inset Flex Code
11897 \begin_layout Plain Layout
11903 , this argument is automatically inserted when the respective style is selected.
11904 Currently, only one argument per style\SpecialChar breakableslash
11905 layout can be automatically inserted.
11908 \begin_layout Itemize
11909 \begin_inset Flex Code
11912 \begin_layout Plain Layout
11919 \begin_inset Flex Code
11922 \begin_layout Plain Layout
11929 \begin_inset Flex Code
11932 \begin_layout Plain Layout
11938 , this argument will be inserted with a copy of the co-text (either selected
11939 text or the whole paragraph) as content.
11940 \change_inserted -712698321 1477038290
11944 \begin_layout Itemize
11946 \change_inserted -712698321 1477038425
11947 \begin_inset Flex Code
11950 \begin_layout Plain Layout
11952 \change_inserted -712698321 1477038295
11959 \begin_inset Flex Code
11962 \begin_layout Plain Layout
11964 \change_inserted -712698321 1477038311
11974 ] Whether the contents of this argument should be output in raw form, meaning
11975 without special translations that \SpecialChar LaTeX
11978 \begin_inset Flex Code
11981 \begin_layout Plain Layout
11983 \change_inserted -712698321 1477038356
11989 status is inherited by the inset or paragraph layout the argument belongs
11990 to, true and false change the status for the given argument only.
11995 \begin_layout Itemize
11996 \begin_inset Flex Code
11999 \begin_layout Plain Layout
12006 \begin_inset Flex Code
12009 \begin_layout Plain Layout
12010 string of characters
12019 Defines individual characters that should be output in raw form, meaning
12020 without special translations that \SpecialChar LaTeX
12022 Note that, contrary to PassThru, this needs to be explicitly defined for
12024 That is, arguments do not inherit PassThruChars from their parent inset
12028 \begin_layout Standard
12029 By default, the text entered in the \SpecialChar LyX
12030 workarea in the respective layout is
12031 the last (mandatory) argument of a command if the
12032 \begin_inset Flex Code
12035 \begin_layout Plain Layout
12042 \begin_inset Flex Code
12045 \begin_layout Plain Layout
12052 However, arguments with the prefix
12053 \begin_inset Flex Code
12056 \begin_layout Plain Layout
12062 are output after this workarea argument.
12063 Note that post-argument numbering restarts at 1, so the first argument
12064 following the workarea argument is
12065 \begin_inset Flex Code
12068 \begin_layout Plain Layout
12075 Post-arguments are ignored in any other
12076 \begin_inset Flex Code
12079 \begin_layout Plain Layout
12086 \begin_inset Flex Code
12089 \begin_layout Plain Layout
12098 \begin_layout Standard
12100 \begin_inset Flex Code
12103 \begin_layout Plain Layout
12112 \begin_inset Flex Code
12115 \begin_layout Plain Layout
12124 \begin_inset Flex Code
12127 \begin_layout Plain Layout
12133 followed by the number (e.
12134 \begin_inset space \thinspace{}
12138 \begin_inset space \space{}
12142 \begin_inset Flex Code
12145 \begin_layout Plain Layout
12155 \begin_layout Description
12156 \begin_inset Flex Code
12159 \begin_layout Plain Layout
12165 Note that this will completely override any prior
12166 \begin_inset Flex Code
12169 \begin_layout Plain Layout
12175 declaration for this style.
12177 \begin_inset Quotes eld
12181 \begin_inset Flex Code
12184 \begin_layout Plain Layout
12191 \begin_inset Quotes erd
12196 \begin_inset CommandInset ref
12198 reference "subsec:I18n"
12202 for details on its use.
12205 \begin_layout Description
12206 \begin_inset Flex Code
12209 \begin_layout Plain Layout
12216 \begin_inset Flex Code
12219 \begin_layout Plain Layout
12229 \begin_layout Plain Layout
12230 Note that a `float' here is a real number, such as: 1.5.
12235 The vertical space with which the last of a chain of paragraphs with this
12236 style is separated from the following paragraph.
12237 If the next paragraph has another style, the separations are not simply
12238 added, but the maximum is taken.
12241 \begin_layout Description
12242 \begin_inset Flex Code
12245 \begin_layout Plain Layout
12252 \begin_inset Flex Code
12255 \begin_layout Plain Layout
12261 ] The category for this style.
12262 This is used to group related styles in the style combobox on the toolbar.
12263 Any string can be used, but you may want to use existing categories with
12268 \begin_layout Description
12269 \begin_inset Flex Code
12272 \begin_layout Plain Layout
12278 Depth of XML command.
12279 Used only with XML-type formats.
12282 \begin_layout Description
12283 \begin_inset Flex Code
12286 \begin_layout Plain Layout
12293 \begin_inset Flex Code
12296 \begin_layout Plain Layout
12302 ] Copies all the features of an existing style into the current one.
12306 \begin_layout Description
12307 \begin_inset Flex Code
12310 \begin_layout Plain Layout
12317 \begin_inset Flex Code
12320 \begin_layout Plain Layout
12326 ] The name of a style whose preamble should be output
12331 This allows to ensure some ordering of the preamble snippets when macros
12332 definitions depend on one another.
12336 \begin_layout Plain Layout
12337 Note that, besides that functionality, there is no way to ensure any ordering
12339 The ordering that you see in a given version of \SpecialChar LyX
12340 may change without warning
12349 \begin_layout Description
12350 \begin_inset Flex Code
12353 \begin_layout Plain Layout
12360 \begin_inset Flex Code
12363 \begin_layout Plain Layout
12368 , Box, Filled_Box, Static
12373 ] The type of label that stands at the end of the paragraph (or sequence
12375 \begin_inset Flex Code
12378 \begin_layout Plain Layout
12385 \begin_inset Newline newline
12389 \begin_inset Flex Code
12392 \begin_layout Plain Layout
12399 \begin_inset Flex Code
12402 \begin_layout Plain Layout
12409 \begin_inset Flex Code
12412 \begin_layout Plain Layout
12420 \begin_inset Flex Code
12423 \begin_layout Plain Layout
12430 \begin_inset Quotes eld
12434 \begin_inset Quotes erd
12438 \begin_inset Flex Code
12441 \begin_layout Plain Layout
12448 \begin_inset space \space{}
12452 \begin_inset Flex Code
12455 \begin_layout Plain Layout
12461 ) is a white (resp.
12462 \begin_inset space ~
12465 black) square suitable for end of proof markers,
12466 \begin_inset Flex Code
12469 \begin_layout Plain Layout
12475 is an explicit text string.
12478 \begin_layout Description
12479 \begin_inset Flex Code
12482 \begin_layout Plain Layout
12489 \begin_inset Flex Code
12492 \begin_layout Plain Layout
12498 ] The string used for a label with a
12499 \begin_inset Flex Code
12502 \begin_layout Plain Layout
12509 \begin_inset Newline newline
12513 \begin_inset Flex Code
12516 \begin_layout Plain Layout
12526 \begin_layout Description
12527 \begin_inset Flex Code
12530 \begin_layout Plain Layout
12536 The font used for both the text body
12542 \begin_inset CommandInset ref
12544 reference "subsec:Font-description"
12549 Note that defining this font automatically defines the
12550 \begin_inset Flex Code
12553 \begin_layout Plain Layout
12560 So you should define this one first if you also want to define
12561 \begin_inset Flex Code
12564 \begin_layout Plain Layout
12573 \begin_layout Description
12574 \begin_inset Flex Code
12577 \begin_layout Plain Layout
12584 \begin_inset Flex Code
12587 \begin_layout Plain Layout
12593 ] Used for backporting new styles to stable \SpecialChar LyX
12595 The first stable version that supports this tag is \SpecialChar LyX
12597 The argument is a number which may either be 0, -1 or any value greater
12600 \begin_inset Flex Code
12603 \begin_layout Plain Layout
12609 flag of a style is greater than zero, it will always be written to the
12611 If a .lyx file is read, the style definitions from the document header are
12612 added to the document class.
12613 Therefore even older \SpecialChar LyX
12614 versions can handle the style.
12616 \begin_inset Flex Code
12619 \begin_layout Plain Layout
12625 is a version number: if the style is read, and the version number is less
12626 than the version number of the already existing style in the document class,
12627 the new style is ignored.
12628 If the version number is greater, the new style replaces the existing style.
12629 A value of -1 means an infinite version number, i.
12630 \begin_inset space \thinspace{}
12634 \begin_inset space \space{}
12637 the style is always used.
12640 \begin_layout Description
12641 \begin_inset Flex Code
12644 \begin_layout Plain Layout
12651 \begin_inset Flex Code
12654 \begin_layout Plain Layout
12663 \begin_inset space \thinspace{}
12667 \begin_inset Flex Code
12670 \begin_layout Plain Layout
12676 ] Usually \SpecialChar LyX
12677 does not allow you to insert more than one space between words,
12678 since a space is considered as the separation between two words, not a
12679 character or symbol of its own.
12680 This is a very fine thing but sometimes annoying, for example, when typing
12681 program code or plain \SpecialChar LaTeX
12684 \begin_inset Flex Code
12687 \begin_layout Plain Layout
12694 Note that \SpecialChar LyX
12695 will create protected blanks for the additional blanks when
12696 in another mode than \SpecialChar LaTeX
12700 \begin_layout Description
12701 \begin_inset Flex Code
12704 \begin_layout Plain Layout
12710 These tags are used with XHTML output.
12712 \begin_inset CommandInset ref
12714 reference "subsec:Paragraph-Style-XHTML"
12721 \begin_layout Description
12722 \begin_inset Flex Code
12725 \begin_layout Plain Layout
12731 [FIXME] (Used only with XML-type formats.)
12734 \begin_layout Description
12735 \begin_inset Flex Code
12738 \begin_layout Plain Layout
12745 \begin_inset Flex Code
12748 \begin_layout Plain Layout
12757 \begin_inset space \thinspace{}
12761 \begin_inset Flex Code
12764 \begin_layout Plain Layout
12771 \begin_inset Flex Code
12774 \begin_layout Plain Layout
12780 , marks the style as to be included in the document preamble and not in
12782 This is useful for document classes that want such information as the title
12783 and author to appear in the preamble.
12784 Note that this works only for styles for which the
12785 \begin_inset Flex Code
12788 \begin_layout Plain Layout
12795 \begin_inset Flex Code
12798 \begin_layout Plain Layout
12805 \begin_inset Flex Code
12808 \begin_layout Plain Layout
12817 \begin_layout Description
12818 \begin_inset Flex Code
12821 \begin_layout Plain Layout
12828 \begin_inset Flex Code
12831 \begin_layout Plain Layout
12840 \begin_inset space \thinspace{}
12844 \begin_inset Flex Code
12847 \begin_layout Plain Layout
12854 \begin_inset Flex Code
12857 \begin_layout Plain Layout
12863 , marks the style as being part of a title block (see also the
12864 \begin_inset Flex Code
12867 \begin_layout Plain Layout
12874 \begin_inset Flex Code
12877 \begin_layout Plain Layout
12886 \begin_layout Description
12887 \begin_inset Flex Code
12890 \begin_layout Plain Layout
12897 \begin_inset Flex Code
12900 \begin_layout Plain Layout
12906 ] The \SpecialChar LaTeX
12907 command sequence declaring an item in a list.
12908 The command is to be defined without the preceding backslash (the default
12910 \begin_inset Quotes eld
12914 \begin_inset Quotes erd
12918 \begin_inset Flex Code
12921 \begin_layout Plain Layout
12929 in the \SpecialChar LaTeX
12933 \begin_layout Description
12934 \begin_inset Flex Code
12937 \begin_layout Plain Layout
12944 \begin_inset Flex Code
12947 \begin_layout Plain Layout
12953 ] This provides extra space between paragraphs that have the same style.
12954 If you put other styles into an environment, each is separated with the
12956 \begin_inset Flex Code
12959 \begin_layout Plain Layout
12966 But the whole items of the environment are additionally separated with
12968 \begin_inset Flex Code
12971 \begin_layout Plain Layout
12978 Note that this is a
12983 \begin_layout Description
12984 \begin_inset Flex Code
12987 \begin_layout Plain Layout
12993 [FIXME] (Used only with XML-type formats.)
12996 \begin_layout Description
12997 \begin_inset Flex Code
13000 \begin_layout Plain Layout
13007 \begin_inset Flex Code
13010 \begin_layout Plain Layout
13019 \begin_inset space \thinspace{}
13023 \begin_inset Flex Code
13026 \begin_layout Plain Layout
13032 ] Usually \SpecialChar LyX
13033 does not allow you to leave a paragraph empty, since it would
13034 lead to empty \SpecialChar LaTeX
13036 There are some cases where this could be desirable however: in a letter
13037 template, the required fields can be provided as empty fields, so that
13038 people do not forget them; in some special classes, a style can be used
13039 as some kind of break, which does not contain actual text.
13042 \begin_layout Description
13043 \begin_inset Flex Code
13046 \begin_layout Plain Layout
13053 \begin_inset Flex Code
13056 \begin_layout Plain Layout
13062 ] The vertical space between the label and the text body.
13063 Only used for labels that are above the text body (
13064 \begin_inset Flex Code
13067 \begin_layout Plain Layout
13074 \begin_inset Newline newline
13078 \begin_inset Flex Code
13081 \begin_layout Plain Layout
13082 Centered_Top_Environment
13090 \begin_layout Description
13091 \begin_inset Flex Code
13094 \begin_layout Plain Layout
13101 \begin_inset Flex Code
13104 \begin_layout Plain Layout
13110 ] The name of the counter for automatic numbering.
13111 In order to have the counter appear with your label, you will need to reference
13113 \begin_inset Flex Code
13116 \begin_layout Plain Layout
13125 This will work with
13126 \begin_inset Flex Code
13129 \begin_layout Plain Layout
13136 \begin_inset Flex Code
13139 \begin_layout Plain Layout
13146 \begin_inset Flex Code
13149 \begin_layout Plain Layout
13156 \begin_inset Flex Code
13159 \begin_layout Plain Layout
13166 \begin_inset Newline newline
13174 \begin_inset Flex Code
13177 \begin_layout Plain Layout
13184 \begin_inset Flex Code
13187 \begin_layout Plain Layout
13193 , though this case is a bit complicated.
13194 Suppose you declare
13195 \begin_inset Quotes eld
13199 \begin_inset Flex Code
13202 \begin_layout Plain Layout
13203 LabelCounter myenum
13209 \begin_inset Quotes erd
13213 Then the actual counters used are
13214 \begin_inset Flex Code
13217 \begin_layout Plain Layout
13224 \begin_inset Flex Code
13227 \begin_layout Plain Layout
13234 \begin_inset Flex Code
13237 \begin_layout Plain Layout
13244 \begin_inset Flex Code
13247 \begin_layout Plain Layout
13253 , much as in \SpecialChar LaTeX
13255 These counters must all be declared separately.
13256 \begin_inset Newline newline
13260 \begin_inset CommandInset ref
13262 reference "subsec:Counters"
13266 for details on counters.
13269 \begin_layout Description
13270 \begin_inset Flex Code
13273 \begin_layout Plain Layout
13279 The font used for the label.
13281 \begin_inset CommandInset ref
13283 reference "subsec:Font-description"
13290 \begin_layout Description
13291 \begin_inset Flex Code
13294 \begin_layout Plain Layout
13301 \begin_inset Flex Code
13304 \begin_layout Plain Layout
13310 ] Text that indicates how far a label should be indented.
13313 \begin_layout Description
13314 \begin_inset Flex Code
13317 \begin_layout Plain Layout
13324 \begin_inset Flex Code
13327 \begin_layout Plain Layout
13333 ] Text that indicates the amount of horizontal space between the label and
13335 Only used for labels that are not above the text body.
13338 \begin_layout Description
13339 \begin_inset Flex Code
13342 \begin_layout Plain Layout
13349 \begin_inset Flex Code
13352 \begin_layout Plain Layout
13358 ] The string used for the label.
13360 \begin_inset Flex Code
13363 \begin_layout Plain Layout
13369 is set, this string can be contain the special formatting commands described
13371 \begin_inset CommandInset ref
13373 reference "subsec:Counters"
13380 \begin_layout Description
13381 \begin_inset Flex Code
13384 \begin_layout Plain Layout
13385 LabelStringAppendix
13391 \begin_inset Flex Code
13394 \begin_layout Plain Layout
13400 ] This is used inside the appendix instead of
13401 \begin_inset Newline newline
13405 \begin_inset Flex Code
13408 \begin_layout Plain Layout
13416 \begin_inset Flex Code
13419 \begin_layout Plain Layout
13426 \begin_inset Newline newline
13430 \begin_inset Flex Code
13433 \begin_layout Plain Layout
13434 LabelStringAppendix
13442 \begin_layout Description
13443 \begin_inset Flex Code
13446 \begin_layout Plain Layout
13452 [FIXME] (Used only with XML-type formats.)
13455 \begin_layout Description
13456 \begin_inset Flex Code
13459 \begin_layout Plain Layout
13466 \begin_inset Flex Code
13469 \begin_layout Plain Layout
13474 , Manual, Static, Above,
13475 \begin_inset Newline newline
13478 Centered, Sensitive, Enumerate,
13479 \begin_inset Newline newline
13482 Itemize, Bibliography
13491 \begin_layout Description
13492 \begin_inset Flex Code
13495 \begin_layout Plain Layout
13501 means the label is the very first word (up to the first real blank).
13502 Use protected spaces if you want more than one word as the label.
13506 \begin_layout Description
13507 \begin_inset Flex Code
13510 \begin_layout Plain Layout
13516 means the label is simply what is declared as
13517 \begin_inset Flex Code
13520 \begin_layout Plain Layout
13527 This will be displayed
13528 \begin_inset Quotes eld
13532 \begin_inset Quotes erd
13535 , at the beginning of the paragraph.
13537 \begin_inset Flex Code
13540 \begin_layout Plain Layout
13547 \begin_inset Flex Code
13550 \begin_layout Plain Layout
13556 , then it will be displayed only in the first paragraph of any sequence
13557 of paragraphs with the same
13558 \begin_inset Flex Code
13561 \begin_layout Plain Layout
13570 \begin_layout Description
13571 \begin_inset Flex Code
13574 \begin_layout Plain Layout
13581 \begin_inset space ~
13585 \begin_inset space ~
13589 \begin_inset Flex Code
13592 \begin_layout Plain Layout
13598 are special cases of
13599 \begin_inset Flex Code
13602 \begin_layout Plain Layout
13609 The label will be printed above the paragraph either at the beginning of
13610 the line or centered.
13613 \begin_layout Description
13614 \begin_inset Flex Code
13617 \begin_layout Plain Layout
13623 is a special case for the caption-labels
13624 \begin_inset Quotes eld
13628 \begin_inset Quotes erd
13632 \begin_inset Quotes eld
13636 \begin_inset Quotes erd
13640 \begin_inset Newline newline
13644 \begin_inset Flex Code
13647 \begin_layout Plain Layout
13653 means the (hardcoded) label string depends on the kind of float: It is
13654 hardcoded to be `FloatType N', where N is the value of the counter associated
13656 For the case that a caption is inserted outside of a float the
13657 \begin_inset Flex Code
13660 \begin_layout Plain Layout
13667 \begin_inset Quotes eld
13671 \begin_inset Quotes erd
13677 \begin_layout Description
13678 \begin_inset Flex Code
13681 \begin_layout Plain Layout
13687 produces the usual sort of enumeration labels.
13688 At present, it is hardcoded to use Arabic numerals, lowercase letters,
13689 small Roman numerals, and uppercase letters for the four possible depths.
13692 \begin_layout Description
13693 \begin_inset Flex Code
13696 \begin_layout Plain Layout
13702 produces various bullets at the different levels.
13703 It is also hardcoded.
13706 \begin_layout Description
13707 \begin_inset Flex Code
13710 \begin_layout Plain Layout
13716 should be used only with
13717 \begin_inset Flex Code
13720 \begin_layout Plain Layout
13721 LatexType BibEnvironment
13730 \begin_layout Description
13731 \begin_inset Flex Code
13734 \begin_layout Plain Layout
13740 Note that this will completely override any prior
13741 \begin_inset Flex Code
13744 \begin_layout Plain Layout
13750 declaration for this style.
13752 \begin_inset Quotes eld
13756 \begin_inset Flex Code
13759 \begin_layout Plain Layout
13766 \begin_inset Quotes erd
13771 \begin_inset CommandInset ref
13773 reference "subsec:I18n"
13777 for details on its use.
13780 \begin_layout Description
13781 \begin_inset Flex Code
13784 \begin_layout Plain Layout
13791 \begin_inset Flex Code
13794 \begin_layout Plain Layout
13800 ] The name of the corresponding \SpecialChar LaTeX
13802 Either the environment or command name.
13805 \begin_layout Description
13806 \begin_inset Flex Code
13809 \begin_layout Plain Layout
13816 \begin_inset Flex Code
13819 \begin_layout Plain Layout
13825 ] An optional parameter for the corresponding
13826 \begin_inset Flex Code
13829 \begin_layout Plain Layout
13836 This parameter cannot be changed from within \SpecialChar LyX
13838 \begin_inset Flex Code
13841 \begin_layout Plain Layout
13847 for customizable parameters).
13848 This will be output as is after all \SpecialChar LaTeX
13850 \begin_inset Flex Code
13853 \begin_layout Plain Layout
13862 \begin_layout Description
13863 \begin_inset Flex Code
13866 \begin_layout Plain Layout
13873 \begin_inset Flex Code
13876 \begin_layout Plain Layout
13881 , Command, Environment, Item_Environment,
13882 \begin_inset Newline newline
13885 List_Environment, Bib_Environment
13890 ] How the style should be translated into \SpecialChar LaTeX
13895 \begin_layout Plain Layout
13896 \begin_inset Flex Code
13899 \begin_layout Plain Layout
13905 is perhaps a bit misleading, since these rules apply to SGML classes, too.
13906 Visit the SGML class files for specific examples.
13915 \begin_layout Description
13916 \begin_inset Flex Code
13919 \begin_layout Plain Layout
13925 means nothing special.
13928 \begin_layout Description
13929 \begin_inset Flex Code
13932 \begin_layout Plain Layout
13939 \begin_inset Flex Code
13942 \begin_layout Plain Layout
13949 {\SpecialChar ldots
13958 \begin_layout Description
13959 \begin_inset Flex Code
13962 \begin_layout Plain Layout
13969 \begin_inset Flex Code
13972 \begin_layout Plain Layout
13979 }\SpecialChar ldots
13995 \begin_layout Description
13996 \begin_inset Flex Code
13999 \begin_layout Plain Layout
14006 \begin_inset Flex Code
14009 \begin_layout Plain Layout
14016 \begin_inset Flex Code
14019 \begin_layout Plain Layout
14027 is generated for each paragraph of this environment.
14031 \begin_layout Description
14032 \begin_inset Flex Code
14035 \begin_layout Plain Layout
14042 \begin_inset Flex Code
14045 \begin_layout Plain Layout
14052 \begin_inset Newline newline
14056 \begin_inset Flex Code
14059 \begin_layout Plain Layout
14065 is passed as an argument to the environment.
14066 \begin_inset Newline newline
14070 \begin_inset Flex Code
14073 \begin_layout Plain Layout
14079 can be defined in the
14080 \begin_inset Flex Noun
14083 \begin_layout Plain Layout
14084 Edit\SpecialChar menuseparator
14086 \begin_inset space ~
14097 \begin_layout Description
14098 \begin_inset Flex Code
14101 \begin_layout Plain Layout
14108 \begin_inset Flex Code
14111 \begin_layout Plain Layout
14117 but adds the necessary mandatory argument (the longest label) to the begin
14118 statement of the bibliography environment:
14119 \begin_inset Newline newline
14123 \begin_inset Flex Code
14126 \begin_layout Plain Layout
14129 begin{thebibliography}{99}
14135 It is therefore only useful for bibliography environments.
14136 The default longest label
14137 \begin_inset Quotes eld
14141 \begin_inset Quotes erd
14144 can be changed by the user in the paragraph settings of a bibliography
14148 \begin_layout Standard
14149 Putting the last few things together, the \SpecialChar LaTeX
14150 output will be either:
14153 \begin_layout LyX-Code
14156 LatexName[LatexParam]{\SpecialChar ldots
14160 \begin_layout Standard
14164 \begin_layout LyX-Code
14167 begin{LatexName}[LatexParam] \SpecialChar ldots
14173 \begin_layout Standard
14174 depending upon the \SpecialChar LaTeX
14179 \begin_layout Description
14180 \begin_inset Flex Code
14183 \begin_layout Plain Layout
14190 \begin_inset Flex Code
14193 \begin_layout Plain Layout
14199 ] A string that is put at the beginning of the style content.
14200 A line break in the output can be indicated by
14201 \begin_inset Flex Code
14204 \begin_layout Plain Layout
14213 \begin_layout Description
14214 \begin_inset Flex Code
14217 \begin_layout Plain Layout
14224 \begin_inset Flex Code
14227 \begin_layout Plain Layout
14233 ] If you put styles into environments, the different
14234 \begin_inset Flex Code
14237 \begin_layout Plain Layout
14243 are not simply added, but added with a factor
14244 \begin_inset Formula $\frac{4}{\mathrm{depth}+4}$
14248 Note that this parameter is also used when
14249 \begin_inset Flex Code
14252 \begin_layout Plain Layout
14259 \begin_inset Flex Code
14262 \begin_layout Plain Layout
14269 \begin_inset Flex Code
14272 \begin_layout Plain Layout
14279 Then it is added to the manual or dynamic margin.
14280 \begin_inset Newline newline
14284 \begin_inset Quotes eld
14288 \begin_inset Flex Code
14291 \begin_layout Plain Layout
14298 \begin_inset Quotes erd
14301 means that the paragraph is indented with the width of
14302 \begin_inset Quotes eld
14306 \begin_inset Flex Code
14309 \begin_layout Plain Layout
14316 \begin_inset Quotes erd
14319 in the normal font.
14320 You can get a negative width by prefixing the string with
14321 \begin_inset Quotes eld
14325 \begin_inset Flex Code
14328 \begin_layout Plain Layout
14335 \begin_inset Quotes erd
14339 This way was chosen so that the look is the same with each used screen
14343 \begin_layout Description
14344 \begin_inset Flex Code
14347 \begin_layout Plain Layout
14354 \begin_inset Flex Code
14357 \begin_layout Plain Layout
14362 , Manual, Dynamic, First_Dynamic, Right_Address_Box
14368 \begin_inset Newline newline
14371 The kind of margin that the style has on the left side.
14375 \begin_layout Description
14376 \begin_inset Flex Code
14379 \begin_layout Plain Layout
14385 just means a fixed margin.
14388 \begin_layout Description
14389 \begin_inset Flex Code
14392 \begin_layout Plain Layout
14398 means that the left margin depends on the string entered in the
14399 \begin_inset Flex Noun
14402 \begin_layout Plain Layout
14403 Edit\SpecialChar menuseparator
14405 \begin_inset space ~
14414 This is used to typeset nice lists without tabulators.
14417 \begin_layout Description
14418 \begin_inset Flex Code
14421 \begin_layout Plain Layout
14427 means that the margin depends on the size of the label.
14428 This is used for automatic enumerated headlines.
14429 It is obvious that the headline
14430 \begin_inset Quotes eld
14433 5.4.3.2.1 Very long headline
14434 \begin_inset Quotes erd
14437 must have a wider left margin (as wide as
14438 \begin_inset Quotes eld
14442 \begin_inset Quotes erd
14445 plus the space) than
14446 \begin_inset Quotes eld
14449 3.2 Very long headline
14450 \begin_inset Quotes erd
14454 \begin_inset Quotes eld
14458 \begin_inset Quotes erd
14461 are not able to do this.
14464 \begin_layout Description
14465 \begin_inset Flex Code
14468 \begin_layout Plain Layout
14474 is similar, but only the very first row of the paragraph is dynamic, while
14475 the others are static; this is used, for example, for descriptions.
14478 \begin_layout Description
14479 \begin_inset Flex Code
14482 \begin_layout Plain Layout
14488 means the margin is chosen in a way that the longest row of this paragraph
14489 fits to the right margin.
14490 This is used to typeset an address on the right edge of the page.
14494 \begin_layout Description
14495 \begin_inset Flex Code
14498 \begin_layout Plain Layout
14505 \begin_inset Flex Code
14508 \begin_layout Plain Layout
14517 \begin_inset space \thinspace{}
14521 \begin_inset Flex Code
14524 \begin_layout Plain Layout
14530 ] Whether fragile commands in this style should be
14531 \begin_inset Flex Code
14534 \begin_layout Plain Layout
14547 whether this command should itself be protected.)
14550 \begin_layout Description
14551 \begin_inset Flex Code
14554 \begin_layout Plain Layout
14561 \begin_inset Flex Code
14564 \begin_layout Plain Layout
14571 \begin_inset space \thinspace{}
14575 \begin_inset Flex Code
14578 \begin_layout Plain Layout
14586 ] Whether newlines are translated into \SpecialChar LaTeX
14588 \begin_inset Flex Code
14591 \begin_layout Plain Layout
14602 The translation can be switched off to allow more comfortable \SpecialChar LaTeX
14604 inside \SpecialChar LyX
14608 \begin_layout Description
14609 \begin_inset Flex Code
14612 \begin_layout Plain Layout
14619 \begin_inset Flex Code
14622 \begin_layout Plain Layout
14631 \begin_inset space \thinspace{}
14635 \begin_inset Flex Code
14638 \begin_layout Plain Layout
14644 ] If set to true, and if
14645 \begin_inset Flex Code
14648 \begin_layout Plain Layout
14655 \begin_inset Flex Code
14658 \begin_layout Plain Layout
14664 ) paragraphs are being indented, then the indentation of such a paragraph
14665 following one of this type will be suppressed.
14666 (So this will not affect the display of non-default paragraphs.)
14669 \begin_layout Description
14670 \begin_inset Flex Code
14673 \begin_layout Plain Layout
14680 \begin_inset Flex Code
14683 \begin_layout Plain Layout
14689 ] Name of a style that has replaced this style.
14690 This is used to rename a style, while keeping backward compatibility.
14693 \begin_layout Description
14694 \begin_inset Flex Code
14697 \begin_layout Plain Layout
14704 \begin_inset Flex Code
14707 \begin_layout Plain Layout
14714 \begin_inset space \thinspace{}
14718 \begin_inset Flex Code
14721 \begin_layout Plain Layout
14727 ] Determines whether consecutive pragraphs of the same type are treated
14728 as belonging together.
14729 This has the effect that the
14730 \begin_inset Flex Code
14733 \begin_layout Plain Layout
14739 is only printed once before such a group.
14740 By default, this is true for
14741 \begin_inset Flex Code
14744 \begin_layout Plain Layout
14751 \begin_inset Flex Code
14754 \begin_layout Plain Layout
14761 \begin_inset Flex Code
14764 \begin_layout Plain Layout
14770 and false for all other types.
14773 \begin_layout Description
14774 \begin_inset Flex Code
14777 \begin_layout Plain Layout
14784 \begin_inset Flex Code
14787 \begin_layout Plain Layout
14796 \begin_inset space \thinspace{}
14800 \begin_inset Flex Code
14803 \begin_layout Plain Layout
14809 ] Indicates that paragraphs will not be separated by an empty line in \SpecialChar LaTeX
14811 but only by a line break; together with
14812 \begin_inset Flex Code
14815 \begin_layout Plain Layout
14821 , this allows to emulate a plain text editor (like the ERT inset).
14824 \begin_layout Description
14825 \begin_inset Flex Code
14828 \begin_layout Plain Layout
14835 \begin_inset Flex Code
14838 \begin_layout Plain Layout
14844 ] The indent of the very first line of a paragraph.
14846 \begin_inset Newline newline
14850 \begin_inset Flex Code
14853 \begin_layout Plain Layout
14859 will be fixed for a certain style.
14860 The exception is the default style, since the indentation for these paragraphs
14861 can be prohibited with
14862 \begin_inset Flex Code
14865 \begin_layout Plain Layout
14873 \begin_inset Flex Code
14876 \begin_layout Plain Layout
14882 style paragraphs inside environments use the
14883 \begin_inset Flex Code
14886 \begin_layout Plain Layout
14892 of the environment, not their native one.
14894 \begin_inset Flex Code
14897 \begin_layout Plain Layout
14903 paragraphs inside an enumeration are not indented.
14906 \begin_layout Description
14907 \begin_inset Flex Code
14910 \begin_layout Plain Layout
14917 \begin_inset Flex Code
14920 \begin_layout Plain Layout
14926 ] The vertical space between two paragraphs of this style.
14929 \begin_layout Description
14930 \begin_inset Flex Code
14933 \begin_layout Plain Layout
14940 \begin_inset Flex Code
14943 \begin_layout Plain Layout
14950 allows the user to choose either
14951 \begin_inset Quotes eld
14955 \begin_inset Quotes erd
14959 \begin_inset Quotes eld
14963 \begin_inset Quotes erd
14966 to separate paragraphs.
14968 \begin_inset Quotes eld
14972 \begin_inset Quotes erd
14976 \begin_inset Flex Code
14979 \begin_layout Plain Layout
14987 \begin_inset Quotes eld
14991 \begin_inset Quotes erd
14995 \begin_inset Flex Code
14998 \begin_layout Plain Layout
15004 is ignored and all paragraphs are separated by the
15005 \begin_inset Flex Code
15008 \begin_layout Plain Layout
15015 The vertical space is calculated with
15016 \begin_inset Flex Code
15019 \begin_layout Plain Layout
15021 \begin_inset space ~
15030 \begin_inset Flex Code
15033 \begin_layout Plain Layout
15039 is the height of a row with the normal font.
15040 This way, the look stays the same with different screen fonts.
15043 \begin_layout Description
15044 \begin_inset Flex Code
15047 \begin_layout Plain Layout
15054 \begin_inset Flex Code
15057 \begin_layout Plain Layout
15066 \begin_inset space \thinspace{}
15070 \begin_inset Flex Code
15073 \begin_layout Plain Layout
15079 ] Whether the contents of this paragraph should be output in raw form, meaning
15080 without special translations that \SpecialChar LaTeX
15084 \begin_layout Description
15085 \begin_inset Flex Code
15088 \begin_layout Plain Layout
15095 \begin_inset Flex Code
15098 \begin_layout Plain Layout
15108 Defines individual characters that should be output in raw form, meaning
15109 without special translations that \SpecialChar LaTeX
15113 \begin_layout Description
15114 \begin_inset Flex Code
15117 \begin_layout Plain Layout
15123 Information to be included in the \SpecialChar LaTeX
15124 preamble when this style is used.
15125 Used to define macros, load packages, etc., required by this particular
15128 \begin_inset Quotes eld
15132 \begin_inset Flex Code
15135 \begin_layout Plain Layout
15142 \begin_inset Quotes erd
15148 \begin_layout Description
15149 \begin_inset Flex Code
15152 \begin_layout Plain Layout
15159 \begin_inset Flex Code
15162 \begin_layout Plain Layout
15168 ] The prefix to use when creating labels referring to paragraphs of this
15170 This allows the use of formatted references.
15173 \begin_layout Description
15174 \begin_inset Flex Code
15177 \begin_layout Plain Layout
15184 \begin_inset Flex Code
15187 \begin_layout Plain Layout
15193 ] Whether the style requires the feature
15194 \begin_inset Flex Code
15197 \begin_layout Plain Layout
15204 \begin_inset CommandInset ref
15206 reference "chap:List-of-functions"
15210 for the list of features).
15211 If you require a package with specific options, you can additionally use
15213 \begin_inset Flex Code
15216 \begin_layout Plain Layout
15222 as a general text class parameter (see
15223 \begin_inset CommandInset ref
15225 reference "subsec:General-text-class"
15232 \begin_layout Description
15233 \begin_inset Flex Code
15236 \begin_layout Plain Layout
15243 \begin_inset Flex Code
15246 \begin_layout Plain Layout
15255 \begin_inset Flex Code
15258 \begin_layout Plain Layout
15264 ] Resets the \SpecialChar LaTeX
15265 arguments of this style (as defined via the
15266 \begin_inset Flex Code
15269 \begin_layout Plain Layout
15276 This is useful if you have copied a style via
15277 \begin_inset Flex Code
15280 \begin_layout Plain Layout
15286 , but you do not want to inherit its (required and optional) arguments.
15287 \change_inserted 2089657418 1476488475
15291 \begin_layout Description
15293 \change_inserted 2089657418 1476488475
15294 \begin_inset Flex Code
15297 \begin_layout Plain Layout
15299 \change_inserted 2089657418 1476488475
15306 \begin_inset Flex Code
15309 \begin_layout Plain Layout
15311 \change_inserted 2089657418 1476488475
15320 \begin_inset Flex Code
15323 \begin_layout Plain Layout
15325 \change_inserted 2089657418 1476488475
15331 ] Resumes a counter that is usually reset at each new sequence of layouts.
15332 This is currently only useful when
15333 \begin_inset Flex Code
15336 \begin_layout Plain Layout
15338 \change_inserted 2089657418 1476488475
15345 \begin_inset Flex Code
15348 \begin_layout Plain Layout
15350 \change_inserted 2089657418 1476488475
15361 \begin_layout Description
15362 \begin_inset Flex Code
15365 \begin_layout Plain Layout
15372 \begin_inset Flex Code
15375 \begin_layout Plain Layout
15381 ] A string that is put at the end of the layout content.
15382 A line break in the output can be indicated by
15383 \begin_inset Flex Code
15386 \begin_layout Plain Layout
15395 \begin_layout Description
15396 \begin_inset Flex Code
15399 \begin_layout Plain Layout
15406 \begin_inset Flex Code
15409 \begin_layout Plain Layout
15416 \begin_inset Flex Code
15419 \begin_layout Plain Layout
15428 \begin_layout Description
15429 \begin_inset Flex Code
15432 \begin_layout Plain Layout
15439 \begin_inset Flex Code
15442 \begin_layout Plain Layout
15451 \begin_inset Flex Code
15454 \begin_layout Plain Layout
15461 \begin_inset Flex Code
15464 \begin_layout Plain Layout
15471 \begin_inset Flex Code
15474 \begin_layout Plain Layout
15476 \begin_inset space ~
15484 ] This defines what the default spacing should be in the style.
15486 \begin_inset Flex Code
15489 \begin_layout Plain Layout
15496 \begin_inset Flex Code
15499 \begin_layout Plain Layout
15506 \begin_inset Flex Code
15509 \begin_layout Plain Layout
15515 correspond respectively to a multiplier value of 1, 1.25 and 1.667.
15516 If you specify the argument
15517 \begin_inset Flex Code
15520 \begin_layout Plain Layout
15526 , then you must also provide a value argument which will be the actual multiplie
15528 Note that, contrary to other parameters,
15529 \begin_inset Flex Code
15532 \begin_layout Plain Layout
15538 implies the generation of specific \SpecialChar LaTeX
15539 code, using the \SpecialChar LaTeX
15543 \begin_inset Flex Code
15546 \begin_layout Plain Layout
15555 \begin_layout Description
15556 \begin_inset Flex Code
15559 \begin_layout Plain Layout
15566 \begin_inset Flex Code
15569 \begin_layout Plain Layout
15576 \begin_inset space \thinspace{}
15580 \begin_inset Flex Code
15583 \begin_layout Plain Layout
15591 ] Allow spell-checking paragraphs of this style.
15593 \change_inserted 2089657418 1476488264
15597 \begin_layout Description
15599 \change_inserted 2089657418 1476488264
15600 \begin_inset Flex Code
15603 \begin_layout Plain Layout
15605 \change_inserted 2089657418 1476488264
15612 \begin_inset Flex Code
15615 \begin_layout Plain Layout
15617 \change_inserted 2089657418 1476488264
15626 \begin_inset Flex Code
15629 \begin_layout Plain Layout
15631 \change_inserted 2089657418 1476488264
15637 ] Steps the master counter of a given counter at the beginning of a new
15638 sequence of layouts.
15639 This is currently only useful when
15640 \begin_inset Flex Code
15643 \begin_layout Plain Layout
15645 \change_inserted 2089657418 1476488264
15652 \begin_inset Flex Code
15655 \begin_layout Plain Layout
15657 \change_inserted 2089657418 1476488264
15668 \begin_layout Description
15669 \begin_inset Flex Code
15672 \begin_layout Plain Layout
15678 The font used for the text body .
15680 \begin_inset CommandInset ref
15682 reference "subsec:Font-description"
15689 \begin_layout Description
15690 \begin_inset Flex Code
15693 \begin_layout Plain Layout
15702 \begin_inset Flex Code
15705 \begin_layout Plain Layout
15715 The level of the style in the table of contents.
15716 This is used for automatic numbering of section headings.
15719 \begin_layout Description
15720 \begin_inset Flex Code
15723 \begin_layout Plain Layout
15732 \begin_inset Flex Code
15735 \begin_layout Plain Layout
15746 \begin_inset Flex Code
15749 \begin_layout Plain Layout
15756 \begin_inset Flex Code
15759 \begin_layout Plain Layout
15765 ] This tag determines whether the first line indentation of this paragraph
15766 can be toggled via the Paragraph settings dialog.
15770 \begin_inset Flex Code
15773 \begin_layout Plain Layout
15783 is set, indentation can be toggled if the document settings use
15784 \begin_inset Quotes eld
15788 \begin_inset Quotes erd
15791 paragraph style, with
15792 \begin_inset Flex Code
15795 \begin_layout Plain Layout
15801 , indentation can always be toggled, notwithstanding the document settings,
15803 \begin_inset Flex Code
15806 \begin_layout Plain Layout
15812 , indentation can never be toggled.
15815 \begin_layout Description
15816 \begin_inset Flex Code
15819 \begin_layout Plain Layout
15826 \begin_inset Flex Code
15829 \begin_layout Plain Layout
15835 ] The vertical space with which the very first of a chain of paragraphs
15836 with this style is separated from the previous paragraph.
15837 If the previous paragraph has another style, the separations are not simply
15838 added, but the maximum is taken.
15841 \begin_layout Subsection
15842 \begin_inset CommandInset label
15848 Internationalization of Paragraph Styles
15851 \begin_layout Standard
15853 has long supported internationalization of layout information, but, until
15854 version 2.0, this applied only to the user interface and not to, say, PDF
15856 Thus, French authors were forced to resort to ugly hacks if they wanted
15861 1' instead of `Theorem 1'.
15862 Thanks to Georg Baum, that is no longer the case.
15865 \begin_layout Standard
15867 \begin_inset Flex Code
15870 \begin_layout Plain Layout
15876 defines text that is to appear in the typeset document, it may use
15877 \begin_inset Flex Code
15880 \begin_layout Plain Layout
15887 \begin_inset Flex Code
15890 \begin_layout Plain Layout
15896 to support non-English and even multi-language documents correctly.
15897 The following excerpt (from the
15898 \begin_inset Flex Code
15901 \begin_layout Plain Layout
15907 file) shows how this works:
15910 \begin_layout LyX-Code
15915 \begin_layout LyX-Code
15918 theoremstyle{remark}
15921 \begin_layout LyX-Code
15924 newtheorem{claim}[thm]{
15931 \begin_layout LyX-Code
15935 \begin_layout LyX-Code
15939 \begin_layout LyX-Code
15944 claimname}{_(Claim)}
15947 \begin_layout LyX-Code
15951 \begin_layout LyX-Code
15955 \begin_layout LyX-Code
15964 claimname}{_(Claim)}}
15967 \begin_layout LyX-Code
15972 \begin_layout Standard
15973 In principle, any legal \SpecialChar LaTeX
15975 \begin_inset Flex Code
15978 \begin_layout Plain Layout
15985 \begin_inset Flex Code
15988 \begin_layout Plain Layout
15994 tags, but in practice they will typically look as they do here.
15995 The key to correct translation of the typeset text is the definition of
15996 the \SpecialChar LaTeX
15998 \begin_inset Flex Code
16001 \begin_layout Plain Layout
16010 \begin_inset Flex Code
16013 \begin_layout Plain Layout
16025 \begin_layout Standard
16027 \begin_inset Flex Code
16030 \begin_layout Plain Layout
16036 tag provides for internationalization based upon the overall language of
16038 The contents of the tag will be included in the preamble, just as with
16040 \begin_inset Flex Code
16043 \begin_layout Plain Layout
16050 What makes it special is the use of the
16051 \begin_inset Quotes eld
16055 \begin_inset Quotes erd
16059 \begin_inset Flex Code
16062 \begin_layout Plain Layout
16068 , which will be replaced, when \SpecialChar LyX
16069 produces \SpecialChar LaTeX
16070 output, with the translation of
16071 its argument into the document language.
16074 \begin_layout Standard
16076 \begin_inset Flex Code
16079 \begin_layout Plain Layout
16085 tag is more complex, since it is meant to provide support for multi-language
16086 documents and so offers an interface to the
16087 \begin_inset Flex Code
16090 \begin_layout Plain Layout
16097 Its contents will be added to the preamble once for each language that
16098 appears in the document.
16099 In this case, the argument to
16100 \begin_inset Flex Code
16103 \begin_layout Plain Layout
16109 will be replaced with its translation into the language in question; the
16111 \begin_inset Flex Code
16114 \begin_layout Plain Layout
16120 is replaced by the language name (as used by the babel package).
16123 \begin_layout Standard
16124 A German document that also included a French section would thus have the
16125 following in the preamble:
16128 \begin_layout LyX-Code
16137 claimname}{Affirmation}}
16138 \begin_inset Newline newline
16149 claimname}{Behauptung}}
16150 \begin_inset Newline newline
16157 claimname}{Behauptung}
16160 \begin_layout Standard
16163 \begin_inset Flex Code
16166 \begin_layout Plain Layout
16172 will then conspire to produce the correct text in the output.
16175 \begin_layout Standard
16176 One important point to note here is that the translations are provided by
16178 itself, through the file
16179 \begin_inset Flex Code
16182 \begin_layout Plain Layout
16189 This means, in effect, that
16190 \begin_inset Flex Code
16193 \begin_layout Plain Layout
16200 \begin_inset Flex Code
16203 \begin_layout Plain Layout
16209 are really only of use in layout files that are provided with \SpecialChar LyX
16211 entered in user-created layout files will not be seen by \SpecialChar LyX
16212 's internationalizatio
16213 n routines unless the
16214 \begin_inset Flex Code
16217 \begin_layout Plain Layout
16223 file is modified accordingly.
16224 That said, however, any layout created with the intention that it will
16225 be included with \SpecialChar LyX
16226 should use these tags where appropriate.
16227 Please note that the paragraph style translations provided by \SpecialChar LyX
16229 change with a minor update (e.
16230 \begin_inset space \thinspace{}
16234 \begin_inset space \space{}
16237 from version 2.1.x to 2.1.y).
16238 It is however quite likely that a major update (e.
16239 \begin_inset space \thinspace{}
16243 \begin_inset space \space{}
16246 from 2.0.x to 2.1.y) will introduce new translations or corrections.
16249 \begin_layout Subsection
16251 \begin_inset CommandInset label
16253 name "subsec:Floats"
16260 \begin_layout Standard
16261 It is necessary to define the floats (
16262 \begin_inset Flex Noun
16265 \begin_layout Plain Layout
16272 \begin_inset Flex Noun
16275 \begin_layout Plain Layout
16281 , \SpecialChar ldots
16282 ) in the text class itself.
16283 Standard floats are included in the file
16284 \begin_inset Flex Code
16287 \begin_layout Plain Layout
16293 , so you may have to do no more than add
16296 \begin_layout LyX-Code
16297 Input stdfloats.inc
16300 \begin_layout Standard
16301 to your layout file.
16302 If you want to implement a text class that proposes some other float types
16303 (like the AGU class bundled with \SpecialChar LyX
16304 ), the information below will hopefully
16308 \begin_layout Description
16309 \begin_inset Flex Code
16312 \begin_layout Plain Layout
16319 \begin_inset Flex Code
16322 \begin_layout Plain Layout
16328 =!htbpH] Allowed placement options for this float type.
16329 The value is a string of placement characters.
16330 Possible characters include:
16335 \begin_inset Quotes eld
16339 \begin_inset Quotes erd
16347 \begin_inset Quotes eld
16351 \begin_inset Quotes erd
16359 \begin_inset Quotes eld
16363 \begin_inset Quotes erd
16371 \begin_inset Quotes eld
16375 \begin_inset Quotes erd
16383 \begin_inset Quotes eld
16387 \begin_inset Quotes erd
16395 \begin_inset Quotes eld
16399 \begin_inset Quotes erd
16403 The order of the characters in the string does not matter.
16404 If no placement options are allowed, use the string
16411 \begin_layout Description
16412 \begin_inset Flex Code
16415 \begin_layout Plain Layout
16422 \begin_inset Flex Code
16425 \begin_layout Plain Layout
16434 \begin_inset space \thinspace{}
16440 \begin_inset Flex Code
16443 \begin_layout Plain Layout
16453 ] Defines whether the float allows to be rotated via the \SpecialChar LaTeX
16460 \begin_inset Flex Code
16463 \begin_layout Plain Layout
16469 if the float does not support this feature.
16472 \begin_layout Description
16473 \begin_inset Flex Code
16476 \begin_layout Plain Layout
16483 \begin_inset Flex Code
16486 \begin_layout Plain Layout
16495 \begin_inset space \thinspace{}
16501 \begin_inset Flex Code
16504 \begin_layout Plain Layout
16514 ] Defines whether the float has a starred variant that spans columns in
16515 a two column paragraph.
16517 \begin_inset Flex Code
16520 \begin_layout Plain Layout
16526 if the float does not support this feature.
16529 \begin_layout Description
16530 \begin_inset Flex Code
16533 \begin_layout Plain Layout
16540 \begin_inset Flex Code
16543 \begin_layout Plain Layout
16550 \begin_inset Quotes erd
16554 \begin_inset Quotes erd
16557 ] The file name extension of an auxiliary file for the list of figures (or
16560 writes the captions to this file.
16563 \begin_layout Description
16564 \begin_inset Flex Code
16567 \begin_layout Plain Layout
16574 \begin_inset Flex Code
16577 \begin_layout Plain Layout
16584 \begin_inset Quotes erd
16588 \begin_inset Quotes erd
16591 ] The string that will be used in the menus and also for the caption.
16592 This is translated to the current language if babel is used.
16595 \begin_layout Description
16596 \begin_inset Flex Code
16599 \begin_layout Plain Layout
16605 These tags control the XHTML output.
16607 \begin_inset CommandInset ref
16609 reference "sec:Tags-for-XHTML"
16616 \begin_layout Description
16617 \begin_inset Flex Code
16620 \begin_layout Plain Layout
16629 \begin_inset Flex Code
16632 \begin_layout Plain Layout
16641 \begin_inset space \thinspace{}
16645 \begin_inset Flex Code
16648 \begin_layout Plain Layout
16654 ] Indicates whether the float is already defined in the document class or
16655 if instead the \SpecialChar LaTeX
16657 \begin_inset Flex Code
16660 \begin_layout Plain Layout
16666 needs to be loaded to define it on-the-fly.
16668 \begin_inset Flex Code
16671 \begin_layout Plain Layout
16678 \begin_inset Flex Code
16681 \begin_layout Plain Layout
16688 It should be set to
16689 \begin_inset Flex Code
16692 \begin_layout Plain Layout
16698 if the float is already defined by the \SpecialChar LaTeX
16702 \begin_layout Description
16703 \begin_inset Flex Code
16706 \begin_layout Plain Layout
16713 \begin_inset Flex Code
16716 \begin_layout Plain Layout
16723 \begin_inset Quotes erd
16727 \begin_inset Quotes erd
16730 ] The command used to generate a list of floats of this type; the leading
16739 \begin_inset Flex Code
16742 \begin_layout Plain Layout
16748 is false, since there is no standard way to generate this command.
16750 \begin_inset Flex Code
16753 \begin_layout Plain Layout
16759 is true, since in that case there is a standard way to define the command.
16762 \begin_layout Description
16763 \begin_inset Flex Code
16766 \begin_layout Plain Layout
16773 \begin_inset Flex Code
16776 \begin_layout Plain Layout
16783 \begin_inset Quotes erd
16787 \begin_inset Quotes erd
16790 ] A title for a list of floats of this kind (list of figures, tables, or
16792 It is used for the screen label within \SpecialChar LyX
16793 , it is used by \SpecialChar LaTeX
16795 it is used as the title in the XHTML output.
16796 It will be translated to the document language.
16799 \begin_layout Description
16800 \begin_inset Flex Code
16803 \begin_layout Plain Layout
16810 \begin_inset Flex Code
16813 \begin_layout Plain Layout
16820 \begin_inset Quotes erd
16824 \begin_inset Quotes erd
16827 ] This (optional) argument determines whether floats of this class will
16828 be numbered within some sectional unit of the document.
16830 \begin_inset Flex Code
16833 \begin_layout Plain Layout
16840 \begin_inset Quotes eld
16844 \begin_inset Flex Code
16847 \begin_layout Plain Layout
16854 \begin_inset Quotes erd
16857 , the floats will be numbered within chapters.
16861 \begin_layout Description
16862 \begin_inset Flex Code
16865 \begin_layout Plain Layout
16872 \begin_inset Flex Code
16875 \begin_layout Plain Layout
16882 \begin_inset Quotes erd
16886 \begin_inset Quotes erd
16889 ] The default placement for the given class of floats.
16890 The string should be as in standard \SpecialChar LaTeX
16892 \begin_inset Flex Code
16895 \begin_layout Plain Layout
16902 \begin_inset Flex Code
16905 \begin_layout Plain Layout
16912 \begin_inset Flex Code
16915 \begin_layout Plain Layout
16922 \begin_inset Flex Code
16925 \begin_layout Plain Layout
16931 for top, bottom, page, and here, respectively.
16935 \begin_layout Plain Layout
16936 Note that the order of these letters in the string is irrelevant, like in
16943 On top of that there is a new type,
16944 \begin_inset Flex Code
16947 \begin_layout Plain Layout
16953 , which does not really correspond to a float, since it means: put it
16954 \begin_inset Quotes eld
16958 \begin_inset Quotes erd
16962 Note however that the
16963 \begin_inset Flex Code
16966 \begin_layout Plain Layout
16972 specifier is special and, because of implementation details, cannot be
16973 used in non-built in float types.
16974 If you do not understand what this means, just use
16975 \begin_inset Quotes eld
16979 \begin_inset Flex Code
16982 \begin_layout Plain Layout
16989 \begin_inset Quotes erd
16995 \begin_layout Description
16996 \begin_inset Flex Code
16999 \begin_layout Plain Layout
17006 \begin_inset Flex Code
17009 \begin_layout Plain Layout
17015 ] The prefix to use when creating labels referring to floats of this type.
17016 This allows the use of formatted references.
17017 Note that you can remove any
17018 \begin_inset Flex Code
17021 \begin_layout Plain Layout
17027 set by a copied style by using the special value
17028 \begin_inset Quotes eld
17032 \begin_inset Quotes erd
17035 , which must be all caps.
17038 \begin_layout Description
17039 \begin_inset Flex Code
17042 \begin_layout Plain Layout
17049 \begin_inset Flex Code
17052 \begin_layout Plain Layout
17059 \begin_inset Quotes erd
17063 \begin_inset Quotes erd
17066 ] The style used when defining the float using
17067 \begin_inset Flex Code
17070 \begin_layout Plain Layout
17081 \begin_layout Description
17082 \begin_inset Flex Code
17085 \begin_layout Plain Layout
17092 \begin_inset Flex Code
17095 \begin_layout Plain Layout
17102 \begin_inset Quotes erd
17106 \begin_inset Quotes erd
17110 \begin_inset Quotes eld
17114 \begin_inset Quotes erd
17117 of the new class of floats, like program or algorithm.
17118 After the appropriate
17119 \begin_inset Flex Code
17122 \begin_layout Plain Layout
17131 \begin_inset Flex Code
17134 \begin_layout Plain Layout
17143 \begin_inset Flex Code
17146 \begin_layout Plain Layout
17157 \begin_layout Description
17158 \begin_inset Flex Code
17161 \begin_layout Plain Layout
17168 \begin_inset Flex Code
17171 \begin_layout Plain Layout
17178 \begin_inset space \thinspace{}
17182 \begin_inset Flex Code
17185 \begin_layout Plain Layout
17193 ] Specifies whether this float is defined using the \SpecialChar LaTeX
17195 \begin_inset Flex Code
17198 \begin_layout Plain Layout
17204 , either by the class file, another package or on-the-fly by \SpecialChar LyX
17208 \begin_layout Standard
17209 Note that defining a float with type
17210 \begin_inset Flex Code
17213 \begin_layout Plain Layout
17221 automatically defines the corresponding counter with name
17222 \begin_inset Flex Code
17225 \begin_layout Plain Layout
17236 \begin_layout Subsection
17237 Flex insets and InsetLayout
17238 \begin_inset CommandInset label
17240 name "subsec:Flex-insets-and"
17247 \begin_layout Standard
17248 Flex insets come in three different kinds:
17251 \begin_layout Itemize
17253 \begin_inset Flex Code
17256 \begin_layout Plain Layout
17262 ): These define semantic markup corresponding to such \SpecialChar LaTeX
17264 \begin_inset Flex Code
17267 \begin_layout Plain Layout
17276 \begin_inset Flex Code
17279 \begin_layout Plain Layout
17290 \begin_layout Itemize
17292 \begin_inset Flex Code
17295 \begin_layout Plain Layout
17301 ): These can be used to define custom collapsible insets, similar to \SpecialChar TeX
17303 footnote, and the like.
17304 An obvious example is an endnote inset, which is defined in the
17305 \begin_inset Flex Code
17308 \begin_layout Plain Layout
17317 \begin_layout Itemize
17319 \begin_inset Flex Code
17322 \begin_layout Plain Layout
17328 ): For use with DocBook classes.
17331 \begin_layout Standard
17332 Flex insets are defined using the
17333 \begin_inset Flex Code
17336 \begin_layout Plain Layout
17342 tag, which shall be explained in a moment.
17345 \begin_layout Standard
17347 \begin_inset Flex Code
17350 \begin_layout Plain Layout
17356 tag also serves another function: It can be used to customize the general
17357 layout of many different types of insets.
17359 \begin_inset Flex Code
17362 \begin_layout Plain Layout
17368 can be used to customize the layout parameters for footnotes, marginal
17369 notes, note insets, \SpecialChar TeX
17370 code (ERT) insets, branches, listings, indexes, boxes,
17371 tables, algorithms, URLs, and captions, as well as to define Flex insets.
17374 \begin_layout Standard
17376 \begin_inset Flex Code
17379 \begin_layout Plain Layout
17385 definition must begin with a line of the form:
17388 \begin_layout LyX-Code
17392 \begin_layout Standard
17394 \begin_inset Flex Code
17397 \begin_layout Plain Layout
17403 indicates the inset whose layout is being defined, and here there are four
17407 \begin_layout Enumerate
17408 The layout for a pre-existing inset is being modified.
17409 In this case, can be
17410 \begin_inset Flex Code
17413 \begin_layout Plain Layout
17419 any one of the following:
17420 \begin_inset Flex Code
17423 \begin_layout Plain Layout
17430 \begin_inset Flex Code
17433 \begin_layout Plain Layout
17440 \begin_inset Flex Code
17443 \begin_layout Plain Layout
17450 \begin_inset Flex Code
17453 \begin_layout Plain Layout
17460 \begin_inset Flex Code
17463 \begin_layout Plain Layout
17470 \begin_inset Flex Code
17473 \begin_layout Plain Layout
17480 \begin_inset Flex Code
17483 \begin_layout Plain Layout
17490 \begin_inset Flex Code
17493 \begin_layout Plain Layout
17500 \begin_inset Flex Code
17503 \begin_layout Plain Layout
17510 \begin_inset Flex Code
17513 \begin_layout Plain Layout
17520 \begin_inset Flex Code
17523 \begin_layout Plain Layout
17530 \begin_inset Flex Code
17533 \begin_layout Plain Layout
17540 \begin_inset Flex Code
17543 \begin_layout Plain Layout
17550 \begin_inset Flex Code
17553 \begin_layout Plain Layout
17560 \begin_inset Flex Code
17563 \begin_layout Plain Layout
17570 \begin_inset Flex Code
17573 \begin_layout Plain Layout
17580 \begin_inset Flex Code
17583 \begin_layout Plain Layout
17590 \begin_inset Flex Code
17593 \begin_layout Plain Layout
17600 \begin_inset Flex Code
17603 \begin_layout Plain Layout
17610 \begin_inset Flex Code
17613 \begin_layout Plain Layout
17622 \begin_layout Enumerate
17623 The layout for a Flex inset is being defined.
17625 \begin_inset Flex Code
17628 \begin_layout Plain Layout
17634 must be of the form
17635 \begin_inset Quotes eld
17639 \begin_inset Flex Code
17642 \begin_layout Plain Layout
17649 \begin_inset Quotes erd
17653 \begin_inset Flex Code
17656 \begin_layout Plain Layout
17662 may be be any valid identifier not used by a pre-existing Flex inset.
17663 The identifier may include spaces, but in that case the whole thing must
17664 be wrapped in quotes.
17665 Note that the definition of a flex inset
17670 \begin_inset Flex Code
17673 \begin_layout Plain Layout
17679 entry, declaring which type of inset it defines.
17682 \begin_layout Enumerate
17683 The layout for user specific branch is being defined.
17685 \begin_inset Flex Code
17688 \begin_layout Plain Layout
17694 must be of the form
17695 \begin_inset Quotes eld
17699 \begin_inset Flex Code
17702 \begin_layout Plain Layout
17709 \begin_inset Quotes erd
17713 \begin_inset Flex Code
17716 \begin_layout Plain Layout
17722 may be be any valid identifier of branch defined in user's document.
17723 The identifier may include spaces, but in that case the whole thing must
17724 be wrapped in quotes.
17725 The main purpose of this feature is to allow \SpecialChar LaTeX
17726 wrapping around specific
17727 branches as user needs.
17730 \begin_layout Enumerate
17731 The layout of a user (or class) specific caption is being defined.
17733 \begin_inset Flex Code
17736 \begin_layout Plain Layout
17742 must be of the form
17743 \begin_inset Quotes eld
17747 \begin_inset Flex Code
17750 \begin_layout Plain Layout
17757 \begin_inset Quotes erd
17761 \begin_inset Flex Code
17764 \begin_layout Plain Layout
17770 specifies the name of the caption as it appears in the menu.
17771 Have a look at the standard caption (
17772 \begin_inset Flex Code
17775 \begin_layout Plain Layout
17781 ), the specific captions of the KOMA-Script classes (
17782 \begin_inset Flex Code
17785 \begin_layout Plain Layout
17792 \begin_inset Flex Code
17795 \begin_layout Plain Layout
17804 \begin_inset space ~
17810 \begin_inset Flex Code
17813 \begin_layout Plain Layout
17819 ) for applications.
17822 \begin_layout Standard
17824 \begin_inset Flex Code
17827 \begin_layout Plain Layout
17833 definition can contain the following entries:
17836 \begin_layout Description
17837 \begin_inset Flex Code
17840 \begin_layout Plain Layout
17847 \begin_inset Flex Code
17850 \begin_layout Plain Layout
17856 ] Defines argument number of a command\SpecialChar breakableslash
17857 environment associated with the current
17859 The definition must end with
17860 \begin_inset Flex Code
17863 \begin_layout Plain Layout
17871 \begin_inset CommandInset ref
17873 reference "subsec:Paragraph-Styles"
17880 \begin_layout Description
17881 \begin_inset Flex Code
17884 \begin_layout Plain Layout
17890 Preamble for changing language commands; see
17891 \begin_inset CommandInset ref
17893 reference "subsec:I18n"
17900 \begin_layout Description
17901 \begin_inset Flex Code
17904 \begin_layout Plain Layout
17911 \begin_inset Flex Code
17914 \begin_layout Plain Layout
17920 ] The color for the inset's background.
17922 \begin_inset CommandInset ref
17924 reference "chap:Names-of-colors"
17928 for a list of the available color names.
17931 \begin_layout Description
17932 \begin_inset Flex Code
17935 \begin_layout Plain Layout
17942 \begin_inset Flex Code
17945 \begin_layout Plain Layout
17954 \begin_inset space \thinspace{}
17958 \begin_inset Flex Code
17961 \begin_layout Plain Layout
17967 ] Whether to use the content of the inset as the label, when the inset is
17972 \begin_layout Description
17973 \begin_inset Flex Code
17976 \begin_layout Plain Layout
17983 \begin_inset Flex Code
17986 \begin_layout Plain Layout
17992 ] As with paragraph styles, see
17993 \begin_inset CommandInset ref
17995 reference "subsec:Paragraph-Styles"
18000 Note that you need to specify the complete type, e.
18001 \begin_inset space \thinspace{}
18005 \begin_inset space ~
18009 \begin_inset Flex Code
18012 \begin_layout Plain Layout
18013 CopyStyle Flex:<name>
18021 \begin_layout Description
18022 \begin_inset Flex Code
18025 \begin_layout Plain Layout
18032 \begin_inset Flex Code
18035 \begin_layout Plain Layout
18044 \begin_inset space \thinspace{}
18048 \begin_inset Flex Code
18051 \begin_layout Plain Layout
18057 ] Indicates whether the user may employ the Paragraph Settings dialog to
18058 customize the paragraph.
18061 \begin_layout Description
18062 \begin_inset Flex Code
18065 \begin_layout Plain Layout
18072 \begin_inset Flex Code
18075 \begin_layout Plain Layout
18082 \begin_inset Flex Code
18085 \begin_layout Plain Layout
18092 \begin_inset Flex Code
18095 \begin_layout Plain Layout
18101 , describing the rendering style used for the inset's frame and buttons.
18102 Footnotes generally use
18103 \begin_inset Flex Code
18106 \begin_layout Plain Layout
18112 , ERT insets generally
18113 \begin_inset Flex Code
18116 \begin_layout Plain Layout
18122 , and character styles
18123 \begin_inset Flex Code
18126 \begin_layout Plain Layout
18135 \begin_layout Description
18136 \begin_inset Flex Code
18139 \begin_layout Plain Layout
18146 \begin_inset Flex Code
18149 \begin_layout Plain Layout
18158 \begin_inset space \thinspace{}
18164 \begin_inset Flex Code
18167 \begin_layout Plain Layout
18176 \begin_inset Flex Code
18179 \begin_layout Plain Layout
18186 \begin_inset Flex Code
18189 \begin_layout Plain Layout
18196 Indicates whether the environment will stand on its own in the output or
18197 will appear inline with the surrounding text.
18198 If set to false, it is supposed that the \SpecialChar LaTeX
18199 environment ignores white space
18200 (including one newline character) after the
18201 \begin_inset Flex Code
18204 \begin_layout Plain Layout
18217 \begin_inset Flex Code
18220 \begin_layout Plain Layout
18236 \begin_layout Description
18237 \begin_inset Flex Code
18240 \begin_layout Plain Layout
18246 Required at the end of the
18247 \begin_inset Flex Code
18250 \begin_layout Plain Layout
18259 \begin_layout Description
18260 \begin_inset Flex Code
18263 \begin_layout Plain Layout
18269 The font used for both the text body
18275 \begin_inset CommandInset ref
18277 reference "subsec:Font-description"
18282 Note that defining this font automatically defines the
18283 \begin_inset Flex Code
18286 \begin_layout Plain Layout
18292 to the same value, so define this first and define
18293 \begin_inset Flex Code
18296 \begin_layout Plain Layout
18302 later if you want them to be different.
18305 \begin_layout Description
18306 \begin_inset Flex Code
18309 \begin_layout Plain Layout
18310 FixedWidthPreambleEncoding
18316 \begin_inset Flex Code
18319 \begin_layout Plain Layout
18328 \begin_inset space \thinspace{}
18332 \begin_inset Flex Code
18335 \begin_layout Plain Layout
18341 ] Force a fixed width encoding for the translated contents of
18342 \begin_inset Flex Code
18345 \begin_layout Plain Layout
18352 \begin_inset Flex Code
18355 \begin_layout Plain Layout
18361 code generated by this layout.
18362 This is needed for special \SpecialChar LaTeX
18367 that do not work with variable width encodings such as
18372 This setting is ignored if fully Unicode aware \SpecialChar LaTeX
18373 backends such as Xe\SpecialChar TeX
18375 Lua\SpecialChar TeX
18379 \begin_layout Description
18380 \begin_inset Flex Code
18383 \begin_layout Plain Layout
18384 ForceLocalFontSwitch
18390 \begin_inset Flex Code
18393 \begin_layout Plain Layout
18402 \begin_inset space \thinspace{}
18406 \begin_inset Flex Code
18409 \begin_layout Plain Layout
18415 ] When using babel, always use a local font switch (
18416 \begin_inset Flex Code
18419 \begin_layout Plain Layout
18427 ), never a global one (such as
18428 \begin_inset Flex Code
18431 \begin_layout Plain Layout
18442 \begin_layout Description
18443 \begin_inset Flex Code
18446 \begin_layout Plain Layout
18453 \begin_inset Flex Code
18456 \begin_layout Plain Layout
18465 \begin_inset space \thinspace{}
18469 \begin_inset Flex Code
18472 \begin_layout Plain Layout
18479 \begin_inset Quotes eld
18483 \begin_inset Quotes erd
18486 language, leading to Left-to-Right (Latin) output, e.
18487 \begin_inset space \thinspace{}
18491 \begin_inset space \space{}
18494 in \SpecialChar TeX
18499 \begin_layout Description
18500 \begin_inset Flex Code
18503 \begin_layout Plain Layout
18510 \begin_inset Flex Code
18513 \begin_layout Plain Layout
18522 \begin_inset space \thinspace{}
18526 \begin_inset Flex Code
18529 \begin_layout Plain Layout
18535 ] Force a a line break in the \SpecialChar LaTeX
18536 output before the inset starts and after
18538 This assures the inset itself is output on its own lines, for parsing purposes.
18541 \begin_layout Description
18542 \begin_inset Flex Code
18545 \begin_layout Plain Layout
18552 \begin_inset Flex Code
18555 \begin_layout Plain Layout
18564 \begin_inset space \thinspace{}
18568 \begin_inset Flex Code
18571 \begin_layout Plain Layout
18577 ] Indicates whether the
18578 \begin_inset Flex Code
18581 \begin_layout Plain Layout
18587 should be used or, instead, the user can change the paragraph style used
18592 \begin_layout Description
18593 \begin_inset Flex Code
18596 \begin_layout Plain Layout
18603 \begin_inset Flex Code
18606 \begin_layout Plain Layout
18615 \begin_inset space \thinspace{}
18619 \begin_inset Flex Code
18622 \begin_layout Plain Layout
18628 ] As with paragraph styles, see
18629 \begin_inset CommandInset ref
18631 reference "subsec:Paragraph-Styles"
18638 \begin_layout Description
18639 \begin_inset Flex Code
18642 \begin_layout Plain Layout
18648 These tags control the XHTML output.
18650 \begin_inset CommandInset ref
18652 reference "sec:Tags-for-XHTML"
18659 \begin_layout Description
18660 \begin_inset Flex Code
18663 \begin_layout Plain Layout
18670 \begin_inset Flex Code
18673 \begin_layout Plain Layout
18682 \begin_inset space \thinspace{}
18686 \begin_inset Flex Code
18689 \begin_layout Plain Layout
18695 ] Whether to include the contents of this inset in the strings generated
18696 for the `Outline' pane.
18697 One would not, for example, want the content of a footnote in a section
18698 header to be included in the TOC displayed in the outline, but one would
18699 normally want the content of a character style displayed.
18700 Default is false: not to include.
18703 \begin_layout Description
18704 \begin_inset Flex Code
18707 \begin_layout Plain Layout
18716 \begin_inset Flex Code
18719 \begin_layout Plain Layout
18728 \begin_inset space \thinspace{}
18732 \begin_inset Flex Code
18735 \begin_layout Plain Layout
18741 ] As with paragraph styles, see
18742 \begin_inset CommandInset ref
18744 reference "subsec:Paragraph-Styles"
18751 \begin_layout Description
18752 \begin_inset Flex Code
18755 \begin_layout Plain Layout
18761 The font used for the label.
18763 \begin_inset CommandInset ref
18765 reference "subsec:Font-description"
18770 Note that this definition can never appear before
18771 \begin_inset Flex Code
18774 \begin_layout Plain Layout
18780 , lest it be ineffective.
18783 \begin_layout Description
18784 \begin_inset Flex Code
18787 \begin_layout Plain Layout
18794 \begin_inset Flex Code
18797 \begin_layout Plain Layout
18804 \begin_inset Quotes erd
18808 \begin_inset Quotes erd
18811 ] What will be displayed on the button or elsewhere as the inset label.
18813 \begin_inset Flex Code
18816 \begin_layout Plain Layout
18824 \begin_inset Flex Code
18827 \begin_layout Plain Layout
18833 ) modify this label on the fly.
18836 \begin_layout Description
18837 \begin_inset Flex Code
18840 \begin_layout Plain Layout
18846 Language dependent preamble; see
18847 \begin_inset CommandInset ref
18849 reference "subsec:I18n"
18856 \begin_layout Description
18857 \begin_inset Flex Code
18860 \begin_layout Plain Layout
18867 \begin_inset Flex Code
18870 \begin_layout Plain Layout
18876 ] The name of the corresponding \SpecialChar LaTeX
18878 Either the environment or command name.
18881 \begin_layout Description
18882 \begin_inset Flex Code
18885 \begin_layout Plain Layout
18892 \begin_inset Flex Code
18895 \begin_layout Plain Layout
18901 ] The optional parameter for the corresponding
18902 \begin_inset Flex Code
18905 \begin_layout Plain Layout
18911 stuff, including possible bracket pairs like
18912 \begin_inset Flex Code
18915 \begin_layout Plain Layout
18922 This parameter cannot be changed from within \SpecialChar LyX
18924 \begin_inset Flex Code
18927 \begin_layout Plain Layout
18933 for customizable parameters).
18934 It will be output as is after all \SpecialChar LaTeX
18936 \begin_inset Flex Code
18939 \begin_layout Plain Layout
18948 \begin_layout Description
18949 \begin_inset Flex Code
18952 \begin_layout Plain Layout
18959 \begin_inset Flex Code
18962 \begin_layout Plain Layout
18963 Command, Environment, None
18968 ] How the style should be translated into \SpecialChar LaTeX
18973 \begin_layout Plain Layout
18974 \begin_inset Flex Code
18977 \begin_layout Plain Layout
18983 is perhaps a bit misleading, since these rules apply to SGML classes too.
18984 Visit the SGML class files for specific examples.
18993 \begin_layout Description
18994 \begin_inset Flex Code
18997 \begin_layout Plain Layout
19003 means nothing special
19006 \begin_layout Description
19007 \begin_inset Flex Code
19010 \begin_layout Plain Layout
19017 \begin_inset Flex Code
19020 \begin_layout Plain Layout
19027 {\SpecialChar ldots
19036 \begin_layout Description
19037 \begin_inset Flex Code
19040 \begin_layout Plain Layout
19047 \begin_inset Flex Code
19050 \begin_layout Plain Layout
19057 }\SpecialChar ldots
19072 \begin_layout Standard
19073 Putting the last few things together, the \SpecialChar LaTeX
19074 output will be either:
19077 \begin_layout LyX-Code
19080 LatexName[LatexParam]{\SpecialChar ldots
19084 \begin_layout Standard
19088 \begin_layout LyX-Code
19091 begin{LatexName}[LatexParam] \SpecialChar ldots
19097 \begin_layout Standard
19098 depending upon the \SpecialChar LaTeX
19103 \begin_layout Description
19104 \begin_inset Flex Code
19107 \begin_layout Plain Layout
19114 \begin_inset Flex Code
19117 \begin_layout Plain Layout
19123 ] A string that is put at the beginning of the layout content.
19124 A line break in the output can be indicated by
19125 \begin_inset Flex Code
19128 \begin_layout Plain Layout
19137 \begin_layout Description
19138 \begin_inset Flex Code
19141 \begin_layout Plain Layout
19148 \begin_inset Flex Code
19151 \begin_layout Plain Layout
19158 \begin_inset Flex Code
19161 \begin_layout Plain Layout
19168 \begin_inset Flex Code
19171 \begin_layout Plain Layout
19178 \begin_inset Flex Code
19181 \begin_layout Plain Layout
19187 (indicating a dummy definition ending definitions of charstyles, etc).
19188 This entry is required in and is only meaningful for Flex insets.
19189 Among other things, it determines on which menu this inset will appear.
19191 \begin_inset Flex Code
19194 \begin_layout Plain Layout
19201 \begin_inset Flex Code
19204 \begin_layout Plain Layout
19210 will automatically set
19211 \begin_inset Flex Code
19214 \begin_layout Plain Layout
19221 \begin_inset Flex Code
19224 \begin_layout Plain Layout
19232 \begin_inset Flex Code
19235 \begin_layout Plain Layout
19241 can be set to true, or
19242 \begin_inset Flex Code
19245 \begin_layout Plain Layout
19252 \begin_inset Flex Code
19255 \begin_layout Plain Layout
19261 insets by setting it
19266 \begin_inset Flex Code
19269 \begin_layout Plain Layout
19278 \begin_layout Description
19279 \begin_inset Flex Code
19282 \begin_layout Plain Layout
19289 \begin_inset Flex Code
19292 \begin_layout Plain Layout
19301 \begin_inset space \thinspace{}
19305 \begin_inset Flex Code
19308 \begin_layout Plain Layout
19314 ] Whether multiple paragraphs are permitted in this inset.
19316 \begin_inset Flex Code
19319 \begin_layout Plain Layout
19325 to the same value and
19326 \begin_inset Flex Code
19329 \begin_layout Plain Layout
19335 to the opposite value.
19336 These can be reset to other values, if they are used
19341 \begin_inset Flex Code
19344 \begin_layout Plain Layout
19354 \begin_layout Description
19355 \begin_inset Flex Code
19358 \begin_layout Plain Layout
19365 \begin_inset Flex Code
19368 \begin_layout Plain Layout
19377 \begin_inset space \thinspace{}
19381 \begin_inset Flex Code
19384 \begin_layout Plain Layout
19390 ] Whether fragile commands in this inset should be
19391 \begin_inset Flex Code
19394 \begin_layout Plain Layout
19407 whether the command should itself be protected.) Default is false.
19410 \begin_layout Description
19411 \begin_inset Flex Code
19414 \begin_layout Plain Layout
19421 \begin_inset Flex Code
19424 \begin_layout Plain Layout
19430 ] Deletes an existing
19431 \begin_inset Flex Code
19434 \begin_layout Plain Layout
19443 \begin_layout Description
19444 \begin_inset Flex Code
19447 \begin_layout Plain Layout
19454 \begin_inset Flex Code
19457 \begin_layout Plain Layout
19464 \begin_inset Flex Code
19467 \begin_layout Plain Layout
19473 that has replaced this
19474 \begin_inset Flex Code
19477 \begin_layout Plain Layout
19484 This is used to rename an
19485 \begin_inset Flex Code
19488 \begin_layout Plain Layout
19494 , while keeping backward compatibility.
19497 \begin_layout Description
19498 \begin_inset Flex Code
19501 \begin_layout Plain Layout
19508 \begin_inset Flex Code
19511 \begin_layout Plain Layout
19520 \begin_inset space \thinspace{}
19524 \begin_inset Flex Code
19527 \begin_layout Plain Layout
19533 ] As with paragraph styles, see
19534 \begin_inset CommandInset ref
19536 reference "subsec:Paragraph-Styles"
19544 \begin_layout Description
19545 \begin_inset Flex Code
19548 \begin_layout Plain Layout
19555 \begin_inset Flex Code
19558 \begin_layout Plain Layout
19567 \begin_inset space \thinspace{}
19571 \begin_inset Flex Code
19574 \begin_layout Plain Layout
19580 ] As with paragraph styles, see
19581 \begin_inset CommandInset ref
19583 reference "subsec:Paragraph-Styles"
19591 \begin_layout Description
19592 \begin_inset Flex Code
19595 \begin_layout Plain Layout
19601 As with paragraph styles, see
19602 \begin_inset CommandInset ref
19604 reference "subsec:Paragraph-Styles"
19611 \begin_layout Description
19612 \begin_inset Flex Code
19615 \begin_layout Plain Layout
19622 \begin_inset Flex Code
19625 \begin_layout Plain Layout
19631 ] The prefix to use when creating labels referring to insets of this type.
19632 This allows the use of formatted references.
19635 \begin_layout Description
19636 \begin_inset Flex Code
19639 \begin_layout Plain Layout
19646 \begin_inset Flex Code
19649 \begin_layout Plain Layout
19655 ] As with paragraph styles, see
19656 \begin_inset CommandInset ref
19658 reference "subsec:Paragraph-Styles"
19665 \begin_layout Description
19666 \begin_inset Flex Code
19669 \begin_layout Plain Layout
19676 \begin_inset Flex Code
19679 \begin_layout Plain Layout
19688 \begin_inset space \thinspace{}
19692 \begin_inset Flex Code
19695 \begin_layout Plain Layout
19701 ] Resets the \SpecialChar LaTeX
19702 arguments of this layout (as defined via the
19703 \begin_inset Flex Code
19706 \begin_layout Plain Layout
19713 This is useful if you have copied a style via
19714 \begin_inset Flex Code
19717 \begin_layout Plain Layout
19723 , but you do not want to inherit its (required and optional) arguments.
19726 \begin_layout Description
19727 \begin_inset Flex Code
19730 \begin_layout Plain Layout
19737 \begin_inset Flex Code
19740 \begin_layout Plain Layout
19747 \begin_inset space \thinspace{}
19751 \begin_inset Flex Code
19754 \begin_layout Plain Layout
19762 ] Whether this inset should use the font of its surrounding environment
19764 Default is false: use the font of the surrounding environment.
19767 \begin_layout Description
19768 \begin_inset Flex Code
19771 \begin_layout Plain Layout
19778 \begin_inset Flex Code
19781 \begin_layout Plain Layout
19787 ] A string that is put at the end of the layout content.
19788 A line break in the output can be indicated by
19789 \begin_inset Flex Code
19792 \begin_layout Plain Layout
19801 \begin_layout Description
19802 \begin_inset Flex Code
19805 \begin_layout Plain Layout
19812 \begin_inset Flex Code
19815 \begin_layout Plain Layout
19822 \begin_inset space \thinspace{}
19826 \begin_inset Flex Code
19829 \begin_layout Plain Layout
19837 ] Allow spell-checking the contents of this inset.
19841 \begin_layout Subsection
19843 \begin_inset CommandInset label
19845 name "subsec:Counters"
19852 \begin_layout Standard
19853 It is necessary to define the counters (
19854 \begin_inset Flex Noun
19857 \begin_layout Plain Layout
19864 \begin_inset Flex Noun
19867 \begin_layout Plain Layout
19873 , \SpecialChar ldots
19874 ) in the text class itself.
19875 The standard counters are defined in the file
19876 \begin_inset Flex Code
19879 \begin_layout Plain Layout
19885 , so you may have to do no more than add
19888 \begin_layout LyX-Code
19889 Input stdcounters.inc
19892 \begin_layout Standard
19893 to your layout file to get them to work.
19894 But if you want to define custom counters, then you can do so.
19895 The counter declaration must begin with:
19898 \begin_layout LyX-Code
19899 Counter CounterName
19902 \begin_layout Standard
19904 \begin_inset Flex Code
19907 \begin_layout Plain Layout
19913 ' is replaced by the name of the counter.
19914 And it must end with
19915 \begin_inset Quotes eld
19919 \begin_inset Flex Code
19922 \begin_layout Plain Layout
19929 \begin_inset Quotes erd
19933 The following parameters can also be used:
19936 \begin_layout Description
19937 \begin_inset Flex Code
19940 \begin_layout Plain Layout
19947 \begin_inset Flex Code
19950 \begin_layout Plain Layout
19956 ] Sets the initial value for the counter, to which it will be reset whenever
19958 Normally, one will want the default, 1.
19961 \begin_layout Description
19962 \begin_inset Flex Code
19965 \begin_layout Plain Layout
19972 \begin_inset Flex Code
19975 \begin_layout Plain Layout
19982 \begin_inset Quotes erd
19986 \begin_inset Quotes erd
19989 ] When defined, this string defines how the counter is displayed.
19990 Setting this value sets
19991 \begin_inset Flex Code
19994 \begin_layout Plain Layout
19995 LabelStringAppendix
20001 The following special constructs can be used in the string:
20005 \begin_layout Itemize
20006 \begin_inset Flex Code
20009 \begin_layout Plain Layout
20017 will be replaced by the expansion of the
20018 \begin_inset Flex Code
20021 \begin_layout Plain Layout
20028 \begin_inset Flex Code
20031 \begin_layout Plain Layout
20032 LabelStringAppendix
20038 \begin_inset Flex Code
20041 \begin_layout Plain Layout
20051 \begin_layout Itemize
20052 counter values can be expressed using \SpecialChar LaTeX
20054 \begin_inset Newline newline
20058 \begin_inset Flex Code
20061 \begin_layout Plain Layout
20078 \begin_inset Flex Code
20081 \begin_layout Plain Layout
20093 \begin_layout Plain Layout
20103 Actually, the situation is a bit more complicated: any
20122 other than those described below will produce arabic numerals.
20123 It would not be surprising to see this change in the future.
20129 \begin_inset Flex Code
20132 \begin_layout Plain Layout
20138 : 1, 2, 3,\SpecialChar ldots
20140 \begin_inset Flex Code
20143 \begin_layout Plain Layout
20149 for lower-case letters: a, b, c, \SpecialChar ldots
20151 \begin_inset Flex Code
20154 \begin_layout Plain Layout
20160 for upper-case letters: A, B, C, \SpecialChar ldots
20162 \begin_inset Flex Code
20165 \begin_layout Plain Layout
20171 for lower-case roman numerals: i, ii, iii, \SpecialChar ldots
20173 \begin_inset Flex Code
20176 \begin_layout Plain Layout
20182 for upper-case roman numerals: I, II, III\SpecialChar ldots
20184 \begin_inset Flex Code
20187 \begin_layout Plain Layout
20193 for hebrew numerals.
20197 \begin_layout Standard
20198 If LabelString is not defined, a default value is constructed as follows:
20199 if the counter has a master counter
20200 \begin_inset Flex Code
20203 \begin_layout Plain Layout
20210 \begin_inset Flex Code
20213 \begin_layout Plain Layout
20220 \begin_inset Newline newline
20224 \begin_inset Flex Code
20227 \begin_layout Plain Layout
20237 is used; otherwise the string
20238 \begin_inset Flex Code
20241 \begin_layout Plain Layout
20252 \begin_layout Description
20253 \begin_inset Flex Code
20256 \begin_layout Plain Layout
20257 LabelStringAppendix
20263 \begin_inset Flex Code
20266 \begin_layout Plain Layout
20273 \begin_inset Quotes erd
20277 \begin_inset Quotes erd
20281 \begin_inset Flex Code
20284 \begin_layout Plain Layout
20290 , but for use in the Appendix.
20293 \begin_layout Description
20294 \begin_inset Flex Code
20297 \begin_layout Plain Layout
20304 \begin_inset Flex Code
20307 \begin_layout Plain Layout
20314 \begin_inset Quotes erd
20318 \begin_inset Quotes erd
20321 ] A format for use with formatted references to this counter.
20322 For example, one might want to have references to section numbers appear
20324 \begin_inset Quotes eld
20328 \begin_inset Quotes erd
20332 The string should contain
20333 \begin_inset Quotes eld
20337 \begin_inset Quotes erd
20341 This will be replaced by the counter number itself.
20342 So, for sections, it would be: Section ##.
20345 \begin_layout Description
20346 \begin_inset Flex Code
20349 \begin_layout Plain Layout
20356 \begin_inset Flex Code
20359 \begin_layout Plain Layout
20366 \begin_inset Quotes erd
20370 \begin_inset Quotes erd
20373 ] If this is set to the name of another counter, the present counter will
20374 be reset every time the other one is increased.
20376 \begin_inset Flex Code
20379 \begin_layout Plain Layout
20386 \begin_inset Flex Code
20389 \begin_layout Plain Layout
20398 \begin_layout Subsection
20400 \begin_inset CommandInset label
20402 name "subsec:Font-description"
20409 \begin_layout Standard
20410 A font description looks like this:
20413 \begin_layout LyX-Code
20427 \begin_layout LyX-Code
20431 \begin_layout LyX-Code
20435 \begin_layout Standard
20436 The following commands are available:
20439 \begin_layout Description
20440 \begin_inset Flex Code
20443 \begin_layout Plain Layout
20450 \begin_inset Flex Code
20453 \begin_layout Plain Layout
20462 \begin_inset Flex Code
20465 \begin_layout Plain Layout
20472 \begin_inset Flex Code
20475 \begin_layout Plain Layout
20482 \begin_inset Flex Code
20485 \begin_layout Plain Layout
20492 \begin_inset Flex Code
20495 \begin_layout Plain Layout
20502 \begin_inset Flex Code
20505 \begin_layout Plain Layout
20512 \begin_inset Flex Code
20515 \begin_layout Plain Layout
20522 \begin_inset Flex Code
20525 \begin_layout Plain Layout
20532 \begin_inset Flex Code
20535 \begin_layout Plain Layout
20542 \begin_inset Flex Code
20545 \begin_layout Plain Layout
20552 \begin_inset Flex Code
20555 \begin_layout Plain Layout
20562 \begin_inset Flex Code
20565 \begin_layout Plain Layout
20572 \begin_inset Flex Code
20575 \begin_layout Plain Layout
20582 \begin_inset Flex Code
20585 \begin_layout Plain Layout
20592 \begin_inset Flex Code
20595 \begin_layout Plain Layout
20602 \begin_inset Flex Code
20605 \begin_layout Plain Layout
20612 \begin_inset Flex Code
20615 \begin_layout Plain Layout
20622 \begin_inset Flex Code
20625 \begin_layout Plain Layout
20632 \begin_inset Flex Code
20635 \begin_layout Plain Layout
20642 \begin_inset Flex Code
20645 \begin_layout Plain Layout
20654 \begin_layout Description
20655 \begin_inset Flex Code
20658 \begin_layout Plain Layout
20665 \begin_inset Flex Code
20668 \begin_layout Plain Layout
20677 \begin_inset Flex Code
20680 \begin_layout Plain Layout
20687 \begin_inset Flex Code
20690 \begin_layout Plain Layout
20699 \begin_layout Description
20700 \begin_inset Flex Code
20703 \begin_layout Plain Layout
20710 \begin_inset Flex Code
20713 \begin_layout Plain Layout
20719 ] Valid arguments are:
20720 \begin_inset Flex Code
20723 \begin_layout Plain Layout
20730 \begin_inset Flex Code
20733 \begin_layout Plain Layout
20740 \begin_inset Flex Code
20743 \begin_layout Plain Layout
20750 \begin_inset Flex Code
20753 \begin_layout Plain Layout
20760 \begin_inset Flex Code
20763 \begin_layout Plain Layout
20770 \begin_inset Flex Code
20773 \begin_layout Plain Layout
20780 \begin_inset Flex Code
20783 \begin_layout Plain Layout
20790 \begin_inset Flex Code
20793 \begin_layout Plain Layout
20800 \begin_inset Flex Code
20803 \begin_layout Plain Layout
20810 \begin_inset Flex Code
20813 \begin_layout Plain Layout
20820 \begin_inset Flex Code
20823 \begin_layout Plain Layout
20830 \begin_inset Flex Code
20833 \begin_layout Plain Layout
20840 Each of these turns on or off the corresponding attribute.
20842 \begin_inset Flex Code
20845 \begin_layout Plain Layout
20851 turns on emphasis, and
20852 \begin_inset Flex Code
20855 \begin_layout Plain Layout
20863 \begin_inset Newline newline
20866 If the latter seems puzzling, remember that the font settings for the present
20867 context are generally inherited from the surrounding context.
20869 \begin_inset Flex Code
20872 \begin_layout Plain Layout
20878 would turn off the emphasis that was anyway in effect, say, in a theorem
20882 \begin_layout Description
20883 \begin_inset Flex Code
20886 \begin_layout Plain Layout
20893 \begin_inset Flex Code
20896 \begin_layout Plain Layout
20905 \begin_inset Flex Code
20908 \begin_layout Plain Layout
20917 \begin_layout Description
20918 \begin_inset Flex Code
20921 \begin_layout Plain Layout
20928 \begin_inset Flex Code
20931 \begin_layout Plain Layout
20940 \begin_inset Flex Code
20943 \begin_layout Plain Layout
20950 \begin_inset Flex Code
20953 \begin_layout Plain Layout
20960 \begin_inset Flex Code
20963 \begin_layout Plain Layout
20972 \begin_layout Description
20973 \begin_inset Flex Code
20976 \begin_layout Plain Layout
20983 \begin_inset Flex Code
20986 \begin_layout Plain Layout
20993 \begin_inset Flex Code
20996 \begin_layout Plain Layout
21003 \begin_inset Flex Code
21006 \begin_layout Plain Layout
21015 \begin_inset Flex Code
21018 \begin_layout Plain Layout
21025 \begin_inset Flex Code
21028 \begin_layout Plain Layout
21035 \begin_inset Flex Code
21038 \begin_layout Plain Layout
21045 \begin_inset Flex Code
21048 \begin_layout Plain Layout
21055 \begin_inset Flex Code
21058 \begin_layout Plain Layout
21067 \begin_layout Subsection
21069 \change_inserted -712698321 1483869872
21070 \begin_inset CommandInset label
21072 name "subsec:Citation-engine-description"
21076 Citation engine description
21079 \begin_layout Standard
21081 \change_inserted -712698321 1483875281
21083 \begin_inset Flex Code
21086 \begin_layout Plain Layout
21088 \change_inserted -712698321 1483869913
21096 blocks, as used mainly in cite engine files (see
21097 \begin_inset CommandInset ref
21099 reference "subsec:Cite-Engine-Files"
21106 ), define the citation commands provided by a specific
21107 \begin_inset Quotes eld
21111 \begin_inset Quotes erd
21115 A cite engine, in \SpecialChar LyX
21116 terms, is way specific way to format citations, using
21117 numbers, author names and/or years.
21118 Currently, \SpecialChar LyX
21119 supports three such engine types, namely:
21122 \begin_layout Enumerate
21124 \change_inserted -712698321 1483875764
21125 \begin_inset Flex Code
21128 \begin_layout Plain Layout
21130 \change_inserted -712698321 1483870430
21138 : the default Bib\SpecialChar TeX
21139 way to format citations, a simple numeric style (e.
21140 \begin_inset space \thinspace{}
21144 \begin_inset Quotes eld
21148 \begin_inset Quotes erd
21154 \begin_layout Enumerate
21156 \change_inserted -712698321 1483875766
21157 \begin_inset Flex Code
21160 \begin_layout Plain Layout
21162 \change_inserted -712698321 1483870434
21170 : Harvard-styled citations using author names and publication year (e.
21171 \begin_inset space \thinspace{}
21175 \begin_inset Quotes eld
21178 Smith and Miller (2017b)
21179 \begin_inset Quotes erd
21185 \begin_layout Enumerate
21187 \change_inserted -712698321 1483875769
21188 \begin_inset Flex Code
21191 \begin_layout Plain Layout
21193 \change_inserted -712698321 1483870457
21201 : extended numerical citations that also allow for author or title next
21203 \begin_inset space \thinspace{}
21207 \begin_inset Quotes eld
21210 Smith and Miller [1]
21211 \begin_inset Quotes erd
21217 \begin_layout Standard
21219 \change_inserted -712698321 1483870566
21220 \begin_inset Flex Code
21223 \begin_layout Plain Layout
21225 \change_inserted -712698321 1483870552
21231 blocks look like this:
21234 \begin_layout LyX-Code
21236 \change_inserted -712698321 1483870590
21240 \begin_layout LyX-Code
21242 \change_inserted -712698321 1483870615
21246 \begin_layout LyX-Code
21248 \change_inserted -712698321 1483870633
21252 \begin_layout LyX-Code
21254 \change_inserted -712698321 1483870652
21255 citeyearpar[][]=parencite*
21258 \begin_layout LyX-Code
21260 \change_inserted -712698321 1483870652
21264 \begin_layout LyX-Code
21266 \change_inserted -712698321 1483870668
21270 \begin_layout Standard
21272 \change_inserted -712698321 1483871113
21274 \begin_inset Flex Code
21277 \begin_layout Plain Layout
21279 \change_inserted -712698321 1483871085
21285 denotes the engine.
21286 The individual lines respectively define a cite command or cite command
21287 paradigm supported by this engine.
21288 The line can be as simple as a cite command that is used both to name the
21289 respective \SpecialChar LyX
21290 command and the \SpecialChar LaTeX
21291 output or more complex in order to differentiate
21294 \change_deleted -712698321 1483871114
21298 \begin_layout Standard
21300 \change_inserted -712698321 1483871119
21301 The full syntax is:
21304 \begin_layout LyX-Code
21306 \change_inserted -712698321 1483870927
21307 LyXName|alias*<!_stardesc!_stardesctooltip>[][]=latexcmd
21310 \begin_layout Itemize
21312 \change_inserted -712698321 1483871222
21313 \begin_inset Flex Code
21316 \begin_layout Plain Layout
21318 \change_inserted -712698321 1483871181
21326 : The name as used in the
21327 \begin_inset Flex Code
21330 \begin_layout Plain Layout
21332 \change_inserted -712698321 1483871216
21344 \begin_layout Standard
21346 \change_inserted -712698321 1483871487
21347 For portability reasons, we try to use the same name for same-formatted
21348 commands in different cite packages (thus many names stem from natbib,
21349 and thus we need to differentiate a
21350 \begin_inset Flex Code
21353 \begin_layout Plain Layout
21355 \change_inserted -712698321 1483871402
21361 sometimes, if the \SpecialChar LaTeX
21362 command names differ).
21366 \begin_layout Itemize
21368 \change_inserted -712698321 1483871583
21369 \begin_inset Flex Code
21372 \begin_layout Plain Layout
21374 \change_inserted -712698321 1483871186
21382 : a (comma-separated) list of commands that fall back to the given
21383 \begin_inset Flex Code
21386 \begin_layout Plain Layout
21388 \change_inserted -712698321 1483871257
21394 in the current engine.
21395 This eases the switch of citation packages and engines.
21397 \begin_inset Flex Code
21400 \begin_layout Plain Layout
21402 \change_inserted -712698321 1483871559
21409 \begin_inset Flex Code
21412 \begin_layout Plain Layout
21414 \change_inserted -712698321 1483871278
21422 in layout definitions.
21425 \begin_layout Itemize
21427 \change_inserted -712698321 1483871307
21428 \begin_inset Flex Code
21431 \begin_layout Plain Layout
21433 \change_inserted -712698321 1483871296
21441 : The actual \SpecialChar LaTeX
21442 command that is output.
21446 \begin_layout Standard
21448 \change_inserted -712698321 1483871348
21449 \begin_inset Flex Code
21452 \begin_layout Plain Layout
21454 \change_inserted -712698321 1483871316
21463 \begin_inset Flex Code
21466 \begin_layout Plain Layout
21468 \change_inserted -712698321 1483871321
21478 \begin_inset Flex Code
21481 \begin_layout Plain Layout
21483 \change_inserted -712698321 1483871333
21490 \begin_inset Flex Code
21493 \begin_layout Plain Layout
21495 \change_inserted -712698321 1483871340
21501 will be output to \SpecialChar LaTeX
21505 \begin_layout Standard
21507 \change_inserted -712698321 1483871604
21511 \begin_layout Itemize
21513 \change_inserted -712698321 1483871664
21514 Capitalization indicates that the command also has a capitalized form (
21515 \begin_inset Flex Code
21518 \begin_layout Plain Layout
21520 \change_inserted -712698321 1483871622
21532 \begin_inset Flex Code
21535 \begin_layout Plain Layout
21537 \change_inserted -712698321 1483871626
21548 These usually enforce up-casing of name prefixes (
21553 \begin_inset Formula $\Rightarrow$
21563 \begin_layout Itemize
21565 \change_inserted -712698321 1483871690
21567 \begin_inset Flex Code
21570 \begin_layout Plain Layout
21572 \change_inserted -712698321 1483871670
21580 indicate the number of optional arguments (there can be 0–2).
21583 \begin_layout Itemize
21585 \change_inserted -712698321 1483871747
21587 \begin_inset Flex Code
21590 \begin_layout Plain Layout
21592 \change_inserted -712698321 1483871698
21600 indicates there is a starred version of the command (
21601 \begin_inset Flex Code
21604 \begin_layout Plain Layout
21606 \change_inserted -712698321 1483871718
21618 \begin_inset Flex Code
21621 \begin_layout Plain Layout
21623 \change_inserted -712698321 1483871724
21638 \begin_layout Standard
21640 \change_inserted -712698321 1483871864
21641 By default, the starred version means: Output all authors even if it should
21643 \begin_inset Quotes eld
21647 \begin_inset Quotes erd
21651 \begin_inset Flex Code
21654 \begin_layout Plain Layout
21656 \change_inserted -712698321 1483871835
21667 \begin_layout Standard
21669 \change_inserted -712698321 1483872045
21670 If the star has a different meaning for a given command, it can be specified
21672 \begin_inset Flex Code
21675 \begin_layout Plain Layout
21677 \change_inserted -712698321 1483871856
21678 <!_stardesc!_stardesctooltip>
21686 Maximal two translatable macro keywords, marked by the prefix
21687 \begin_inset Flex Code
21690 \begin_layout Plain Layout
21692 \change_inserted -712698321 1483872014
21701 The first points to the string that replaces the
21702 \begin_inset Quotes eld
21706 \begin_inset Quotes erd
21709 checkbox label in the citation dialog, the second one to an optional tool
21710 tip for this checkbox.
21714 \begin_layout Standard
21716 \change_inserted -712698321 1483872164
21717 Note that these two macros have to be defined in a
21718 \begin_inset Flex Code
21721 \begin_layout Plain Layout
21723 \change_inserted -712698321 1483871983
21731 (see next section), dropping the
21732 \begin_inset Flex Code
21735 \begin_layout Plain Layout
21737 \change_inserted -712698321 1483872023
21745 from the prefix, like this:
21748 \begin_layout LyX-Code
21750 \change_inserted -712698321 1483872092
21751 _stardesc Sta&rred command label
21754 \begin_layout LyX-Code
21756 \change_inserted -712698321 1483872184
21757 _stardesctooltip Tooltip for the starred command checkbox.
21761 \begin_layout Subsection
21762 \begin_inset CommandInset label
21764 name "subsec:Citation-format-description"
21768 Citation format description
21771 \begin_layout Standard
21773 \begin_inset Flex Code
21776 \begin_layout Plain Layout
21782 blocks are used to describe how bibliographic information should be displayed,
21783 both within \SpecialChar LyX
21784 itself (in the citation dialog and in tooltips, for example)
21785 and in XHTML output.
21786 Such a block might look like this:
21789 \begin_layout LyX-Code
21793 \begin_layout LyX-Code
21797 \begin_layout LyX-Code
21801 \begin_layout LyX-Code
21803 \change_inserted -712698321 1483867197
21807 \begin_layout Standard
21809 \change_inserted -712698321 1483867200
21813 \begin_layout LyX-Code
21815 \change_inserted -712698321 1483867195
21819 \begin_layout LyX-Code
21821 \change_inserted -712698321 1483867204
21825 \begin_layout LyX-Code
21827 \change_inserted -712698321 1483867359
21831 \begin_layout LyX-Code
21833 \change_inserted -712698321 1483867195
21839 \begin_layout Standard
21841 \change_inserted -712698321 1483867269
21843 \change_deleted -712698321 1483867270
21845 \change_inserted -712698321 1483867270
21848 he individual lines define how the bibliographic information associated
21849 with an article or book, respectively, is to be displayed, and such a definitio
21850 n can be given for any
21851 \change_deleted -712698321 1483867550
21853 \change_inserted -712698321 1483867550
21855 \begin_inset Quotes els
21861 \change_deleted -712698321 1483867552
21863 \change_inserted -712698321 1483867552
21865 \begin_inset Quotes ers
21870 that might be present in a Bib\SpecialChar TeX
21873 defines a default format in the source code that will be used if no specific
21874 definition has been given.
21876 predefines several formats in the file
21877 \begin_inset Flex Code
21880 \begin_layout Plain Layout
21886 , which is included in most of \SpecialChar LyX
21887 's document classes.
21888 \change_inserted -712698321 1483867288
21892 \begin_layout Standard
21894 \change_inserted -712698321 1483875512
21895 In the second case, the lines define how a specific citation command (in
21897 \begin_inset Flex Code
21900 \begin_layout Plain Layout
21902 \change_inserted -712698321 1483867674
21913 \begin_inset Flex Code
21916 \begin_layout Plain Layout
21918 \change_inserted -712698321 1483867679
21928 ) is to be displayed on the citation inset label, in the citation dialog,
21929 menu or XHTML output.
21931 defines such formats for the citation style variants it supports via
21933 Document\SpecialChar menuseparator
21934 Setting\SpecialChar menuseparator
21935 Bibliography\SpecialChar ldots
21939 \begin_inset Flex Code
21942 \begin_layout Plain Layout
21944 \change_inserted -712698321 1483875503
21950 files that are shipped with \SpecialChar LyX
21952 \begin_inset CommandInset ref
21954 reference "subsec:Cite-Engine-Files"
21966 \begin_layout Standard
21967 The definitions use a simple language that allows Bib\SpecialChar TeX
21968 keys to be replaced
21970 Keys should be enclosed in
21971 \begin_inset Flex Code
21974 \begin_layout Plain Layout
21981 \begin_inset Flex Code
21984 \begin_layout Plain Layout
21991 So a simple definition might look like this:
21994 \begin_layout LyX-Code
21996 \begin_inset Quotes eld
22000 \begin_inset Quotes erd
22006 \begin_layout Standard
22007 This would print the author, followed by a comma, followed by the title,
22008 in quotes, followed by a period.
22011 \begin_layout Standard
22012 Of course, sometimes you may want to print a key only if it exists.
22013 This can be done by using a conditional construction, such as:
22014 \begin_inset Flex Code
22017 \begin_layout Plain Layout
22019 \begin_inset space ~
22029 \begin_inset Flex Code
22032 \begin_layout Plain Layout
22038 key exists, then print
22039 \begin_inset Quotes eld
22043 \begin_inset space ~
22047 \begin_inset Quotes erd
22050 followed by the volume key.
22051 It is also possible to have an else clause in the conditional, such as:
22052 \begin_inset Newline newline
22056 \begin_inset Flex Code
22059 \begin_layout Plain Layout
22060 {%author%[[%author%]][[%editor%, ed.]]}
22066 \begin_inset Newline newline
22070 \begin_inset Flex Code
22073 \begin_layout Plain Layout
22079 key is printed if it exists; otherwise, the editor key is printed, followed
22081 \begin_inset Quotes eld
22085 \begin_inset space ~
22089 \begin_inset Quotes erd
22092 Note that the key is again enclosed in
22093 \begin_inset Flex Code
22096 \begin_layout Plain Layout
22102 signs; the entire conditional is enclosed in braces; and the if and else
22103 clauses are enclosed in double brackets,
22104 \begin_inset Quotes eld
22108 \begin_inset Flex Code
22111 \begin_layout Plain Layout
22118 \begin_inset Quotes eld
22122 \begin_inset Quotes eld
22126 \begin_inset Flex Code
22129 \begin_layout Plain Layout
22136 \begin_inset Quotes erd
22140 There must be no space between any of these.
22141 \change_inserted -712698321 1483867855
22145 \begin_layout Standard
22147 \change_inserted -712698321 1483867910
22148 Next to the entry keys, there are some special keys that can be used for
22149 these conditionals:
22152 \begin_layout Itemize
22154 \change_inserted -712698321 1483868049
22155 \begin_inset Flex Code
22158 \begin_layout Plain Layout
22160 \change_inserted -712698321 1483867962
22161 {%dialog%[[true]][[false]]}
22169 \begin_inset Quotes eld
22173 \begin_inset Quotes erd
22176 part for dialogs and menus, the
22177 \begin_inset Quotes eld
22181 \begin_inset Quotes erd
22184 part for other contexts (workarea, export)
22187 \begin_layout Itemize
22189 \change_inserted -712698321 1483868068
22190 \begin_inset Flex Code
22193 \begin_layout Plain Layout
22195 \change_inserted -712698321 1483868052
22196 {%export%[[true]][[false]]}
22202 \begin_inset Quotes eld
22206 \begin_inset Quotes erd
22209 part for export and menus, the
22210 \begin_inset Quotes eld
22214 \begin_inset Quotes erd
22217 part for other contexts (workarea, dialog)
22220 \begin_layout Itemize
22222 \change_inserted -712698321 1483868138
22223 \begin_inset Flex Code
22226 \begin_layout Plain Layout
22228 \change_inserted -712698321 1483868076
22235 \begin_inset Quotes eld
22239 \begin_inset Quotes erd
22242 part if another item follows (e.
22243 \begin_inset space \thinspace{}
22246 g., in a citation with multiple keys)
22249 \begin_layout Itemize
22251 \change_inserted -712698321 1483868174
22252 \begin_inset Flex Code
22255 \begin_layout Plain Layout
22257 \change_inserted -712698321 1483868144
22258 {%second%[[true]][[false]]}
22264 \begin_inset Quotes eld
22268 \begin_inset Quotes erd
22271 if this is the second of multiple items, else the
22272 \begin_inset Quotes eld
22276 \begin_inset Quotes erd
22282 \begin_layout Itemize
22284 \change_inserted -712698321 1483868321
22285 \begin_inset Flex Code
22288 \begin_layout Plain Layout
22290 \change_inserted -712698321 1483868259
22291 {%ifstar%[[true]][[false]]}
22297 \begin_inset Quotes eld
22301 \begin_inset Quotes erd
22304 part for starred citation commands (such as
22305 \begin_inset Flex Code
22308 \begin_layout Plain Layout
22310 \change_inserted -712698321 1483868310
22320 ), the false part for unstarred
22323 \begin_layout Itemize
22325 \change_inserted -712698321 1483868404
22326 \begin_inset Flex Code
22329 \begin_layout Plain Layout
22331 \change_inserted -712698321 1483868330
22332 {%ifentrytype:<type>%[[true]][[false]]}
22338 \begin_inset Quotes eld
22342 \begin_inset Quotes erd
22345 if the current entry type matches
22346 \begin_inset Flex Code
22349 \begin_layout Plain Layout
22351 \change_inserted -712698321 1483868364
22359 , else the false part (e.g., in a citation definition:
22360 \begin_inset Flex Code
22363 \begin_layout Plain Layout
22365 \change_inserted -712698321 1483868420
22366 {%ifentrytype:book%[[this is a book]][[this is no book]]}
22378 \begin_layout Standard
22379 There is one other piece of syntax available in definitions, which looks
22381 \begin_inset Flex Code
22384 \begin_layout Plain Layout
22391 This defines a piece of formatting information that is to be used when
22393 \begin_inset Quotes eld
22397 \begin_inset Quotes erd
22401 Obviously, we do not want to output HTML tags when writing plain text,
22402 so they should be wrapped in
22403 \begin_inset Quotes eld
22407 \begin_inset Quotes erd
22411 \begin_inset Quotes eld
22415 \begin_inset Quotes erd
22421 \begin_layout Standard
22422 Two special sorts of definitions are also possible in a
22423 \begin_inset Flex Code
22426 \begin_layout Plain Layout
22433 An example of the first would be:
22436 \begin_layout LyX-Code
22438 \begin_inset Quotes eld
22442 \begin_inset Quotes erd
22448 \begin_layout Standard
22449 This is an abbreviation, or macro, and it can be used by treating it as
22451 \begin_inset Flex Code
22454 \begin_layout Plain Layout
22463 \begin_inset Flex Code
22466 \begin_layout Plain Layout
22472 exactly as it would treat its definition.
22473 So, let us issue the obvious
22481 \begin_layout LyX-Code
22485 \begin_layout Standard
22486 or anything like it.
22488 shouldn't go into an infinite loop, but it may go into a long one before
22492 \begin_layout Standard
22493 The second sort of special definition might look like this:
22496 \begin_layout LyX-Code
22500 \begin_layout Standard
22501 This defines a translatable piece of text, which allows relevant parts of
22503 \change_inserted -712698321 1483868477
22507 It can be included in a definition by treating it as a key:
22508 \begin_inset Flex Code
22511 \begin_layout Plain Layout
22518 Several of these are predefined in
22519 \begin_inset Flex Code
22522 \begin_layout Plain Layout
22529 \change_inserted -712698321 1483868503
22531 \begin_inset Flex Code
22534 \begin_layout Plain Layout
22536 \change_inserted -712698321 1483868503
22547 Note that these are not macros, in the sense just defined.
22548 They will not be expanded.
22551 \begin_layout Standard
22552 So here then is an example that use all these features:
22553 \begin_inset VSpace defskip
22559 \begin_layout Standard
22563 !authoredit {%author%[[%author%, ]][[{%editor%[[%editor%, %_edtext%, ]]}]]}
22566 \begin_layout Standard
22567 \begin_inset VSpace defskip
22570 This defines a macro that prints the author, followed by a comma, if the
22572 \begin_inset Flex Code
22575 \begin_layout Plain Layout
22581 key is defined, or else prints the name of the editor, followed by the
22583 \begin_inset Flex Code
22586 \begin_layout Plain Layout
22592 or its translation (it is by default
22593 \begin_inset Quotes eld
22597 \begin_inset Quotes erd
22601 \begin_inset Flex Code
22604 \begin_layout Plain Layout
22611 Note that this is in fact defined in
22612 \begin_inset Flex Code
22615 \begin_layout Plain Layout
22621 , so you can use it in your own definitions, or re-definitions, if you load
22625 \begin_layout Section
22626 \begin_inset CommandInset label
22628 name "sec:Tags-for-XHTML"
22632 Tags for XHTML output
22635 \begin_layout Standard
22636 As with \SpecialChar LaTeX
22637 or DocBook, the format of \SpecialChar LyX
22638 's XHTML output is also controlled by
22639 layout information.
22640 In general, \SpecialChar LyX
22641 provides sensible defaults and, as mentioned earlier, it will
22642 even construct default CSS style rules from the other layout tags.
22643 For example, \SpecialChar LyX
22644 will attempt to use the information provided in the
22645 \begin_inset Flex Code
22648 \begin_layout Plain Layout
22654 declaration for the Chapter style to write CSS that will appropriately
22655 format chapter headings.
22658 \begin_layout Standard
22659 In many cases, then, you may not have to do anything at all to get acceptable
22660 XHTML output for your own environments, custom insets, and so forth.
22661 But in some cases you will, and so \SpecialChar LyX
22662 provides a number of layout tags that
22663 can be used to customize the XHTML and CSS that are generated.
22666 \begin_layout Standard
22667 Note that there are two tags,
22668 \begin_inset Flex Code
22671 \begin_layout Plain Layout
22678 \begin_inset Flex Code
22681 \begin_layout Plain Layout
22687 that may appear outside style and inset declarations.
22689 \begin_inset CommandInset ref
22691 reference "subsec:General-text-class"
22695 for details on these.
22698 \begin_layout Subsection
22699 \begin_inset CommandInset label
22701 name "subsec:Paragraph-Style-XHTML"
22708 \begin_layout Standard
22709 The sort of XHTML \SpecialChar LyX
22710 outputs for a paragraph depends upon whether we are dealing
22711 with a normal paragraph, a command, or an environment, where this is itself
22712 determined by the contents of the corresponding
22713 \begin_inset Flex Code
22716 \begin_layout Plain Layout
22727 \begin_layout Standard
22728 For a command or normal paragraph, the output XHTML has the following form:
22731 \begin_layout LyX-Code
22733 \begin_inset Quotes erd
22737 \begin_inset Quotes erd
22743 \begin_layout LyX-Code
22745 \begin_inset Quotes erd
22749 \begin_inset Quotes erd
22755 \begin_layout LyX-Code
22756 Contents of the paragraph.
22759 \begin_layout LyX-Code
22763 \begin_layout Standard
22764 The label tags are of course omitted if the paragraph does not have a label.
22767 \begin_layout Standard
22768 For an environment that is not some sort of list, the XHTML takes this form:
22771 \begin_layout LyX-Code
22773 \begin_inset Quotes erd
22777 \begin_inset Quotes erd
22783 \begin_layout LyX-Code
22785 \begin_inset Quotes erd
22789 \begin_inset Quotes erd
22793 \begin_inset Quotes erd
22797 \begin_inset Quotes erd
22800 >Environment Label</labeltag>First paragraph.</itemtag>
22803 \begin_layout LyX-Code
22804 <itemtag>Second paragraph.</itemtag>
22807 \begin_layout LyX-Code
22811 \begin_layout Standard
22812 Note that the label is output only for the first paragraph, as it should
22813 be for a theorem, for example.
22817 \begin_layout Standard
22818 For a list, we have one of these forms:
22821 \begin_layout LyX-Code
22823 \begin_inset Quotes erd
22827 \begin_inset Quotes erd
22833 \begin_layout LyX-Code
22835 \begin_inset Quotes erd
22839 \begin_inset Quotes erd
22843 \begin_inset Quotes erd
22847 \begin_inset Quotes erd
22850 >List Label</labeltag>First item.</itemtag>
22853 \begin_layout LyX-Code
22855 \begin_inset Quotes erd
22859 \begin_inset Quotes erd
22863 \begin_inset Quotes erd
22867 \begin_inset Quotes erd
22870 >List Label</labeltag>Second item.</itemtag>
22873 \begin_layout LyX-Code
22877 \begin_layout LyX-Code
22881 \begin_layout LyX-Code
22883 \begin_inset Quotes erd
22887 \begin_inset Quotes erd
22893 \begin_layout LyX-Code
22895 \begin_inset Quotes erd
22899 \begin_inset Quotes erd
22902 >List Label</labeltag><itemtag attr=
22903 \begin_inset Quotes erd
22907 \begin_inset Quotes erd
22910 >First item.</itemtag>
22913 \begin_layout LyX-Code
22915 \begin_inset Quotes erd
22919 \begin_inset Quotes erd
22922 >List Label</labeltag><itemtag attr=
22923 \begin_inset Quotes erd
22927 \begin_inset Quotes erd
22930 >Second item.</itemtag>
22933 \begin_layout LyX-Code
22937 \begin_layout Standard
22938 Note the different orders of
22939 \begin_inset Flex Code
22942 \begin_layout Plain Layout
22949 \begin_inset Flex Code
22952 \begin_layout Plain Layout
22959 Which order we get depends upon the setting of
22960 \begin_inset Flex Code
22963 \begin_layout Plain Layout
22970 \begin_inset Flex Code
22973 \begin_layout Plain Layout
22979 is false (the default), you get the first of these, with the label within
22980 the item; if true, you get the second, with the label outside the item.
22983 \begin_layout Standard
22984 The specific tags and attributes output for each paragraph type can be controlle
22985 d by means of the layout tags we are about to describe.
22986 As mentioned earlier, however, \SpecialChar LyX
22987 uses sensible defaults for many of these,
22988 so you often may not need to do very much to get good XHTML output.
22989 Think of the available tags as there so you can tweak things to your liking.
22992 \begin_layout Description
22993 \begin_inset Flex Code
22996 \begin_layout Plain Layout
23003 \begin_inset Flex Code
23006 \begin_layout Plain Layout
23012 ] Specifies attribute information to be output with the main tag.
23014 \begin_inset Quotes eld
23018 \begin_inset Flex Code
23021 \begin_layout Plain Layout
23028 \begin_inset Quotes erd
23032 By default, \SpecialChar LyX
23034 \begin_inset Quotes eld
23038 \begin_inset Flex Code
23041 \begin_layout Plain Layout
23048 \begin_inset Quotes erd
23052 \begin_inset Flex Code
23055 \begin_layout Plain Layout
23061 is the \SpecialChar LyX
23062 name of the layout, made lowercase, for example: chapter.
23067 contain any style information.
23069 \begin_inset Flex Code
23072 \begin_layout Plain Layout
23081 \begin_layout Description
23082 \begin_inset Flex Code
23085 \begin_layout Plain Layout
23092 \begin_inset Flex Code
23095 \begin_layout Plain Layout
23105 ] Whether to output the default CSS information \SpecialChar LyX
23106 generates for this layout,
23107 even if additional information is explicitly provided via
23108 \begin_inset Flex Code
23111 \begin_layout Plain Layout
23119 \begin_inset Flex Code
23122 \begin_layout Plain Layout
23128 allows you to alter or augment the generated CSS, rather than to override
23131 \begin_inset Flex Code
23134 \begin_layout Plain Layout
23143 \begin_layout Description
23144 \begin_inset Flex Code
23147 \begin_layout Plain Layout
23154 \begin_inset Flex Code
23157 \begin_layout Plain Layout
23163 ] The tag to be used for individual paragraphs of environments, replacing
23165 \begin_inset Flex Code
23168 \begin_layout Plain Layout
23174 in the examples above.
23176 \begin_inset Flex Code
23179 \begin_layout Plain Layout
23188 \begin_layout Description
23189 \begin_inset Flex Code
23192 \begin_layout Plain Layout
23199 \begin_inset Flex Code
23202 \begin_layout Plain Layout
23208 ] Attributes for the item tag.
23210 \begin_inset Quotes eld
23214 \begin_inset Flex Code
23217 \begin_layout Plain Layout
23218 class=`layoutname_item'
23224 \begin_inset Quotes erd
23232 contain any style information.
23234 \begin_inset Flex Code
23237 \begin_layout Plain Layout
23246 \begin_layout Description
23247 \begin_inset Flex Code
23250 \begin_layout Plain Layout
23257 \begin_inset Flex Code
23260 \begin_layout Plain Layout
23266 ] The tag to be used for paragraph and item labels, replacing
23267 \begin_inset Flex Code
23270 \begin_layout Plain Layout
23276 in the examples above.
23278 \begin_inset Flex Code
23281 \begin_layout Plain Layout
23288 \begin_inset Flex Code
23291 \begin_layout Plain Layout
23298 \begin_inset Flex Code
23301 \begin_layout Plain Layout
23308 \begin_inset Flex Code
23311 \begin_layout Plain Layout
23312 Centered_Top_Environment
23317 , in which case it defaults to
23318 \begin_inset Flex Code
23321 \begin_layout Plain Layout
23330 \begin_layout Description
23331 \begin_inset Flex Code
23334 \begin_layout Plain Layout
23341 \begin_inset Flex Code
23344 \begin_layout Plain Layout
23350 ] Attributes for the label tag.
23352 \begin_inset Quotes eld
23356 \begin_inset Flex Code
23359 \begin_layout Plain Layout
23360 class=`layoutname_label'
23366 \begin_inset Quotes erd
23374 contain any style information.
23376 \begin_inset Flex Code
23379 \begin_layout Plain Layout
23388 \begin_layout Description
23389 \begin_inset Flex Code
23392 \begin_layout Plain Layout
23399 \begin_inset Flex Code
23402 \begin_layout Plain Layout
23412 ] Meaningful only for list-like environments, this tag controls whether
23413 the label tag is output before or inside the item tag.
23414 This is used, for example, in the description environment, where we want
23416 \begin_inset Flex Code
23419 \begin_layout Plain Layout
23420 <dt>\SpecialChar ldots
23421 </dt><dd>\SpecialChar ldots
23429 \begin_inset Flex Code
23432 \begin_layout Plain Layout
23438 : The label tag is output inside the item tag.
23441 \begin_layout Description
23442 \begin_inset Flex Code
23445 \begin_layout Plain Layout
23451 Information to be output in the
23452 \begin_inset Flex Code
23455 \begin_layout Plain Layout
23461 section when this style is used.
23462 This might, for example, be used to include a
23463 \begin_inset Flex Code
23466 \begin_layout Plain Layout
23473 \begin_inset Flex Code
23476 \begin_layout Plain Layout
23485 \begin_layout Description
23486 \begin_inset Flex Code
23489 \begin_layout Plain Layout
23495 CSS style information to be included when this style is used.
23496 Note that this will automatically be wrapped in a layout-generated
23497 \begin_inset Flex Code
23500 \begin_layout Plain Layout
23506 block, so only the CSS itself need be included.
23508 \begin_inset Flex Code
23511 \begin_layout Plain Layout
23520 \begin_layout Description
23521 \begin_inset Flex Code
23524 \begin_layout Plain Layout
23531 \begin_inset Flex Code
23534 \begin_layout Plain Layout
23540 ] The tag to be used for the main label, replacing
23541 \begin_inset Flex Code
23544 \begin_layout Plain Layout
23550 in the examples above.
23552 \begin_inset Flex Code
23555 \begin_layout Plain Layout
23564 \begin_layout Description
23565 \begin_inset Flex Code
23568 \begin_layout Plain Layout
23575 \begin_inset Flex Code
23578 \begin_layout Plain Layout
23588 ] Marks this style as the one to be used to generate the
23589 \begin_inset Flex Code
23592 \begin_layout Plain Layout
23598 tag for the XHTML file.
23599 By default, it is false.
23601 \begin_inset Flex Code
23604 \begin_layout Plain Layout
23610 file sets it to true for the
23611 \begin_inset Flex Code
23614 \begin_layout Plain Layout
23624 \begin_layout Subsection
23628 \begin_layout Standard
23629 The XHTML output of insets can also be controlled by information in layout
23634 \begin_layout Plain Layout
23635 At present, this is true only for
23636 \begin_inset Quotes eld
23640 \begin_inset Quotes erd
23643 insets (insets you can type into) and is not true for
23644 \begin_inset Quotes eld
23648 \begin_inset Quotes erd
23651 insets (insets that are associated with dialog boxes).
23656 Here, too, \SpecialChar LyX
23657 tries to provide sensible defaults, and it constructs default
23659 But everything can be customized.
23662 \begin_layout Standard
23663 The XHTML \SpecialChar LyX
23664 outputs for an inset has the following form:
23667 \begin_layout LyX-Code
23669 \begin_inset Quotes erd
23673 \begin_inset Quotes erd
23679 \begin_layout LyX-Code
23680 <labeltag>Label</labeltag>
23683 \begin_layout LyX-Code
23685 \begin_inset Quotes erd
23689 \begin_inset Quotes erd
23692 >Contents of the inset.</innertag>
23695 \begin_layout LyX-Code
23699 \begin_layout Standard
23700 If the inset permits multiple paragraphs—that is, if
23701 \begin_inset Flex Code
23704 \begin_layout Plain Layout
23710 is true—then the contents of the inset will itself be output as paragraphs
23711 formatted according to the styles used for those paragraphs (standard,
23712 quote, and the like).
23713 The label tag is of course omitted if the paragraph does not have a label
23714 and, at present, is always
23715 \begin_inset Flex Code
23718 \begin_layout Plain Layout
23725 The inner tag is optional and, by default, does not appear.
23728 \begin_layout Standard
23729 The specific tags and attributes output for each inset can be controlled
23730 by means of the following layout tags.
23733 \begin_layout Description
23734 \begin_inset Flex Code
23737 \begin_layout Plain Layout
23744 \begin_inset Flex Code
23747 \begin_layout Plain Layout
23753 ] Specifies attribute information to be output with the main tag.
23755 \begin_inset Quotes eld
23759 \begin_inset Flex Code
23762 \begin_layout Plain Layout
23763 class=`myinset' onclick=`\SpecialChar ldots
23770 \begin_inset Quotes erd
23774 By default, \SpecialChar LyX
23776 \begin_inset Quotes eld
23780 \begin_inset Flex Code
23783 \begin_layout Plain Layout
23790 \begin_inset Quotes erd
23794 \begin_inset Flex Code
23797 \begin_layout Plain Layout
23803 is the \SpecialChar LyX
23804 name of the inset, made lowercase and with non-alphanumeric characters
23805 converted to underscores, for example: footnote.
23808 \begin_layout Description
23809 \begin_inset Flex Code
23812 \begin_layout Plain Layout
23819 \begin_inset Flex Code
23822 \begin_layout Plain Layout
23832 ] Whether to output the default CSS information \SpecialChar LyX
23833 generates for this layout,
23834 even if additional information is explicitly provided via
23835 \begin_inset Flex Code
23838 \begin_layout Plain Layout
23846 \begin_inset Flex Code
23849 \begin_layout Plain Layout
23855 allows you to alter or augment the generated CSS, rather than to override
23860 \begin_layout Description
23861 \begin_inset Flex Code
23864 \begin_layout Plain Layout
23871 \begin_inset Flex Code
23874 \begin_layout Plain Layout
23880 ] Attributes for the inner tag.
23882 \begin_inset Quotes eld
23886 \begin_inset Flex Code
23889 \begin_layout Plain Layout
23890 class=`insetname_inner'
23896 \begin_inset Quotes erd
23902 \begin_layout Description
23903 \begin_inset Flex Code
23906 \begin_layout Plain Layout
23913 \begin_inset Flex Code
23916 \begin_layout Plain Layout
23922 ] The inner tag, replacing
23923 \begin_inset Flex Code
23926 \begin_layout Plain Layout
23932 in the examples above.
23933 By default, there is none.
23936 \begin_layout Description
23937 \begin_inset Flex Code
23940 \begin_layout Plain Layout
23947 \begin_inset Flex Code
23950 \begin_layout Plain Layout
23958 ] Whether this inset represents a standalone block of text (such as a footnote)
23959 or instead represents material that is included in the surrounding text
23960 (such as a branch).
23964 \begin_layout Description
23965 \begin_inset Flex Code
23968 \begin_layout Plain Layout
23975 \begin_inset Flex Code
23978 \begin_layout Plain Layout
23984 ] A label for this inset, possibly including a reference to a counter.
23985 For example, for footnote, it might be:
23986 \begin_inset Flex Code
23989 \begin_layout Plain Layout
23998 This is optional, and there is no default.
24001 \begin_layout Description
24002 \begin_inset Flex Code
24005 \begin_layout Plain Layout
24011 Information to be output in the
24012 \begin_inset Flex Code
24015 \begin_layout Plain Layout
24021 section when this style is used.
24022 This might, for example, be used to include a
24023 \begin_inset Flex Code
24026 \begin_layout Plain Layout
24033 \begin_inset Flex Code
24036 \begin_layout Plain Layout
24045 \begin_layout Description
24046 \begin_inset Flex Code
24049 \begin_layout Plain Layout
24055 CSS style information to be included when this style is used.
24056 Note that this will automatically be wrapped in a layout-generated
24057 \begin_inset Flex Code
24060 \begin_layout Plain Layout
24066 block, so only the CSS itself need be included.
24069 \begin_layout Description
24070 \begin_inset Flex Code
24073 \begin_layout Plain Layout
24080 \begin_inset Flex Code
24083 \begin_layout Plain Layout
24089 ] The tag to be used for the main label, replacing
24090 \begin_inset Flex Code
24093 \begin_layout Plain Layout
24099 in the examples above.
24100 The default depends upon the setting of
24101 \begin_inset Flex Code
24104 \begin_layout Plain Layout
24111 \begin_inset Flex Code
24114 \begin_layout Plain Layout
24120 is true, the default is
24121 \begin_inset Flex Code
24124 \begin_layout Plain Layout
24130 ; if it is false, the default is
24131 \begin_inset Flex Code
24134 \begin_layout Plain Layout
24143 \begin_layout Subsection
24147 \begin_layout Standard
24148 The XHTML output for floats too can be controlled by layout information.
24149 The output has the following form:
24152 \begin_layout LyX-Code
24154 \begin_inset Quotes erd
24158 \begin_inset Quotes erd
24164 \begin_layout LyX-Code
24165 Contents of the float.
24168 \begin_layout LyX-Code
24172 \begin_layout Standard
24173 The caption, if there is one, is a separate inset and will be output as
24175 Its appearance can be controlled via the InsetLayout for caption insets.
24179 \begin_layout Description
24180 \begin_inset Flex Code
24183 \begin_layout Plain Layout
24190 \begin_inset Flex Code
24193 \begin_layout Plain Layout
24199 ] Specifies attribute information to be output with the main tag.
24201 \begin_inset Quotes eld
24205 \begin_inset Flex Code
24208 \begin_layout Plain Layout
24209 class=`myfloat' onclick=`\SpecialChar ldots
24216 \begin_inset Quotes erd
24220 By default, \SpecialChar LyX
24222 \begin_inset Quotes eld
24226 \begin_inset Flex Code
24229 \begin_layout Plain Layout
24230 class=`float float-floattype'
24236 \begin_inset Quotes erd
24240 \begin_inset Flex Code
24243 \begin_layout Plain Layout
24249 is \SpecialChar LyX
24250 's name for this type of float, as determined by the float declaration
24252 \begin_inset CommandInset ref
24254 reference "subsec:Floats"
24258 ), though made lowercase and with non-alphanumeric characters converted
24259 to underscores, for example: float-table.
24262 \begin_layout Description
24263 \begin_inset Flex Code
24266 \begin_layout Plain Layout
24272 CSS style information to be included when this float is used.
24273 Note that this will automatically be wrapped in a layout-generated
24274 \begin_inset Flex Code
24277 \begin_layout Plain Layout
24283 block, so only the CSS itself need be included.
24286 \begin_layout Description
24287 \begin_inset Flex Code
24290 \begin_layout Plain Layout
24297 \begin_inset Flex Code
24300 \begin_layout Plain Layout
24306 ] The tag to be used for this float, replacing
24307 \begin_inset Quotes eld
24311 \begin_inset Flex Code
24314 \begin_layout Plain Layout
24321 \begin_inset Quotes erd
24324 in the example above.
24326 \begin_inset Flex Code
24329 \begin_layout Plain Layout
24335 and will rarely need changing.
24338 \begin_layout Subsection
24339 Bibliography formatting
24342 \begin_layout Standard
24343 The bibliography can be formatted using
24344 \begin_inset Flex Code
24347 \begin_layout Plain Layout
24355 \begin_inset CommandInset ref
24357 reference "subsec:Citation-format-description"
24364 \begin_layout Subsection
24369 \begin_layout Standard
24370 We have several times mentioned that \SpecialChar LyX
24371 will generate default CSS style rules
24372 for both insets and paragraph styles, based upon the other layout information
24374 In this section, we shall say a word about which layout information \SpecialChar LyX
24379 \begin_layout Standard
24380 At present, \SpecialChar LyX
24381 auto-generates CSS only for font information, making use of
24383 \begin_inset Flex Code
24386 \begin_layout Plain Layout
24393 \begin_inset Flex Code
24396 \begin_layout Plain Layout
24403 \begin_inset Flex Code
24406 \begin_layout Plain Layout
24413 \begin_inset Flex Code
24416 \begin_layout Plain Layout
24423 \begin_inset Flex Code
24426 \begin_layout Plain Layout
24433 \begin_inset CommandInset ref
24435 reference "subsec:Font-description"
24440 The translation is mostly straightforward and obvious.
24442 \begin_inset Quotes eld
24446 \begin_inset Flex Code
24449 \begin_layout Plain Layout
24456 \begin_inset Quotes erd
24460 \begin_inset Quotes eld
24464 \begin_inset Flex Code
24467 \begin_layout Plain Layout
24468 font-family: sans-serif;
24474 \begin_inset Quotes erd
24478 The correspondence of \SpecialChar LyX
24479 sizes and CSS sizes is a little less obvious but
24480 nonetheless intuitive.
24482 \begin_inset Flex Code
24485 \begin_layout Plain Layout
24492 \begin_inset Flex URL
24495 \begin_layout Plain Layout
24505 \begin_layout Chapter
24506 Including External Material
24507 \begin_inset CommandInset label
24509 name "chap:Including-External-Material"
24516 \begin_layout Standard
24517 \begin_inset Box Shadowbox
24527 height_special "totalheight"
24532 backgroundcolor "none"
24535 \begin_layout Plain Layout
24536 WARNING: This portion of the documentation has not been updated for some
24538 We certainly hope that it is still accurate, but there are no guarantees.
24546 \begin_layout Standard
24547 The use of material from sources external to \SpecialChar LyX
24548 is covered in detail in the
24554 This part of the manual covers what needs to happen behind the scenes for
24555 new sorts of material to be included.
24558 \begin_layout Section
24562 \begin_layout Standard
24563 The external material feature is based on the concept of a
24568 A template is a specification of how \SpecialChar LyX
24569 should interface with a certain kind
24571 As bundled, \SpecialChar LyX
24572 comes with predefined templates for Xfig figures, various
24573 raster format images, chess diagrams, and LilyPond music notation.
24574 You can check the actual list by using the menu
24575 \begin_inset Flex Noun
24578 \begin_layout Plain Layout
24579 Insert\SpecialChar menuseparator
24580 File\SpecialChar menuseparator
24587 Furthermore, it is possible to roll your own template to support a specific
24589 Later we'll describe in more detail what is involved, and hopefully you
24590 will submit all the templates you create so we can include them in a later
24595 \begin_layout Standard
24596 Another basic idea of the external material feature is to distinguish between
24597 the original file that serves as a base for final material and the produced
24598 file that is included in your exported or printed document.
24599 For example, consider the case of a figure produced with
24600 \begin_inset Flex Code
24603 \begin_layout Plain Layout
24610 The Xfig application itself works on an original file with the
24611 \begin_inset Flex Code
24614 \begin_layout Plain Layout
24621 Within Xfig, you create and change your figure, and when you are done,
24623 \begin_inset Flex Code
24626 \begin_layout Plain Layout
24633 When you want to include the figure in your document, you invoke
24634 \begin_inset Flex Code
24637 \begin_layout Plain Layout
24643 in order to create a PostScript file that can readily be included in your
24647 \begin_inset Flex Code
24650 \begin_layout Plain Layout
24656 file is the original file, and the PostScript file is the produced file.
24659 \begin_layout Standard
24660 This distinction is important in order to allow updating of the material
24661 while you are in the process of writing the document.
24662 Furthermore, it provides us with the flexibility that is needed to support
24663 multiple export formats.
24664 For instance, in the case of a plain text file, it is not exactly an award-winn
24665 ing idea to include the figure as raw PostScript.
24666 Instead, you would either prefer to just include a reference to the figure
24667 or try to invoke some graphics to ASCII converter to make the final result
24668 look similar to the real graphics.
24669 The external material management allows you to do this, because it is parametri
24670 zed on the different export formats that \SpecialChar LyX
24674 \begin_layout Standard
24675 Besides supporting the production of different products according to the
24676 exported format, it supports tight integration with editing and viewing
24678 In the case of an Xfig figure, you are able to invoke Xfig on the original
24679 file with a single click from within the external material dialog in \SpecialChar LyX
24681 and also preview the produced PostScript file with Ghostview with another
24683 No more fiddling around with the command line and/or file browsers to locate
24684 and manipulate the original or produced files.
24685 In this way, you are finally able to take full advantage of the many different
24686 applications that are relevant to use when you write your documents, and
24687 ultimately be more productive.
24690 \begin_layout Section
24691 The external template configuration file
24694 \begin_layout Standard
24695 It is relatively easy to add custom external template definitions to \SpecialChar LyX
24697 However, be aware that doing this in an careless manner most probably
24701 introduce an easily exploitable security hole.
24702 So before you do this, please read the discussion about security in
24703 \begin_inset CommandInset ref
24705 reference "sec:Security-discussion"
24712 \begin_layout Standard
24713 Having said that, we encourage you to submit any interesting templates that
24718 \begin_layout Standard
24719 The external templates are defined in the
24720 \begin_inset Flex Code
24723 \begin_layout Plain Layout
24724 LyXDir/lib/external_templates
24730 You can place your own version in
24731 \begin_inset Flex Code
24734 \begin_layout Plain Layout
24735 UserDir/external_templates
24743 \begin_layout Standard
24744 A typical template looks like this:
24747 \begin_layout LyX-Code
24751 \begin_layout LyX-Code
24752 GuiName "XFig: $$AbsOrRelPathParent$$Basename"
24755 \begin_layout LyX-Code
24759 \begin_layout LyX-Code
24763 \begin_layout LyX-Code
24767 \begin_layout LyX-Code
24771 \begin_layout LyX-Code
24775 \begin_layout LyX-Code
24776 AutomaticProduction true
24779 \begin_layout LyX-Code
24783 \begin_layout LyX-Code
24787 \begin_layout LyX-Code
24791 \begin_layout LyX-Code
24792 TransformCommand Rotate RotationLatexCommand
24795 \begin_layout LyX-Code
24796 TransformCommand Resize ResizeLatexCommand
24799 \begin_layout LyX-Code
24800 Product "$$RotateFront$$ResizeFront
24803 \begin_layout LyX-Code
24808 input{$$AbsOrRelPathMaster$$Basename.pstex_t}
24811 \begin_layout LyX-Code
24812 $$ResizeBack$$RotateBack"
24815 \begin_layout LyX-Code
24819 \begin_layout LyX-Code
24820 UpdateResult "$$AbsPath$$Basename.pstex_t"
24823 \begin_layout LyX-Code
24824 Requirement "graphicx"
24827 \begin_layout LyX-Code
24828 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
24831 \begin_layout LyX-Code
24832 ReferencedFile latex "$$AbsPath$$Basename.eps"
24835 \begin_layout LyX-Code
24836 ReferencedFile dvi "$$AbsPath$$Basename.eps"
24839 \begin_layout LyX-Code
24843 \begin_layout LyX-Code
24847 \begin_layout LyX-Code
24848 TransformCommand Rotate RotationLatexCommand
24851 \begin_layout LyX-Code
24852 TransformCommand Resize ResizeLatexCommand
24855 \begin_layout LyX-Code
24856 Product "$$RotateFront$$ResizeFront
24859 \begin_layout LyX-Code
24864 input{$$AbsOrRelPathMaster$$Basename.pdftex_t}
24867 \begin_layout LyX-Code
24868 $$ResizeBack$$RotateBack"
24871 \begin_layout LyX-Code
24872 UpdateFormat pdftex
24875 \begin_layout LyX-Code
24876 UpdateResult "$$AbsPath$$Basename.pdftex_t"
24879 \begin_layout LyX-Code
24880 Requirement "graphicx"
24883 \begin_layout LyX-Code
24884 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pdftex_t"
24887 \begin_layout LyX-Code
24888 ReferencedFile latex "$$AbsPath$$Basename.pdf"
24891 \begin_layout LyX-Code
24895 \begin_layout LyX-Code
24899 \begin_layout LyX-Code
24900 Product "[XFig: $$FName]"
24903 \begin_layout LyX-Code
24907 \begin_layout LyX-Code
24911 \begin_layout LyX-Code
24912 Product "<graphic fileref=
24914 "$$AbsOrRelPathMaster$$Basename.eps
24919 \begin_layout LyX-Code
24923 \begin_layout LyX-Code
24927 \begin_layout LyX-Code
24928 UpdateResult "$$AbsPath$$Basename.eps"
24931 \begin_layout LyX-Code
24932 ReferencedFile docbook "$$AbsPath$$Basename.eps"
24935 \begin_layout LyX-Code
24936 ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
24939 \begin_layout LyX-Code
24943 \begin_layout LyX-Code
24947 \begin_layout Standard
24948 As you can see, the template is enclosed in
24949 \begin_inset Flex Code
24952 \begin_layout Plain Layout
24960 \begin_inset Flex Code
24963 \begin_layout Plain Layout
24970 It contains a header specifying some general settings and, for each supported
24971 primary document file format, a section
24972 \begin_inset Flex Code
24975 \begin_layout Plain Layout
24983 \begin_inset Flex Code
24986 \begin_layout Plain Layout
24995 \begin_layout Subsection
24996 The template header
24999 \begin_layout Description
25000 \begin_inset Flex Code
25003 \begin_layout Plain Layout
25004 AutomaticProduction
25005 \begin_inset space ~
25013 Whether the file represented by the template must be generated by \SpecialChar LyX
25015 This command must occur exactly once.
25018 \begin_layout Description
25019 \begin_inset Flex Code
25022 \begin_layout Plain Layout
25024 \begin_inset space ~
25032 A glob pattern that is used in the file dialog to filter out the desired
25034 If there is more than one possible file extension (e.
25035 \begin_inset space \thinspace{}
25039 \begin_inset space \space{}
25043 \begin_inset Flex Code
25046 \begin_layout Plain Layout
25053 \begin_inset Flex Code
25056 \begin_layout Plain Layout
25062 ), use something like
25063 \begin_inset Flex Code
25066 \begin_layout Plain Layout
25073 This command must occur exactly once.
25076 \begin_layout Description
25077 \begin_inset Flex Code
25080 \begin_layout Plain Layout
25082 \begin_inset space ~
25090 The text that is displayed on the button.
25091 This command must occur exactly once.
25094 \begin_layout Description
25095 \begin_inset Flex Code
25098 \begin_layout Plain Layout
25100 \begin_inset space ~
25104 \begin_inset space ~
25112 The help text that is used in the External dialog.
25113 Provide enough information to explain to the user just what the template
25114 can provide him with.
25115 This command must occur exactly once.
25118 \begin_layout Description
25119 \begin_inset Flex Code
25122 \begin_layout Plain Layout
25124 \begin_inset space ~
25132 The file format of the original file.
25133 This must be the name of a format that is known to \SpecialChar LyX
25135 \begin_inset CommandInset ref
25137 reference "sec:Formats"
25143 \begin_inset Quotes eld
25147 \begin_inset Flex Code
25150 \begin_layout Plain Layout
25157 \begin_inset Quotes erd
25160 if the template can handle original files of more than one format.
25162 will attempt to interrogate the file itself in order to deduce its format
25164 This command must occur exactly once.
25167 \begin_layout Description
25168 \begin_inset Flex Code
25171 \begin_layout Plain Layout
25173 \begin_inset space ~
25181 A unique name for the template.
25182 It must not contain substitution macros (see below).
25185 \begin_layout Description
25186 \begin_inset Flex Code
25189 \begin_layout Plain Layout
25191 \begin_inset space ~
25194 Rotate|Resize|Clip|Extra
25199 This command specifies which transformations are supported by this template.
25200 It may occur zero or more times.
25201 This command enables the corresponding tabs in the external dialog.
25203 \begin_inset Flex Code
25206 \begin_layout Plain Layout
25212 command must have either a corresponding
25213 \begin_inset Flex Code
25216 \begin_layout Plain Layout
25223 \begin_inset Flex Code
25226 \begin_layout Plain Layout
25233 \begin_inset Flex Code
25236 \begin_layout Plain Layout
25243 Otherwise the transformation will not be supported by that format.
25246 \begin_layout Subsection
25250 \begin_layout Description
25251 \begin_inset Flex Code
25254 \begin_layout Plain Layout
25256 \begin_inset space ~
25259 LaTeX|PDFLaTeX|PlainText|DocBook|XHTML
25264 The primary document file format that this format definition is for.
25265 Not every template has a sensible representation in all document file formats.
25266 Please define nevertheless a
25267 \begin_inset Flex Code
25270 \begin_layout Plain Layout
25276 section for all templates.
25277 Use a dummy text when no representation is available.
25278 Then you can at least see a reference to the external material in the exported
25282 \begin_layout Description
25283 \begin_inset Flex Code
25286 \begin_layout Plain Layout
25288 \begin_inset space ~
25292 \begin_inset space ~
25300 This command defines an additional macro
25301 \begin_inset Flex Code
25304 \begin_layout Plain Layout
25310 for substitution in
25311 \begin_inset Flex Code
25314 \begin_layout Plain Layout
25322 \begin_inset Flex Code
25325 \begin_layout Plain Layout
25331 itself may contain substitution macros.
25332 The advantage over using
25333 \begin_inset Flex Code
25336 \begin_layout Plain Layout
25343 \begin_inset Flex Code
25346 \begin_layout Plain Layout
25352 is that the substituted value of
25353 \begin_inset Flex Code
25356 \begin_layout Plain Layout
25362 is sanitized so that it is a valid optional argument in the document format.
25363 This command may occur zero or more times.
25366 \begin_layout Description
25367 \begin_inset Flex Code
25370 \begin_layout Plain Layout
25372 \begin_inset space ~
25380 The text that is inserted in the exported document.
25381 This is actually the most important command and can be quite complex.
25382 This command must occur exactly once.
25385 \begin_layout Description
25386 \begin_inset Flex Code
25389 \begin_layout Plain Layout
25391 \begin_inset space ~
25399 This command specifies a preamble snippet that will be included in the
25402 It has to be defined using
25403 \begin_inset Flex Code
25406 \begin_layout Plain Layout
25414 \begin_inset Flex Code
25417 \begin_layout Plain Layout
25424 This command may occur zero or more times.
25427 \begin_layout Description
25428 \begin_inset Flex Code
25431 \begin_layout Plain Layout
25433 \begin_inset space ~
25437 \begin_inset space ~
25445 This command denotes files that are created by the conversion process and
25446 are needed for a particular export format.
25447 If the filename is relative, it is interpreted relative to the master document.
25448 This command may be given zero or more times.
25451 \begin_layout Description
25452 \begin_inset Flex Code
25455 \begin_layout Plain Layout
25457 \begin_inset space ~
25465 The name of a required \SpecialChar LaTeX
25467 The package is included via
25468 \begin_inset Flex Code
25471 \begin_layout Plain Layout
25479 in the \SpecialChar LaTeX
25481 This command may occur zero or more times.
25484 \begin_layout Description
25485 \begin_inset Flex Code
25488 \begin_layout Plain Layout
25490 \begin_inset space ~
25494 \begin_inset space ~
25497 RotationLatexCommand
25502 This command specifies that the built in \SpecialChar LaTeX
25503 command should be used for rotation.
25504 This command may occur once or not at all.
25507 \begin_layout Description
25508 \begin_inset Flex Code
25511 \begin_layout Plain Layout
25513 \begin_inset space ~
25517 \begin_inset space ~
25525 This command specifies that the built in \SpecialChar LaTeX
25526 command should be used for resizing.
25527 This command may occur once or not at all.
25530 \begin_layout Description
25531 \begin_inset Flex Code
25534 \begin_layout Plain Layout
25536 \begin_inset space ~
25540 \begin_inset space ~
25543 RotationLatexOption
25548 This command specifies that rotation is done via an optional argument.
25549 This command may occur once or not at all.
25552 \begin_layout Description
25553 \begin_inset Flex Code
25556 \begin_layout Plain Layout
25558 \begin_inset space ~
25562 \begin_inset space ~
25570 This command specifies that resizing is done via an optional argument.
25571 This command may occur once or not at all.
25574 \begin_layout Description
25575 \begin_inset Flex Code
25578 \begin_layout Plain Layout
25580 \begin_inset space ~
25584 \begin_inset space ~
25592 This command specifies that clipping is done via an optional argument.
25593 This command may occur once or not at all.
25596 \begin_layout Description
25597 \begin_inset Flex Code
25600 \begin_layout Plain Layout
25602 \begin_inset space ~
25606 \begin_inset space ~
25614 This command specifies that an extra optional argument is used.
25615 This command may occur once or not at all.
25618 \begin_layout Description
25619 \begin_inset Flex Code
25622 \begin_layout Plain Layout
25624 \begin_inset space ~
25632 The file format of the converted file.
25633 This must be the name of a format that is known to \SpecialChar LyX
25635 \begin_inset Flex Noun
25638 \begin_layout Plain Layout
25639 Tools\SpecialChar menuseparator
25640 Preferences\SpecialChar menuseparator
25641 File Handling\SpecialChar menuseparator
25648 This command must occur exactly once.
25649 If the resulting file format is PDF, you need to specify the format
25650 \begin_inset Flex Code
25653 \begin_layout Plain Layout
25660 This is the PDF format used for including graphics.
25661 The other defined PDF formats are for document export.
25664 \begin_layout Description
25665 \begin_inset Flex Code
25668 \begin_layout Plain Layout
25670 \begin_inset space ~
25678 The file name of the converted file.
25679 The file name must be absolute.
25680 This command must occur exactly once.
25683 \begin_layout Subsection
25684 Preamble definitions
25687 \begin_layout Standard
25688 The external template configuration file may contain additional preamble
25689 definitions enclosed by
25690 \begin_inset Flex Code
25693 \begin_layout Plain Layout
25701 \begin_inset Flex Code
25704 \begin_layout Plain Layout
25711 They can be used by the templates in the
25712 \begin_inset Flex Code
25715 \begin_layout Plain Layout
25724 \begin_layout Section
25725 The substitution mechanism
25728 \begin_layout Standard
25729 When the external material facility invokes an external program, it is done
25730 on the basis of a command defined in the template configuration file.
25731 These commands can contain various macros that are expanded before execution.
25732 Execution always take place in the directory of the containing document.
25735 \begin_layout Standard
25736 Also, whenever external material is to be displayed, the name will be produced
25737 by the substitution mechanism, and most other commands in the template
25738 definition support substitution as well.
25741 \begin_layout Standard
25742 The available macros are the following:
25745 \begin_layout Description
25746 \begin_inset Flex Code
25749 \begin_layout Plain Layout
25750 $$AbsOrRelPathMaster
25755 The file path, absolute or relative to the master \SpecialChar LyX
25759 \begin_layout Description
25760 \begin_inset Flex Code
25763 \begin_layout Plain Layout
25764 $$AbsOrRelPathParent
25769 The file path, absolute or relative to the \SpecialChar LyX
25773 \begin_layout Description
25774 \begin_inset Flex Code
25777 \begin_layout Plain Layout
25783 The absolute file path.
25786 \begin_layout Description
25787 \begin_inset Flex Code
25790 \begin_layout Plain Layout
25796 The filename without path and without the extension.
25799 \begin_layout Description
25800 \begin_inset Flex Code
25803 \begin_layout Plain Layout
25805 \begin_inset Quotes eld
25809 \begin_inset Quotes erd
25817 This macro will expand to the contents of the file with the name
25818 \begin_inset Flex Code
25821 \begin_layout Plain Layout
25830 \begin_layout Description
25831 \begin_inset Flex Code
25834 \begin_layout Plain Layout
25840 The file extension (including the dot).
25843 \begin_layout Description
25844 \begin_inset Flex Code
25847 \begin_layout Plain Layout
25853 This will be the string
25854 \begin_inset Quotes eld
25858 \begin_inset Quotes erd
25861 if the file is in JPEG format, otherwise it will be the string
25862 \begin_inset Quotes eld
25866 \begin_inset Quotes erd
25870 This is useful to avoid uneeded conversions for output formats that support
25871 both PNG and JPEG fomats.
25872 The predefined RasterImage template uses this macro for the pdf\SpecialChar TeX
25877 \begin_layout Description
25878 \begin_inset Flex Code
25881 \begin_layout Plain Layout
25887 The filename of the file specified in the external material dialog.
25888 This is either an absolute name, or it is relative to the \SpecialChar LyX
25892 \begin_layout Description
25893 \begin_inset Flex Code
25896 \begin_layout Plain Layout
25903 \begin_inset Flex Code
25906 \begin_layout Plain Layout
25912 (absolute name or relative to the \SpecialChar LyX
25916 \begin_layout Description
25917 \begin_inset Flex Code
25920 \begin_layout Plain Layout
25926 The file path, relative to the master \SpecialChar LyX
25930 \begin_layout Description
25931 \begin_inset Flex Code
25934 \begin_layout Plain Layout
25940 The file path, relative to the \SpecialChar LyX
25944 \begin_layout Description
25945 \begin_inset Flex Code
25948 \begin_layout Plain Layout
25954 This macro will expand to the absolute path of the system directory.
25955 This is typically used to point to the various helper scripts that are
25956 bundled with \SpecialChar LyX
25960 \begin_layout Description
25961 \begin_inset Flex Code
25964 \begin_layout Plain Layout
25970 A name and full path to a temporary file which will be automatically deleted
25971 whenever the containing document is closed, or the external material insertion
25975 \begin_layout Standard
25976 All path macros contain a trailing directory separator, so you can construct
25978 \begin_inset space \thinspace{}
25982 \begin_inset space \space{}
25985 the absolute filename with
25986 \begin_inset Flex Code
25989 \begin_layout Plain Layout
25990 $$AbsPath$$Basename$$Extension
25998 \begin_layout Standard
25999 The macros above are substituted in all commands unless otherwise noted.
26001 \begin_inset Flex Code
26004 \begin_layout Plain Layout
26010 supports additionally the following substitutions if they are enabled by
26012 \begin_inset Flex Code
26015 \begin_layout Plain Layout
26022 \begin_inset Flex Code
26025 \begin_layout Plain Layout
26034 \begin_layout Description
26035 \begin_inset Flex Code
26038 \begin_layout Plain Layout
26044 The front part of the resize command.
26047 \begin_layout Description
26048 \begin_inset Flex Code
26051 \begin_layout Plain Layout
26057 The back part of the resize command.
26060 \begin_layout Description
26061 \begin_inset Flex Code
26064 \begin_layout Plain Layout
26070 The front part of the rotation command.
26073 \begin_layout Description
26074 \begin_inset Flex Code
26077 \begin_layout Plain Layout
26083 The back part of the rotation command.
26086 \begin_layout Standard
26087 The value string of the
26088 \begin_inset Flex Code
26091 \begin_layout Plain Layout
26097 command supports additionally the following substitutions if they are enabled
26099 \begin_inset Flex Code
26102 \begin_layout Plain Layout
26109 \begin_inset Flex Code
26112 \begin_layout Plain Layout
26121 \begin_layout Description
26122 \begin_inset Flex Code
26125 \begin_layout Plain Layout
26134 \begin_layout Description
26135 \begin_inset Flex Code
26138 \begin_layout Plain Layout
26147 \begin_layout Description
26148 \begin_inset Flex Code
26151 \begin_layout Plain Layout
26160 \begin_layout Description
26161 \begin_inset Flex Code
26164 \begin_layout Plain Layout
26170 The rotation option.
26173 \begin_layout Standard
26174 You may ask why there are so many path macros.
26175 There are mainly two reasons:
26178 \begin_layout Enumerate
26179 Relative and absolute file names should remain relative or absolute, respectivel
26181 Users may have reasons to prefer either form.
26182 Relative names are useful for portable documents that should work on different
26183 machines, for example.
26184 Absolute names may be required by some programs.
26187 \begin_layout Enumerate
26189 treats relative file names differently than \SpecialChar LyX
26190 and other programs in nested
26192 For \SpecialChar LyX
26193 , a relative file name is always relative to the document that contains
26195 For \SpecialChar LaTeX
26196 , it is always relative to the master document.
26197 These two definitions are identical if you have only one document, but
26198 differ if you have a master document that includes part documents.
26199 That means that relative filenames must be transformed when presented to
26202 Fortunately \SpecialChar LyX
26203 does this automatically for you if you choose the right macros.
26206 \begin_layout Standard
26207 So which path macro should be used in new template definitions? The rule
26211 \begin_layout Itemize
26213 \begin_inset Flex Code
26216 \begin_layout Plain Layout
26222 if an absolute path is required.
26225 \begin_layout Itemize
26227 \begin_inset Flex Code
26230 \begin_layout Plain Layout
26231 $$AbsOrRelPathMaster
26236 if the substituted string is some kind of \SpecialChar LaTeX
26240 \begin_layout Itemize
26242 \begin_inset Flex Code
26245 \begin_layout Plain Layout
26246 $$AbsOrRelPathParent
26251 in order to preserve the user's choice.
26254 \begin_layout Standard
26255 There are special cases where this rule does not work and e.
26256 \begin_inset space \thinspace{}
26260 \begin_inset space \space{}
26263 relative names are needed, but normally it will work just fine.
26264 One example for such a case is the command
26265 \begin_inset Flex Code
26268 \begin_layout Plain Layout
26269 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
26274 in the XFig template above: We can't use the absolute name because the
26276 \begin_inset Flex Code
26279 \begin_layout Plain Layout
26285 files needs the relative name in order to rewrite the file content.
26288 \begin_layout Section
26289 Security discussion
26290 \begin_inset CommandInset label
26292 name "sec:Security-discussion"
26299 \begin_layout Standard
26300 The external material feature interfaces with a lot of external programs
26301 and does so automatically, so we have to consider the security implications
26303 In particular, since you have the option of including your own filenames
26304 and/or parameter strings and those are expanded into a command, it seems
26305 that it would be possible to create a malicious document which executes
26306 arbitrary commands when a user views or prints the document.
26307 This is something we definitely want to avoid.
26310 \begin_layout Standard
26311 However, since the external program commands are specified in the template
26312 configuration file only, there are no security issues if \SpecialChar LyX
26313 is properly configure
26314 d with safe templates only.
26315 This is so because the external programs are invoked with the
26316 \begin_inset Flex Code
26319 \begin_layout Plain Layout
26325 -system call rather than the
26326 \begin_inset Flex Code
26329 \begin_layout Plain Layout
26335 system-call, so it's not possible to execute arbitrary commands from the
26336 filename or parameter section via the shell.
26339 \begin_layout Standard
26340 This also implies that you are restricted in what command strings you can
26341 use in the external material templates.
26342 In particular, pipes and redirection are not readily available.
26343 This has to be so if \SpecialChar LyX
26344 should remain safe.
26345 If you want to use some of the shell features, you should write a safe
26346 script to do this in a controlled manner, and then invoke the script from
26347 the command string.
26351 \begin_layout Standard
26352 It is possible to design a template that interacts directly with the shell,
26353 but since this would allow a malicious user to execute arbitrary commands
26354 by writing clever filenames and/or parameters, we generally recommend that
26355 you only use safe scripts that work with the
26356 \begin_inset Flex Code
26359 \begin_layout Plain Layout
26365 system call in a controlled manner.
26366 Of course, for use in a controlled environment, it can be tempting to just
26367 fall back to use ordinary shell scripts.
26368 If you do so, be aware that you
26372 provide an easily exploitable security hole in your system.
26373 Of course it stands to reason that such unsafe templates will never be
26374 included in the standard \SpecialChar LyX
26375 distribution, although we do encourage people
26376 to submit new templates in the open source tradition.
26377 But \SpecialChar LyX
26378 as shipped from the official distribution channels will never have
26382 \begin_layout Standard
26383 Including external material provides a lot of power, and you have to be
26384 careful not to introduce security hazards with this power.
26385 A subtle error in a single line in an innocent looking script can open
26386 the door to huge security problems.
26387 So if you do not fully understand the issues, we recommend that you consult
26388 a knowledgeable security professional or the \SpecialChar LyX
26389 development team if you have
26390 any questions about whether a given template is safe or not.
26391 And do this before you use it in an uncontrolled environment.
26394 \begin_layout Chapter
26396 List of supported \SpecialChar LyX
26397 functions to be used in layouts
26398 \begin_inset CommandInset label
26400 name "chap:List-of-functions"
26407 \begin_layout Standard
26409 \begin_inset Tabular
26410 <lyxtabular version="3" rows="11" columns="8">
26411 <features tabularvalignment="middle">
26412 <column alignment="left" valignment="top">
26413 <column alignment="left" valignment="top">
26414 <column alignment="left" valignment="top">
26415 <column alignment="left" valignment="top">
26416 <column alignment="left" valignment="top">
26417 <column alignment="left" valignment="top">
26418 <column alignment="left" valignment="top">
26419 <column alignment="left" valignment="top">
26421 <cell alignment="left" valignment="top" usebox="none">
26424 \begin_layout Plain Layout
26430 <cell alignment="left" valignment="top" usebox="none">
26433 \begin_layout Plain Layout
26439 <cell alignment="left" valignment="top" usebox="none">
26442 \begin_layout Plain Layout
26448 <cell alignment="left" valignment="top" usebox="none">
26451 \begin_layout Plain Layout
26457 <cell alignment="center" valignment="top" usebox="none">
26460 \begin_layout Plain Layout
26466 <cell alignment="center" valignment="top" usebox="none">
26469 \begin_layout Plain Layout
26475 <cell alignment="center" valignment="top" usebox="none">
26478 \begin_layout Plain Layout
26484 <cell alignment="center" valignment="top" usebox="none">
26487 \begin_layout Plain Layout
26495 <cell alignment="left" valignment="top" usebox="none">
26498 \begin_layout Plain Layout
26504 <cell alignment="left" valignment="top" usebox="none">
26507 \begin_layout Plain Layout
26513 <cell alignment="left" valignment="top" usebox="none">
26516 \begin_layout Plain Layout
26522 <cell alignment="left" valignment="top" usebox="none">
26525 \begin_layout Plain Layout
26531 <cell alignment="center" valignment="top" usebox="none">
26534 \begin_layout Plain Layout
26540 <cell alignment="center" valignment="top" usebox="none">
26543 \begin_layout Plain Layout
26549 <cell alignment="center" valignment="top" usebox="none">
26552 \begin_layout Plain Layout
26558 <cell alignment="center" valignment="top" usebox="none">
26561 \begin_layout Plain Layout
26569 <cell alignment="left" valignment="top" usebox="none">
26572 \begin_layout Plain Layout
26578 <cell alignment="left" valignment="top" usebox="none">
26581 \begin_layout Plain Layout
26587 <cell alignment="left" valignment="top" usebox="none">
26590 \begin_layout Plain Layout
26596 <cell alignment="left" valignment="top" usebox="none">
26599 \begin_layout Plain Layout
26605 <cell alignment="center" valignment="top" usebox="none">
26608 \begin_layout Plain Layout
26614 <cell alignment="center" valignment="top" usebox="none">
26617 \begin_layout Plain Layout
26623 <cell alignment="center" valignment="top" usebox="none">
26626 \begin_layout Plain Layout
26632 <cell alignment="center" valignment="top" usebox="none">
26635 \begin_layout Plain Layout
26643 <cell alignment="left" valignment="top" usebox="none">
26646 \begin_layout Plain Layout
26652 <cell alignment="left" valignment="top" usebox="none">
26655 \begin_layout Plain Layout
26661 <cell alignment="left" valignment="top" usebox="none">
26664 \begin_layout Plain Layout
26670 <cell alignment="left" valignment="top" usebox="none">
26673 \begin_layout Plain Layout
26679 <cell alignment="center" valignment="top" usebox="none">
26682 \begin_layout Plain Layout
26688 <cell alignment="center" valignment="top" usebox="none">
26691 \begin_layout Plain Layout
26697 <cell alignment="center" valignment="top" usebox="none">
26700 \begin_layout Plain Layout
26706 <cell alignment="center" valignment="top" usebox="none">
26709 \begin_layout Plain Layout
26717 <cell alignment="left" valignment="top" usebox="none">
26720 \begin_layout Plain Layout
26726 <cell alignment="left" valignment="top" usebox="none">
26729 \begin_layout Plain Layout
26735 <cell alignment="left" valignment="top" usebox="none">
26738 \begin_layout Plain Layout
26744 <cell alignment="left" valignment="top" usebox="none">
26747 \begin_layout Plain Layout
26753 <cell alignment="center" valignment="top" usebox="none">
26756 \begin_layout Plain Layout
26762 <cell alignment="center" valignment="top" usebox="none">
26765 \begin_layout Plain Layout
26771 <cell alignment="center" valignment="top" usebox="none">
26774 \begin_layout Plain Layout
26780 <cell alignment="center" valignment="top" usebox="none">
26783 \begin_layout Plain Layout
26791 <cell alignment="left" valignment="top" usebox="none">
26794 \begin_layout Plain Layout
26800 <cell alignment="left" valignment="top" usebox="none">
26803 \begin_layout Plain Layout
26809 <cell alignment="left" valignment="top" usebox="none">
26812 \begin_layout Plain Layout
26818 <cell alignment="left" valignment="top" usebox="none">
26821 \begin_layout Plain Layout
26827 <cell alignment="center" valignment="top" usebox="none">
26830 \begin_layout Plain Layout
26836 <cell alignment="center" valignment="top" usebox="none">
26839 \begin_layout Plain Layout
26845 <cell alignment="center" valignment="top" usebox="none">
26848 \begin_layout Plain Layout
26854 <cell alignment="center" valignment="top" usebox="none">
26857 \begin_layout Plain Layout
26865 <cell alignment="left" valignment="top" usebox="none">
26868 \begin_layout Plain Layout
26874 <cell alignment="left" valignment="top" usebox="none">
26877 \begin_layout Plain Layout
26883 <cell alignment="left" valignment="top" usebox="none">
26886 \begin_layout Plain Layout
26892 <cell alignment="left" valignment="top" usebox="none">
26895 \begin_layout Plain Layout
26901 <cell alignment="center" valignment="top" usebox="none">
26904 \begin_layout Plain Layout
26910 <cell alignment="center" valignment="top" usebox="none">
26913 \begin_layout Plain Layout
26919 <cell alignment="center" valignment="top" usebox="none">
26922 \begin_layout Plain Layout
26928 <cell alignment="center" valignment="top" usebox="none">
26931 \begin_layout Plain Layout
26939 <cell alignment="left" valignment="top" usebox="none">
26942 \begin_layout Plain Layout
26948 <cell alignment="left" valignment="top" usebox="none">
26951 \begin_layout Plain Layout
26957 <cell alignment="left" valignment="top" usebox="none">
26960 \begin_layout Plain Layout
26966 <cell alignment="left" valignment="top" usebox="none">
26969 \begin_layout Plain Layout
26975 <cell alignment="center" valignment="top" usebox="none">
26978 \begin_layout Plain Layout
26984 <cell alignment="center" valignment="top" usebox="none">
26987 \begin_layout Plain Layout
26993 <cell alignment="center" valignment="top" usebox="none">
26996 \begin_layout Plain Layout
27002 <cell alignment="center" valignment="top" usebox="none">
27005 \begin_layout Plain Layout
27013 <cell alignment="left" valignment="top" usebox="none">
27016 \begin_layout Plain Layout
27022 <cell alignment="left" valignment="top" usebox="none">
27025 \begin_layout Plain Layout
27031 <cell alignment="left" valignment="top" usebox="none">
27034 \begin_layout Plain Layout
27040 <cell alignment="left" valignment="top" usebox="none">
27043 \begin_layout Plain Layout
27049 <cell alignment="center" valignment="top" usebox="none">
27052 \begin_layout Plain Layout
27058 <cell alignment="center" valignment="top" usebox="none">
27061 \begin_layout Plain Layout
27067 <cell alignment="center" valignment="top" usebox="none">
27070 \begin_layout Plain Layout
27076 <cell alignment="center" valignment="top" usebox="none">
27079 \begin_layout Plain Layout
27087 <cell alignment="left" valignment="top" usebox="none">
27090 \begin_layout Plain Layout
27096 <cell alignment="left" valignment="top" usebox="none">
27099 \begin_layout Plain Layout
27105 <cell alignment="left" valignment="top" usebox="none">
27108 \begin_layout Plain Layout
27114 <cell alignment="left" valignment="top" usebox="none">
27117 \begin_layout Plain Layout
27123 <cell alignment="center" valignment="top" usebox="none">
27126 \begin_layout Plain Layout
27132 <cell alignment="center" valignment="top" usebox="none">
27135 \begin_layout Plain Layout
27141 <cell alignment="center" valignment="top" usebox="none">
27144 \begin_layout Plain Layout
27150 <cell alignment="center" valignment="top" usebox="none">
27153 \begin_layout Plain Layout
27161 <cell alignment="center" valignment="top" usebox="none">
27164 \begin_layout Plain Layout
27170 <cell alignment="center" valignment="top" usebox="none">
27173 \begin_layout Plain Layout
27179 <cell alignment="center" valignment="top" usebox="none">
27182 \begin_layout Plain Layout
27188 <cell alignment="center" valignment="top" usebox="none">
27191 \begin_layout Plain Layout
27197 <cell alignment="center" valignment="top" usebox="none">
27200 \begin_layout Plain Layout
27206 <cell alignment="center" valignment="top" usebox="none">
27209 \begin_layout Plain Layout
27215 <cell alignment="center" valignment="top" usebox="none">
27218 \begin_layout Plain Layout
27224 <cell alignment="center" valignment="top" usebox="none">
27227 \begin_layout Plain Layout
27241 \begin_layout Chapter
27242 Names of available colors to be used in layouts
27243 \begin_inset CommandInset label
27245 name "chap:Names-of-colors"
27252 \begin_layout Standard
27253 The colors listed here are the standard colors and the those that you can
27254 adjust in the \SpecialChar LyX
27258 \begin_layout Description
27271 No particular color – clear or default
27274 \begin_layout Description
27278 \begin_layout Description
27282 \begin_layout Description
27286 \begin_layout Description
27290 \begin_layout Description
27294 \begin_layout Description
27298 \begin_layout Description
27302 \begin_layout Description
27306 \begin_layout Description
27307 added_space Added space marker color
27310 \begin_layout Description
27311 addedtext Added text color
27314 \begin_layout Description
27315 appendix Appendix marker color
27318 \begin_layout Description
27319 background Background color
27322 \begin_layout Description
27323 bottomarea Bottom area color
27326 \begin_layout Description
27327 branchlabel Label color for branches
27330 \begin_layout Description
27331 buttonbg Color used for button background
27334 \begin_layout Description
27335 buttonhoverbg Color used for button background under focus
27338 \begin_layout Description
27339 buttonframe Color for inset button frames
27342 \begin_layout Description
27343 changebar Changebar color
27346 \begin_layout Description
27347 changedtextauthor1 Changed text color author 1
27350 \begin_layout Description
27351 changedtextauthor2 Changed text color author 2
27354 \begin_layout Description
27355 changedtextauthor3 Changed text color author 3
27358 \begin_layout Description
27359 changedtextauthor4 Changed text color author 4
27362 \begin_layout Description
27363 changedtextauthor5 Changed text color author 5
27366 \begin_layout Description
27367 collapsable_inset_frame Collapsable insets framecolor
27370 \begin_layout Description
27371 collapsable_inset_text Collapsable insets text color
27374 \begin_layout Description
27375 command Text color for command insets
27378 \begin_layout Description
27379 commandbg Background color for command insets
27382 \begin_layout Description
27383 commandframe Frame color for command insets
27386 \begin_layout Description
27387 comment color for comments
27390 \begin_layout Description
27391 commentbg Background color of comments
27394 \begin_layout Description
27395 cursor Cursor color
27398 \begin_layout Description
27399 deletedtext Deleted text color
27402 \begin_layout Description
27403 deletedtextmodifier Deleted text modifying color
27406 \begin_layout Description
27407 depthbar Color for the depth bars in the margin
27410 \begin_layout Description
27411 eolmarker End of line marker color
27414 \begin_layout Description
27415 error Color of the \SpecialChar LaTeX
27419 \begin_layout Description
27420 footlabel Label color for footnotes
27423 \begin_layout Description
27424 graphicsbg Graphics inset background color
27427 \begin_layout Description
27428 greyedout Label color for greyedout insets
27431 \begin_layout Description
27432 greyedoutbg Background color of greyedout inset
27435 \begin_layout Description
27436 greyedouttext Color for greyedout inset text
27439 \begin_layout Description
27440 indexlabel Label color for index insets
27443 \begin_layout Description
27444 ignore The color is ignored
27447 \begin_layout Description
27448 inherit The color is inherited
27451 \begin_layout Description
27452 inlinecompletion Inline completion color
27455 \begin_layout Description
27456 insetbg Inset marker background color
27459 \begin_layout Description
27460 insetframe Inset marker frame color
27463 \begin_layout Description
27464 language Color for marking foreign language words
27467 \begin_layout Description
27468 latex Text color in \SpecialChar LaTeX
27472 \begin_layout Description
27473 listingsbg Background color of listings inset
27476 \begin_layout Description
27477 marginlabel Label color for margin notes
27480 \begin_layout Description
27481 math Math inset text color
27484 \begin_layout Description
27485 mathbg Math inset background color
27488 \begin_layout Description
27489 mathcorners Math inset frame color not under focus
27492 \begin_layout Description
27493 mathframe Math inset frame color under focus
27496 \begin_layout Description
27497 mathline Math line color
27500 \begin_layout Description
27501 mathmacrobg Macro math inset background color
27504 \begin_layout Description
27505 mathmacroblend Macro math blended color
27508 \begin_layout Description
27509 mathmacroframe Macro math frame color
27512 \begin_layout Description
27513 mathmacrohoverbg Macro math inset background color hovered
27516 \begin_layout Description
27517 mathmacrolabel Macro math label color
27520 \begin_layout Description
27521 mathmacronewarg Macro template color for new parameters
27524 \begin_layout Description
27525 mathmacrooldarg Macro template color for old parameters
27528 \begin_layout Description
27529 newpage New page color
27532 \begin_layout Description
27533 nonunique_inlinecompletion Inline completion color for the non-unique part
27536 \begin_layout Description
27537 notebg Background color of notes
27540 \begin_layout Description
27541 notelabel Label color for notes
27544 \begin_layout Description
27545 pagebreak Page break/line break color
27548 \begin_layout Description
27549 paragraphmarker Color used for the pilcrow sign to mark the end of a paragraph
27552 \begin_layout Description
27553 phantomtext Text color for phantom insets
27556 \begin_layout Description
27557 preview The color used for previews
27560 \begin_layout Description
27561 previewframe Preview frame color
27564 \begin_layout Description
27565 regexpframe Color for regexp frame
27568 \begin_layout Description
27569 selection Background color of selected text
27572 \begin_layout Description
27573 selectiontext Foreground color of selected text
27576 \begin_layout Description
27577 shadedbg Background color of shaded box
27580 \begin_layout Description
27581 special Special chars text color
27584 \begin_layout Description
27585 tabularline Table line color
27588 \begin_layout Description
27589 tabularonoffline Table line color
27592 \begin_layout Description
27593 urllabel Label color for URL insets
27596 \begin_layout Description
27597 urltext Color for URL inset text