+The XHTML LyX outputs for an inset has the following form:
+\end_layout
+
+\begin_layout LyX-Code
+<tag attr=
+\begin_inset Quotes erd
+\end_inset
+
+value
+\begin_inset Quotes erd
+\end_inset
+
+>
+\end_layout
+
+\begin_layout LyX-Code
+<labeltag>Label</labeltag>
+\end_layout
+
+\begin_layout LyX-Code
+<innertag attr=
+\begin_inset Quotes erd
+\end_inset
+
+value
+\begin_inset Quotes erd
+\end_inset
+
+>Contents of the inset.</innertag>
+\end_layout
+
+\begin_layout LyX-Code
+</tag>
+\end_layout
+
+\begin_layout Standard
+If the inset permits multiple paragraphs---that is, if
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+MultiPar
+\end_layout
+
+\end_inset
+
+ is true---then the contents of the inset will itself be output as paragraphs
+ formatted according to the styles used for those paragraphs (standard,
+ quote, and the like).
+ The label tag is of course omitted if the paragraph does not have a label
+ and, at present, is always
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+span
+\end_layout
+
+\end_inset
+
+.
+ The inner tag is optional and, by default, does not appear.
+\end_layout
+
+\begin_layout Standard
+The specific tags and attributes output for each inset can be controlled
+ by means of the following layout tags.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+HTMLAttr
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] Specifies attribute information to be output with the main tag.
+ For example,
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+class=`myinset' onclick=`\SpecialChar \ldots{}
+'
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+ By default, LyX will output
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+class=`insetname'
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+, where
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+insetname
+\end_layout
+
+\end_inset
+
+ is the LyX name of the inset, made lowercase and with non-alphanumeric
+ characters converted to underscores, for example: footnote.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+HTMLForceCSS
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+0
+\emph default
+,1
+\end_layout
+
+\end_inset
+
+] Whether to output the default CSS information LyX generates for this layout,
+ even if additional information is explicitly provided via
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+HTMLStyle
+\end_layout
+
+\end_inset
+
+.
+ Setting this to
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+1
+\end_layout
+
+\end_inset
+
+ allows you to alter or augment the generated CSS, rather than to override
+ it completely.
+ Default is 0.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+HTMLInnerAttr
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] Attributes for the inner tag.
+ Defaults to
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+class=`insetname_inner'
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+HTMLInnerTag
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] The inner tag, replacing
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+innertag
+\end_layout
+
+\end_inset
+
+ in the examples above.
+ By default, there is none.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+HTMLIsBlock
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+0,
+\emph on
+1
+\end_layout
+
+\end_inset
+
+] Whether this inset represents a standalone block of text (such as a footnote)
+ or instead represents material that is included in the surrounding text
+ (such as a branch).
+ Defaults to 1.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+HTMLLabel
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] A label for this inset, possibly including a reference to a counter.
+ For example, for footnote, it might be:
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+arabic{footnote}
+\end_layout
+
+\end_inset
+
+.
+ This is optional, and there is no default.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+HTMLPreamble
+\end_layout
+
+\end_inset
+
+ Information to be output in the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+<head>
+\end_layout
+
+\end_inset
+
+ section when this style is used.
+ This might, for example, be used to include a
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+<script>
+\end_layout
+
+\end_inset
+
+ block defining an
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+onclick
+\end_layout
+
+\end_inset
+
+ handler.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+HTMLStyle
+\end_layout
+
+\end_inset
+
+ CSS style information to be included when this style is used.
+ Note that this will automatically be wrapped in a layout-generated
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+<style>
+\end_layout
+
+\end_inset
+
+ block, so only the CSS itself need be included.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+HTMLTag
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] The tag to be used for the main label, replacing
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+tag
+\end_layout
+
+\end_inset
+
+ in the examples above.
+ The default depends upon the setting of
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+MultiPar
+\end_layout
+
+\end_inset
+
+: If
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+MultiPar
+\end_layout
+
+\end_inset
+
+ is true, the default is
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+div
+\end_layout
+
+\end_inset
+
+; if it is false, the default is
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+span
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsection
+Float XHTML
+\end_layout
+
+\begin_layout Standard
+The XHTML output for floats too can be controlled by layout information.
+ The output has the following form:
+\end_layout
+
+\begin_layout LyX-Code
+<tag attr=
+\begin_inset Quotes erd
+\end_inset
+
+value
+\begin_inset Quotes erd
+\end_inset
+
+>
+\end_layout
+
+\begin_layout LyX-Code
+Contents of the float.
+\end_layout
+
+\begin_layout LyX-Code
+</tag>
+\end_layout
+
+\begin_layout Standard
+The caption, if there is one, is a separate inset and will be output as
+ such.
+ Its appearance can be controlled via the InsetLayout for caption insets.
+
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+HTMLAttr
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] Specifies attribute information to be output with the main tag.
+ For example,
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+class=`myfloat' onclick=`\SpecialChar \ldots{}
+'
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+ By default, LyX will output
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+class=`float float-floattype'
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+, where
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+floattype
+\end_layout
+
+\end_inset
+
+ is LyX's name for this type of float, as determined by the float declaration
+ (see
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:Floats"
+
+\end_inset
+
+), though made lowercase and with non-alphanumeric characters converted
+ to underscores, for example: float-table.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+HTMLStyle
+\end_layout
+
+\end_inset
+
+ CSS style information to be included when this float is used.
+ Note that this will automatically be wrapped in a layout-generated
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+<style>
+\end_layout
+
+\end_inset
+
+ block, so only the CSS itself need be included.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+HTMLTag
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] The tag to be used for this float, replacing
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+tag
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+ in the example above.
+ The default is
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+div
+\end_layout
+
+\end_inset
+
+ and will rarely need changing.
+\end_layout
+
+\begin_layout Subsection
+Bibliography formatting
+\end_layout
+
+\begin_layout Standard
+The bibliography can be formatted using
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+CiteFormat
+\end_layout
+
+\end_inset
+
+ blocks.
+ See
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:Citation-format-description"
+
+\end_inset
+
+ for the details.
+\end_layout
+
+\begin_layout Subsection
+LyX-generated CSS
+\end_layout
+
+\begin_layout Standard
+We have several times mentioned that LyX will generate default CSS style
+ rules for both insets and paragraph styles, based upon the other layout
+ information that is provided.
+ In this section, we shall say a word about which layout information LyX
+ uses and how.
+\end_layout
+
+\begin_layout Standard
+At present, LyX auto-generates CSS only for font information, making use
+ of the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Family
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Series
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Shape
+\end_layout
+
+\end_inset
+
+, and
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Size
+\end_layout
+
+\end_inset
+
+ specified in the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Font
+\end_layout
+
+\end_inset
+
+ declaration (see
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:Font-description"
+
+\end_inset
+
+).
+ The translation is mostly straightforward and obvious.
+ For example,
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Family Sans
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+ becomes
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+font-family: sans-serif;
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+ The correspondence of LyX sizes and CSS sizes is a little less obvious
+ but nonetheless intuitive.
+ See the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+getSizeCSS()
+\end_layout
+
+\end_inset
+
+ function in
+\begin_inset Flex URL
+status collapsed
+
+\begin_layout Plain Layout
+
+src/FontInfo.cpp
+\end_layout
+
+\end_inset
+
+ for the details.
+\end_layout
+
+\begin_layout Chapter
+Including External Material
+\begin_inset CommandInset label
+LatexCommand label
+name "chap:Including-External-Material"
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\begin_inset Box Shadowbox
+position "t"
+hor_pos "c"
+has_inner_box 1
+inner_pos "t"
+use_parbox 0
+use_makebox 0
+width "100col%"
+special "none"
+height "1in"
+height_special "totalheight"
+status open
+
+\begin_layout Plain Layout
+WARNING: This portion of the documentation has not been updated for some
+ time.
+ We certainly hope that it is still accurate, but there are no guarantees.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+The use of material from sources external to LyX is covered in detail in
+ the
+\emph on
+Embedded Objects
+\emph default
+ manual.
+ This part of the manual covers what needs to happen behind the scenes for
+ new sorts of material to be included.
+\end_layout
+
+\begin_layout Section
+How does it work?
+\end_layout
+
+\begin_layout Standard
+The external material feature is based on the concept of a
+\emph on
+template
+\emph default
+.
+ A template is a specification of how LyX should interface with a certain
+ kind of material.
+ As bundled, LyX comes with predefined templates for Xfig figures, various
+ raster format images, chess diagrams, and LilyPond music notation.
+ You can check the actual list by using the menu
+\begin_inset Flex MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Insert\SpecialChar \menuseparator
+File\SpecialChar \menuseparator
+External Material
+\end_layout
+
+\end_inset
+
+.
+ Furthermore, it is possible to roll your own template to support a specific
+ kind of material.
+ Later we'll describe in more detail what is involved, and hopefully you
+ will submit all the templates you create so we can include them in a later
+ LyX version.
+\end_layout
+
+\begin_layout Standard
+Another basic idea of the external material feature is to distinguish between
+ the original file that serves as a base for final material and the produced
+ file that is included in your exported or printed document.
+ For example, consider the case of a figure produced with
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Xfig
+\end_layout
+
+\end_inset
+
+.
+ The Xfig application itself works on an original file with the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+.fig
+\end_layout
+
+\end_inset
+
+ extension.
+ Within Xfig, you create and change your figure, and when you are done,
+ you save the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+fig
+\end_layout
+
+\end_inset
+
+-file.
+ When you want to include the figure in your document, you invoke
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+transfig
+\end_layout
+
+\end_inset
+
+ in order to create a PostScript file that can readily be included in your
+ LaTeX file.
+ In this case, the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+.fig
+\end_layout
+
+\end_inset
+
+ file is the original file, and the PostScript file is the produced file.
+\end_layout
+
+\begin_layout Standard
+This distinction is important in order to allow updating of the material
+ while you are in the process of writing the document.
+ Furthermore, it provides us with the flexibility that is needed to support
+ multiple export formats.
+ For instance, in the case of a plain text file, it is not exactly an award-winn
+ing idea to include the figure as raw PostScript.
+ Instead, you would either prefer to just include a reference to the figure
+ or try to invoke some graphics to ASCII converter to make the final result
+ look similar to the real graphics.
+ The external material management allows you to do this, because it is parametri
+zed on the different export formats that LyX supports.
+\end_layout
+
+\begin_layout Standard
+Besides supporting the production of different products according to the
+ exported format, it supports tight integration with editing and viewing
+ applications.
+ In the case of an Xfig figure, you are able to invoke Xfig on the original
+ file with a single click from within the external material dialog in LyX,
+ and also preview the produced PostScript file with Ghostview with another
+ click.
+ No more fiddling around with the command line and/or file browsers to locate
+ and manipulate the original or produced files.
+ In this way, you are finally able to take full advantage of the many different
+ applications that are relevant to use when you write your documents, and
+ ultimately be more productive.
+\end_layout
+
+\begin_layout Section
+The external template configuration file
+\end_layout
+
+\begin_layout Standard
+It is relatively easy to add custom external template definitions to LyX.
+ However, be aware that doing this in an careless manner most probably
+\emph on
+will
+\emph default
+ introduce an easily exploitable security hole.
+ So before you do this, please read the discussion about security in
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:Security-discussion"
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+Having said that, we encourage you to submit any interesting templates that
+ you create.
+
+\end_layout
+
+\begin_layout Standard
+The external templates are defined in the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+LyXDir/lib/external_templates
+\end_layout
+
+\end_inset
+
+ file.
+ You can place your own version in
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+UserDir/external_templates
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+A typical template looks like this:
+\end_layout
+
+\begin_layout LyX-Code
+Template XFig
+\end_layout
+
+\begin_layout LyX-Code
+GuiName "XFig: $$AbsOrRelPathParent$$Basename"
+\end_layout
+
+\begin_layout LyX-Code
+HelpText
+\end_layout
+
+\begin_layout LyX-Code
+An XFig figure.
+\end_layout
+
+\begin_layout LyX-Code
+HelpTextEnd
+\end_layout
+
+\begin_layout LyX-Code
+InputFormat fig
+\end_layout
+
+\begin_layout LyX-Code
+FileFilter "*.fig"
+\end_layout
+
+\begin_layout LyX-Code
+AutomaticProduction true
+\end_layout
+
+\begin_layout LyX-Code
+Transform Rotate
+\end_layout
+
+\begin_layout LyX-Code
+Transform Resize
+\end_layout
+
+\begin_layout LyX-Code
+Format LaTeX
+\end_layout
+
+\begin_layout LyX-Code
+TransformCommand Rotate RotationLatexCommand
+\end_layout
+
+\begin_layout LyX-Code
+TransformCommand Resize ResizeLatexCommand
+\end_layout
+
+\begin_layout LyX-Code
+Product "$$RotateFront$$ResizeFront
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+
+\backslash
+input{$$AbsOrRelPathMaster$$Basename.pstex_t}
+\end_layout
+
+\begin_layout LyX-Code
+ $$ResizeBack$$RotateBack"
+\end_layout
+
+\begin_layout LyX-Code
+UpdateFormat pstex
+\end_layout
+
+\begin_layout LyX-Code
+UpdateResult "$$AbsPath$$Basename.pstex_t"
+\end_layout
+
+\begin_layout LyX-Code
+Requirement "graphicx"
+\end_layout
+
+\begin_layout LyX-Code
+ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
+\end_layout
+
+\begin_layout LyX-Code
+ReferencedFile latex "$$AbsPath$$Basename.eps"
+\end_layout
+
+\begin_layout LyX-Code
+ReferencedFile dvi "$$AbsPath$$Basename.eps"
+\end_layout
+
+\begin_layout LyX-Code
+FormatEnd
+\end_layout
+
+\begin_layout LyX-Code
+Format PDFLaTeX
+\end_layout
+
+\begin_layout LyX-Code
+TransformCommand Rotate RotationLatexCommand
+\end_layout
+
+\begin_layout LyX-Code
+TransformCommand Resize ResizeLatexCommand
+\end_layout
+
+\begin_layout LyX-Code
+Product "$$RotateFront$$ResizeFront
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+
+\backslash
+input{$$AbsOrRelPathMaster$$Basename.pdftex_t}
+\end_layout
+
+\begin_layout LyX-Code
+ $$ResizeBack$$RotateBack"
+\end_layout
+
+\begin_layout LyX-Code
+UpdateFormat pdftex
+\end_layout
+
+\begin_layout LyX-Code
+UpdateResult "$$AbsPath$$Basename.pdftex_t"
+\end_layout
+
+\begin_layout LyX-Code
+Requirement "graphicx"
+\end_layout
+
+\begin_layout LyX-Code
+ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pdftex_t"
+\end_layout
+
+\begin_layout LyX-Code
+ReferencedFile latex "$$AbsPath$$Basename.pdf"
+\end_layout
+
+\begin_layout LyX-Code
+FormatEnd
+\end_layout
+
+\begin_layout LyX-Code
+Format Ascii
+\end_layout
+
+\begin_layout LyX-Code
+Product "$$Contents(
+\backslash
+"$$AbsPath$$Basename.asc
+\backslash
+")"
+\end_layout
+
+\begin_layout LyX-Code
+UpdateFormat asciixfig
+\end_layout
+
+\begin_layout LyX-Code
+UpdateResult "$$AbsPath$$Basename.asc"
+\end_layout
+
+\begin_layout LyX-Code
+FormatEnd
+\end_layout
+
+\begin_layout LyX-Code
+Format DocBook
+\end_layout
+
+\begin_layout LyX-Code
+Product "<graphic fileref=
+\backslash
+"$$AbsOrRelPathMaster$$Basename.eps
+\backslash
+">
+\end_layout
+
+\begin_layout LyX-Code
+ </graphic>"
+\end_layout
+
+\begin_layout LyX-Code
+UpdateFormat eps
+\end_layout
+
+\begin_layout LyX-Code
+UpdateResult "$$AbsPath$$Basename.eps"
+\end_layout
+
+\begin_layout LyX-Code
+ReferencedFile docbook "$$AbsPath$$Basename.eps"
+\end_layout
+
+\begin_layout LyX-Code
+ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
+\end_layout
+
+\begin_layout LyX-Code
+FormatEnd
+\end_layout
+
+\begin_layout LyX-Code
+Product "[XFig: $$FName]"
+\end_layout
+
+\begin_layout LyX-Code
+FormatEnd
+\end_layout
+
+\begin_layout LyX-Code
+TemplateEnd
+\end_layout
+
+\begin_layout Standard
+As you can see, the template is enclosed in
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Template
+\end_layout
+
+\end_inset
+
+ \SpecialChar \ldots{}
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+TemplateEnd
+\end_layout
+
+\end_inset
+
+.
+ It contains a header specifying some general settings and, for each supported
+ primary document file format, a section
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Format
+\end_layout
+
+\end_inset
+
+ \SpecialChar \ldots{}
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+FormatEnd
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsection
+The template header
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+AutomaticProduction
+\begin_inset space ~
+\end_inset
+
+true|false
+\end_layout
+
+\end_inset
+
+ Whether the file represented by the template must be generated by LyX.
+ This command must occur exactly once.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+FileFilter
+\begin_inset space ~
+\end_inset
+
+<pattern>
+\end_layout
+
+\end_inset
+
+ A glob pattern that is used in the file dialog to filter out the desired
+ files.
+ If there is more than one possible file extension (e.
+\begin_inset space \thinspace{}
+\end_inset
+
+g.
+\begin_inset space \space{}
+\end_inset
+
+tgif has
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+.obj
+\end_layout
+
+\end_inset
+
+ and
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+.tgo
+\end_layout
+
+\end_inset
+
+), use something like
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+"*.{obj,tgo}"
+\end_layout
+
+\end_inset
+
+.
+ This command must occur exactly once.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+GuiName
+\begin_inset space ~
+\end_inset
+
+<guiname>
+\end_layout
+
+\end_inset
+
+ The text that is displayed on the button.
+ This command must occur exactly once.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+HelpText
+\begin_inset space ~
+\end_inset
+
+<text>
+\begin_inset space ~
+\end_inset
+
+HelpTextEnd
+\end_layout
+
+\end_inset
+
+ The help text that is used in the External dialog.
+ Provide enough information to explain to the user just what the template
+ can provide him with.
+ This command must occur exactly once.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+InputFormat
+\begin_inset space ~
+\end_inset
+
+<format>
+\end_layout
+
+\end_inset
+
+ The file format of the original file.
+ This must be the name of a format that is known to LyX (see
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:Formats"
+
+\end_inset
+
+).
+ Use
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+*
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+ if the template can handle original files of more than one format.
+ LyX will attempt to interrogate the file itself in order to deduce its
+ format in this case.
+ This command must occur exactly once.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Template
+\begin_inset space ~
+\end_inset
+
+<id>
+\end_layout
+
+\end_inset
+
+ A unique name for the template.
+ It must not contain substitution macros (see below).
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Transform
+\begin_inset space ~
+\end_inset
+
+Rotate|Resize|Clip|Extra
+\end_layout
+
+\end_inset
+
+ This command specifies which transformations are supported by this template.
+ It may occur zero or more times.
+ This command enables the corresponding tabs in the external dialog.
+ Each
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Transform
+\end_layout
+
+\end_inset
+
+ command must have either a corresponding
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+TransformCommand
+\end_layout
+
+\end_inset
+
+ or a
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+TransformOption
+\end_layout
+
+\end_inset
+
+ command in the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Format
+\end_layout
+
+\end_inset
+
+ section.
+ Otherwise the transformation will not be supported by that format.
+\end_layout
+
+\begin_layout Subsection
+The Format section
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Format
+\begin_inset space ~
+\end_inset
+
+LaTeX|PDFLaTeX|PlainText|DocBook
+\end_layout
+
+\end_inset
+
+ The primary document file format that this format definition is for.
+ Not every template has a sensible representation in all document file formats.
+ Please define nevertheless a
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Format
+\end_layout
+
+\end_inset
+
+ section for all templates.
+ Use a dummy text when no representation is available.
+ Then you can at least see a reference to the external material in the exported
+ document.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Option
+\begin_inset space ~
+\end_inset
+
+<name>
+\begin_inset space ~
+\end_inset
+
+<value>
+\end_layout
+
+\end_inset
+
+ This command defines an additional macro
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$<name>
+\end_layout
+
+\end_inset
+
+ for substitution in
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Product
+\end_layout
+
+\end_inset
+
+.
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+<value>
+\end_layout
+
+\end_inset
+
+ itself may contain substitution macros.
+ The advantage over using
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+<value>
+\end_layout
+
+\end_inset
+
+ directly in
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Product
+\end_layout
+
+\end_inset
+
+ is that the substituted value of
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$<name>
+\end_layout
+
+\end_inset
+
+ is sanitized so that it is a valid optional argument in the document format.
+ This command may occur zero or more times.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Product
+\begin_inset space ~
+\end_inset
+
+<text>
+\end_layout
+
+\end_inset
+
+ The text that is inserted in the exported document.
+ This is actually the most important command and can be quite complex.
+ This command must occur exactly once.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Preamble
+\begin_inset space ~
+\end_inset
+
+<name>
+\end_layout
+
+\end_inset
+
+ This command specifies a preamble snippet that will be included in the
+ LaTeX preamble.
+ It has to be defined using
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+PreambleDef
+\end_layout
+
+\end_inset
+
+ \SpecialChar \ldots{}
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+PreambleDefEnd
+\end_layout
+
+\end_inset
+
+.
+ This command may occur zero or more times.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+ReferencedFile
+\begin_inset space ~
+\end_inset
+
+<format>
+\begin_inset space ~
+\end_inset
+
+<filename>
+\end_layout
+
+\end_inset
+
+ This command denotes files that are created by the conversion process and
+ are needed for a particular export format.
+ If the filename is relative, it is interpreted relative to the master document.
+ This command may be given zero or more times.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Requirement
+\begin_inset space ~
+\end_inset
+
+<package>
+\end_layout
+
+\end_inset
+
+ The name of a required LaTeX package.
+ The package is included via
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+usepackage{}
+\end_layout
+
+\end_inset
+
+ in the LaTeX preamble.
+ This command may occur zero or more times.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+TransformCommand
+\begin_inset space ~
+\end_inset
+
+Rotate
+\begin_inset space ~
+\end_inset
+
+RotationLatexCommand
+\end_layout
+
+\end_inset
+
+ This command specifies that the built in LaTeX command should be used for
+ rotation.
+ This command may occur once or not at all.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+TransformCommand
+\begin_inset space ~
+\end_inset
+
+Resize
+\begin_inset space ~
+\end_inset
+
+ResizeLatexCommand
+\end_layout
+
+\end_inset
+
+ This command specifies that the built in LaTeX command should be used for
+ resizing.
+ This command may occur once or not at all.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+TransformOption
+\begin_inset space ~
+\end_inset
+
+Rotate
+\begin_inset space ~
+\end_inset
+
+RotationLatexOption
+\end_layout
+
+\end_inset
+
+ This command specifies that rotation is done via an optional argument.
+ This command may occur once or not at all.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+TransformOption
+\begin_inset space ~
+\end_inset
+
+Resize
+\begin_inset space ~
+\end_inset
+
+ResizeLatexOption
+\end_layout
+
+\end_inset
+
+ This command specifies that resizing is done via an optional argument.
+ This command may occur once or not at all.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+TransformOption
+\begin_inset space ~
+\end_inset
+
+Clip
+\begin_inset space ~
+\end_inset
+
+ClipLatexOption
+\end_layout
+
+\end_inset
+
+ This command specifies that clipping is done via an optional argument.
+ This command may occur once or not at all.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+TransformOption
+\begin_inset space ~
+\end_inset
+
+Extra
+\begin_inset space ~
+\end_inset
+
+ExtraLatexOption
+\end_layout
+
+\end_inset
+
+ This command specifies that an extra optional argument is used.
+ This command may occur once or not at all.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+UpdateFormat
+\begin_inset space ~
+\end_inset
+
+<format>
+\end_layout
+
+\end_inset
+
+ The file format of the converted file.
+ This must be the name of a format that is known to LyX (see the
+\begin_inset Flex MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
+Preferences\SpecialChar \menuseparator
+File Handling\SpecialChar \menuseparator
+File Format
+\end_layout
+
+\end_inset
+
+ dialog).
+ This command must occur exactly once.
+ If the resulting file format is PDF, you need to specify the format
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+pdf6
+\end_layout
+
+\end_inset
+
+.
+ This is the PDF format used for including graphics.
+ The other defined PDF formats are for document export.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+UpdateResult
+\begin_inset space ~
+\end_inset
+
+<filename>
+\end_layout
+
+\end_inset
+
+ The file name of the converted file.
+ The file name must be absolute.
+ This command must occur exactly once.
+\end_layout
+
+\begin_layout Subsection
+Preamble definitions
+\end_layout
+
+\begin_layout Standard
+The external template configuration file may contain additional preamble
+ definitions enclosed by
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+PreambleDef
+\end_layout
+
+\end_inset
+
+ \SpecialChar \ldots{}
+
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+PreambleDefEnd
+\end_layout
+
+\end_inset
+
+.
+ They can be used by the templates in the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Format
+\end_layout
+
+\end_inset
+
+ section.
+\end_layout
+
+\begin_layout Section
+The substitution mechanism
+\end_layout
+
+\begin_layout Standard
+When the external material facility invokes an external program, it is done
+ on the basis of a command defined in the template configuration file.
+ These commands can contain various macros that are expanded before execution.
+ Execution always take place in the directory of the containing document.
+\end_layout
+
+\begin_layout Standard
+Also, whenever external material is to be displayed, the name will be produced
+ by the substitution mechanism, and most other commands in the template
+ definition support substitution as well.
+\end_layout
+
+\begin_layout Standard
+The available macros are the following:
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$AbsOrRelPathMaster
+\end_layout
+
+\end_inset
+
+ The file path, absolute or relative to the master LyX document.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$AbsOrRelPathParent
+\end_layout
+
+\end_inset
+
+ The file path, absolute or relative to the LyX document.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$AbsPath
+\end_layout
+
+\end_inset
+
+ The absolute file path.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$Basename
+\end_layout
+
+\end_inset
+
+ The filename without path and without the extension.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$Contents(
+\begin_inset Quotes eld
+\end_inset
+
+filename.ext
+\begin_inset Quotes erd
+\end_inset
+
+)
+\end_layout
+
+\end_inset
+
+ This macro will expand to the contents of the file with the name
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+filename.ext
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$Extension
+\end_layout
+
+\end_inset
+
+ The file extension (including the dot).
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$FName
+\end_layout
+
+\end_inset
+
+ The filename of the file specified in the external material dialog.
+ This is either an absolute name, or it is relative to the LyX document.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$FPath
+\end_layout
+
+\end_inset
+
+ The path part of
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$FName
+\end_layout
+
+\end_inset
+
+ (absolute name or relative to the LyX document).
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$RelPathMaster
+\end_layout
+
+\end_inset
+
+ The file path, relative to the master LyX document.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$RelPathParent
+\end_layout
+
+\end_inset
+
+ The file path, relative to the LyX document.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$Sysdir
+\end_layout
+
+\end_inset
+
+ This macro will expand to the absolute path of the system directory.
+ This is typically used to point to the various helper scripts that are
+ bundled with LyX.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$Tempname
+\end_layout
+
+\end_inset
+
+ A name and full path to a temporary file which will be automatically deleted
+ whenever the containing document is closed, or the external material insertion
+ deleted.
+\end_layout
+
+\begin_layout Standard
+All path macros contain a trailing directory separator, so you can construct
+ e.
+\begin_inset space \thinspace{}
+\end_inset
+
+g.
+\begin_inset space \space{}
+\end_inset
+
+the absolute filename with
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$AbsPath$$Basename$$Extension
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+The macros above are substituted in all commands unless otherwise noted.
+ The command
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Product
+\end_layout
+
+\end_inset
+
+ supports additionally the following substitutions if they are enabled by
+ the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Transform
+\end_layout
+
+\end_inset
+
+ and
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+TransformCommand
+\end_layout
+
+\end_inset
+
+ commands:
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$ResizeFront
+\end_layout
+
+\end_inset
+
+ The front part of the resize command.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$ResizeBack
+\end_layout
+
+\end_inset
+
+ The back part of the resize command.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$RotateFront
+\end_layout
+
+\end_inset
+
+ The front part of the rotation command.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$RotateBack
+\end_layout
+
+\end_inset
+
+ The back part of the rotation command.
+\end_layout
+
+\begin_layout Standard
+The value string of the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Option
+\end_layout
+
+\end_inset
+
+ command supports additionally the following substitutions if they are enabled
+ by the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+Transform
+\end_layout
+
+\end_inset
+
+ and
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+TransformOption
+\end_layout
+
+\end_inset
+
+ commands:
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$Clip
+\end_layout
+
+\end_inset
+
+ The clip option.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$Extra
+\end_layout
+
+\end_inset
+
+ The extra option.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$Resize
+\end_layout
+
+\end_inset
+
+ The resize option.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$Rotate
+\end_layout
+
+\end_inset
+
+ The rotation option.
+\end_layout
+
+\begin_layout Standard
+You may ask why there are so many path macros.
+ There are mainly two reasons:
+\end_layout
+
+\begin_layout Enumerate
+Relative and absolute file names should remain relative or absolute, respectivel
+y.
+ Users may have reasons to prefer either form.
+ Relative names are useful for portable documents that should work on different
+ machines, for example.
+ Absolute names may be required by some programs.
+\end_layout
+
+\begin_layout Enumerate
+LaTeX treats relative file names differently than LyX and other programs
+ in nested included files.
+ For LyX, a relative file name is always relative to the document that contains
+ the file name.
+ For LaTeX, it is always relative to the master document.
+ These two definitions are identical if you have only one document, but
+ differ if you have a master document that includes part documents.
+ That means that relative filenames must be transformed when presented to
+ LaTeX.
+ Fortunately LyX does this automatically for you if you choose the right
+ macros.
+\end_layout
+
+\begin_layout Standard
+So which path macro should be used in new template definitions? The rule
+ is not difficult:
+\end_layout
+
+\begin_layout Itemize
+Use
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$AbsPath
+\end_layout
+
+\end_inset
+
+ if an absolute path is required.
+\end_layout
+
+\begin_layout Itemize
+Use
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$AbsOrRelPathMaster
+\end_layout
+
+\end_inset
+
+ if the substituted string is some kind of LaTeX input.
+\end_layout
+
+\begin_layout Itemize
+Else use
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+$$AbsOrRelPathParent
+\end_layout
+
+\end_inset
+
+ in order to preserve the user's choice.
+\end_layout
+
+\begin_layout Standard
+There are special cases where this rule does not work and e.
+\begin_inset space \thinspace{}
+\end_inset
+
+g.
+\begin_inset space \space{}
+\end_inset
+
+relative names are needed, but normally it will work just fine.
+ One example for such a case is the command
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
+\end_layout
+
+\end_inset
+
+ in the XFig template above: We can't use the absolute name because the
+ copier for
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+.pstex_t
+\end_layout
+
+\end_inset
+
+ files needs the relative name in order to rewrite the file content.
+\end_layout
+
+\begin_layout Section
+Security discussion
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:Security-discussion"
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+The external material feature interfaces with a lot of external programs
+ and does so automatically, so we have to consider the security implications
+ of this.
+ In particular, since you have the option of including your own filenames
+ and/or parameter strings and those are expanded into a command, it seems
+ that it would be possible to create a malicious document which executes
+ arbitrary commands when a user views or prints the document.
+ This is something we definitely want to avoid.
+\end_layout
+
+\begin_layout Standard
+However, since the external program commands are specified in the template
+ configuration file only, there are no security issues if LyX is properly
+ configured with safe templates only.
+ This is so because the external programs are invoked with the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+execvp
+\end_layout
+
+\end_inset
+
+-system call rather than the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+system
+\end_layout
+
+\end_inset
+
+ system-call, so it's not possible to execute arbitrary commands from the
+ filename or parameter section via the shell.
+\end_layout
+
+\begin_layout Standard
+This also implies that you are restricted in what command strings you can
+ use in the external material templates.
+ In particular, pipes and redirection are not readily available.
+ This has to be so if LyX should remain safe.
+ If you want to use some of the shell features, you should write a safe
+ script to do this in a controlled manner, and then invoke the script from
+ the command string.
+
+\end_layout
+
+\begin_layout Standard
+It is possible to design a template that interacts directly with the shell,
+ but since this would allow a malicious user to execute arbitrary commands
+ by writing clever filenames and/or parameters, we generally recommend that
+ you only use safe scripts that work with the
+\begin_inset Flex Code
+status collapsed
+
+\begin_layout Plain Layout
+execvp
+\end_layout
+
+\end_inset
+
+ system call in a controlled manner.
+ Of course, for use in a controlled environment, it can be tempting to just
+ fall back to use ordinary shell scripts.
+ If you do so, be aware that you
+\emph on
+will
+\emph default
+ provide an easily exploitable security hole in your system.
+ Of course it stands to reason that such unsafe templates will never be
+ included in the standard LyX distribution, although we do encourage people
+ to submit new templates in the open source tradition.
+ But LyX as shipped from the official distribution channels will never have
+ unsafe templates.
+\end_layout
+
+\begin_layout Standard
+Including external material provides a lot of power, and you have to be
+ careful not to introduce security hazards with this power.
+ A subtle error in a single line in an innocent looking script can open
+ the door to huge security problems.
+ So if you do not fully understand the issues, we recommend that you consult
+ a knowledgeable security professional or the LyX development team if you
+ have any questions about whether a given template is safe or not.
+ And do this before you use it in an uncontrolled environment.
+\end_layout
+
+\begin_layout Chapter
+\start_of_appendix
+List of supported LyX functions to be used in layouts
+\begin_inset CommandInset label
+LatexCommand label
+name "chap:List-of-functions"
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\align center
+\begin_inset Tabular
+<lyxtabular version="3" rows="11" columns="8">
+<features tabularvalignment="middle">
+<column alignment="left" valignment="top">
+<column alignment="left" valignment="top">
+<column alignment="left" valignment="top">
+<column alignment="left" valignment="top">
+<column alignment="left" valignment="top">
+<column alignment="left" valignment="top">
+<column alignment="left" valignment="top">
+<column alignment="left" valignment="top">
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+accents
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+booktabs
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+feyn
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+listings
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+natbib
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+rotfloat
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+tfrupee
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+wasysym
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+amsbsy
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+calc
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+fixltx2e
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+longtable
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+nomencl
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+rsphrase
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+tipa
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+wrapfig
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+amscd
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+CJK
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+float
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+lyxskak
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+pdfcolmk
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+setspace
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+tipx
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+xargs
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+amsmath
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+color
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+framed
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+makeidx
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+pdfpages
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+shapepar
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+tone
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+xcolor
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+amssymb
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+covington
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+graphicx
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+marvosym
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+pifont
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+slashed
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+txfonts
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+xy
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+amstext
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+csquotes
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+hhline
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+mathdesign
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+pmboxdraw
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+soul
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+ulem
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+yhmath
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+amsthm
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+dvipost
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+hyperref
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+mathdots
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+polyglossia
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+splitidx
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+undertilde
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+array
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+endnotes
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+ifsym
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+mathrsfs
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+prettyref
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+subfig
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+units
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+ascii
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+enumitem
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+ifthen
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+mhchem
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+pxfonts
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+subscript
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+url
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+bbding
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+esint
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+jurabib
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="left" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+multicol
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+refstyle
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+textcomp
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+varioref
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+bm
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+fancybox
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+latexsym
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+multirow
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+rotating
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+textgreek
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+verbatim
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+</row>
+</lyxtabular>
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Chapter
+Names of available colors to be used in layouts
+\begin_inset CommandInset label
+LatexCommand label
+name "chap:Names-of-colors"
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+The colors listed here are the standard colors and the those that you can
+ adjust in the LyX preferences.
+\end_layout
+
+\begin_layout Description
+none
+\family roman
+\series medium
+\shape up
+\size normal
+\emph off
+\bar no
+\strikeout off
+\uuline off
+\uwave off
+\noun off
+\color none
+ No particular color -- clear or default
+\end_layout
+
+\begin_layout Description
+black
+\end_layout
+
+\begin_layout Description
+white
+\end_layout
+
+\begin_layout Description
+red
+\end_layout
+
+\begin_layout Description
+green
+\end_layout
+
+\begin_layout Description
+blue
+\end_layout
+
+\begin_layout Description
+cyan
+\end_layout
+
+\begin_layout Description
+magenta
+\end_layout
+
+\begin_layout Description
+yellow
+\end_layout
+
+\begin_layout Description
+added_space Added space marker color
+\end_layout
+
+\begin_layout Description
+addedtext Added text color
+\end_layout
+
+\begin_layout Description
+appendix Appendix marker color
+\end_layout
+
+\begin_layout Description
+background Background color
+\end_layout
+
+\begin_layout Description
+bottomarea Bottom area color
+\end_layout
+
+\begin_layout Description
+branchlabel Label color for branches
+\end_layout
+
+\begin_layout Description
+buttonbg Color used for bottom background
+\end_layout
+
+\begin_layout Description
+buttonhoverbg Color used for button background under focus
+\end_layout
+
+\begin_layout Description
+buttonframe Color for inset button frames
+\end_layout
+
+\begin_layout Description
+changebar Changebar color
+\end_layout
+
+\begin_layout Description
+changedtextauthor1 Changed text color author 1
+\end_layout
+
+\begin_layout Description
+changedtextauthor2 Changed text color author 2
+\end_layout
+
+\begin_layout Description
+changedtextauthor3 Changed text color author 3
+\end_layout
+
+\begin_layout Description
+changedtextauthor4 Changed text color author 4
+\end_layout
+
+\begin_layout Description
+changedtextauthor5 Changed text color author 5
+\end_layout
+
+\begin_layout Description
+collapsable_inset_frame Collapsable insets framecolor
+\end_layout
+
+\begin_layout Description
+collapsable_inset_text Collapsable insets text color
+\end_layout
+
+\begin_layout Description
+command Text color for command insets
+\end_layout
+
+\begin_layout Description
+commandbg Background color for command insets
+\end_layout
+
+\begin_layout Description
+commandframe Frame color for command insets
+\end_layout
+
+\begin_layout Description
+comment color for comments
+\end_layout
+
+\begin_layout Description
+commentbg Background color of comments
+\end_layout
+
+\begin_layout Description
+cursor Cursor color
+\end_layout
+
+\begin_layout Description
+deletedtext Deleted text color
+\end_layout
+
+\begin_layout Description
+deletedtextmodifier Deleted text modifying color
+\end_layout
+
+\begin_layout Description
+depthbar Color for the depth bars in the margin
+\end_layout
+
+\begin_layout Description
+eolmarker End of line marker color
+\end_layout
+
+\begin_layout Description
+error Color of the LaTeX error box
+\end_layout
+
+\begin_layout Description
+footlabel Label color for footnotes
+\end_layout
+
+\begin_layout Description
+graphicsbg Graphics inset background color
+\end_layout
+
+\begin_layout Description
+greyedout Label color for greyedout insets
+\end_layout
+
+\begin_layout Description
+greyedoutbg Background color of greyedout inset
+\end_layout
+
+\begin_layout Description
+greyedouttext Color for greyedout inset text
+\end_layout
+
+\begin_layout Description
+indexlabel Label color for index insets
+\end_layout
+
+\begin_layout Description
+ignore The color is ignored
+\end_layout
+
+\begin_layout Description
+inherit The color is inherited
+\end_layout
+
+\begin_layout Description
+inlinecompletion Inline completion color
+\end_layout
+
+\begin_layout Description
+insetbg Inset marker background color
+\end_layout
+
+\begin_layout Description
+insetframe Inset marker frame color
+\end_layout
+
+\begin_layout Description
+language Color for marking foreign language words
+\end_layout
+
+\begin_layout Description
+latex Text color in LaTeX mode
+\end_layout
+
+\begin_layout Description
+listingsbg Background color of listings inset
+\end_layout
+
+\begin_layout Description
+marginlabel Label color for margin notes
+\end_layout
+
+\begin_layout Description
+math Math inset text color
+\end_layout
+
+\begin_layout Description
+mathbg Math inset background color
+\end_layout
+
+\begin_layout Description
+mathcorners Math inset frame color not under focus
+\end_layout
+
+\begin_layout Description
+mathframe Math inset frame color under focus
+\end_layout
+
+\begin_layout Description
+mathline Math line color
+\end_layout
+
+\begin_layout Description
+mathmacrobg Macro math inset background color
+\end_layout
+
+\begin_layout Description
+mathmacroblend Macro math blended color
+\end_layout
+
+\begin_layout Description
+mathmacroframe Macro math frame color
+\end_layout
+
+\begin_layout Description
+mathmacrohoverbg Macro math inset background color hovered
+\end_layout
+
+\begin_layout Description
+mathmacrolabel Macro math label color
+\end_layout
+
+\begin_layout Description
+mathmacronewarg Macro template color for new parameters
+\end_layout
+
+\begin_layout Description
+mathmacrooldarg Macro template color for old parameters
+\end_layout
+
+\begin_layout Description
+newpage New page color
+\end_layout
+
+\begin_layout Description
+nonunique_inlinecompletion Inline completion color for the non-unique part
+\end_layout
+
+\begin_layout Description
+notebg Background color of notes
+\end_layout
+
+\begin_layout Description
+notelabel Label color for notes
+\end_layout
+
+\begin_layout Description
+pagebreak Page break/line break color
+\end_layout
+
+\begin_layout Description
+paragraphmarker Color used for the pilcrow sign to mark the end of a paragraph
+\end_layout
+
+\begin_layout Description
+phantomtext Text color for phantom insets
+\end_layout
+
+\begin_layout Description
+preview The color used for previews
+\end_layout
+
+\begin_layout Description
+previewframe Preview frame color
+\end_layout
+
+\begin_layout Description
+regexpframe Color for regexp frame
+\end_layout
+
+\begin_layout Description
+selection Background color of selected text
+\end_layout
+
+\begin_layout Description
+selectiontext Foreground color of selected text
+\end_layout
+
+\begin_layout Description
+shadedbg Background color of shaded box
+\end_layout
+
+\begin_layout Description
+special Special chars text color
+\end_layout
+
+\begin_layout Description
+tabularline Table line color
+\end_layout
+
+\begin_layout Description
+tabularonoffline Table line color
+\end_layout
+
+\begin_layout Description
+urllabel Label color for URL insets
+\end_layout
+
+\begin_layout Description
+urltext Color for URL inset text