#LyX 2.4 created this file. For more info see https://www.lyx.org/
\lyxformat 620
\begin_document
\begin_header
\save_transient_properties true
\origin /systemlyxdir/doc/
\textclass scrbook
\begin_preamble
% DO NOT ALTER THIS PREAMBLE!!!
%
% This preamble is designed to ensure that this document prints
% out as advertised. If you mess with this preamble,
% parts of this document may not print out as expected.  If you
% have problems LaTeXing this file, please contact 
% the documentation team
% email: lyx-docs@lists.lyx.org

% the pages of the TOC is numbered roman
% and a pdf-bookmark for the TOC is added
\let\myTOC\tableofcontents
\renewcommand\tableofcontents{%
  \frontmatter
  \pdfbookmark[1]{\contentsname}{}
  \myTOC
  \mainmatter }

% increase link area for cross-references and autoname them,
\AtBeginDocument{\renewcommand{\ref}[1]{\mbox{\autoref{#1}}}}
\@ifundefined{extrasenglish}{\usepackage[english]{babel}}{}
\@ifpackageloaded{babel}{
 \addto\extrasenglish{%
  \renewcommand*{\equationautorefname}[1]{}%
  \renewcommand{\sectionautorefname}{sec.\negthinspace}%
  \renewcommand{\subsectionautorefname}{sec.\negthinspace}%
  \renewcommand{\subsubsectionautorefname}{sec.\negthinspace}%
 }
}{}
\end_preamble
\options bibliography=totoc,index=totoc,BCOR7.5mm,titlepage,captions=tableheading
\use_default_options false
\begin_modules
logicalmkup
\end_modules
\maintain_unincluded_children no
\language english
\language_package default
\inputencoding utf8
\fontencoding auto
\font_roman "lmodern" "default"
\font_sans "lmss" "default"
\font_typewriter "lmtt" "default"
\font_math "auto" "auto"
\font_default_family default
\use_non_tex_fonts false
\font_sc false
\font_roman_osf false
\font_sans_osf false
\font_typewriter_osf false
\font_sf_scale 100 100
\font_tt_scale 100 100
\use_microtype false
\use_dash_ligatures true
\graphics default
\default_output_format pdf2
\output_sync 0
\bibtex_command default
\index_command default
\paperfontsize 12
\spacing single
\use_hyperref true
\pdf_title "LyX Configuration Manual"
\pdf_author "LyX Team"
\pdf_subject "LyX-documentation Customization"
\pdf_keywords "LyX, documentation, customization"
\pdf_bookmarks true
\pdf_bookmarksnumbered true
\pdf_bookmarksopen true
\pdf_bookmarksopenlevel 1
\pdf_breaklinks false
\pdf_pdfborder false
\pdf_colorlinks true
\pdf_backref false
\pdf_pdfusetitle false
\pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue,pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false"
\papersize default
\use_geometry false
\use_package amsmath 1
\use_package amssymb 1
\use_package cancel 1
\use_package esint 1
\use_package mathdots 1
\use_package mathtools 1
\use_package mhchem 1
\use_package stackrel 1
\use_package stmaryrd 1
\use_package undertilde 1
\cite_engine basic
\cite_engine_type default
\biblio_style plain
\use_bibtopic false
\use_indices false
\paperorientation portrait
\suppress_date false
\justification true
\use_refstyle 0
\use_formatted_ref 0
\use_minted 0
\use_lineno 0
\notefontcolor #0000ff
\branch OutDated
\selected 0
\filename_suffix 0
\color #f5fae7 #0a0518
\end_branch
\index Index
\shortcut idx
\color #008000
\end_index
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\paragraph_indentation default
\is_math_indent 1
\math_indentation default
\math_numbering_side default
\quotes_style english
\dynamic_quotes 0
\papercolumns 1
\papersides 2
\paperpagestyle headings
\tablestyle default
\tracking_changes true
\output_changes false
\change_bars false
\postpone_fragile_content false
\html_math_output 0
\html_css_as_file 0
\html_be_strict true
\docbook_table_output 0
\docbook_mathml_prefix 1
\author -712698321 "Jürgen Spitzmüller"
\end_header

\begin_body

\begin_layout Title
Customizing \SpecialChar LyX
:
 Features for the Advanced User
\end_layout

\begin_layout Author
by the \SpecialChar LyX
 Team
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
If you have comments or error corrections,
 please send them to the \SpecialChar LyX
 Documentation mailing list,
 
\begin_inset CommandInset href
LatexCommand href
target "lyx-docs@lists.lyx.org"
type "mailto:"
literal "false"

\end_inset

.
 Include 
\begin_inset Quotes eld
\end_inset

[Customization]
\begin_inset Quotes erd
\end_inset

 in the subject header,
 and please cc the current maintainer of this file,
 Richard Kimberly Heck <rikiheck@lyx.org>.
\end_layout

\end_inset


\begin_inset Newline newline
\end_inset


\begin_inset Newline newline
\end_inset

Version 2.4.x
\end_layout

\begin_layout Standard
\begin_inset CommandInset toc
LatexCommand tableofcontents

\end_inset


\end_layout

\begin_layout Standard
\begin_inset Note Note
status collapsed

\begin_layout Plain Layout
Please use change tracking when modifying this document.
 This makes it easier for our translators to recognize things that have been changed,
 and it helps the maintainer keep up-to-date with what's been done.
\end_layout

\end_inset


\end_layout

\begin_layout Chapter
Introduction
\end_layout

\begin_layout Standard
This manual covers the customization features present in \SpecialChar LyX
.
 In it,
 we discuss issues like keyboard shortcuts,
 screen previewing options,
 printer options,
 sending commands to \SpecialChar LyX
 via the \SpecialChar LyX
 Server,
 internationalization,
 installing new \SpecialChar LaTeX
 classes and \SpecialChar LyX
 layouts,
 etc.
 We can't possibly hope to touch on everything you can change—
our developers add new features faster than we can document them—
but we will explain the most common customizations and hopefully point you in the right direction for some of the more obscure ones.
\end_layout

\begin_layout Standard
\begin_inset Branch OutDated
inverted 0
status collapsed

\begin_layout Standard
Information from previous versions of this document that now seems to be outdated is contained in the OutDated branch of this document.
 By default,
 this information will not appear in the \SpecialChar LaTeX
 output.
\end_layout

\end_inset


\end_layout

\begin_layout Chapter
\SpecialChar LyX
 configuration files
\end_layout

\begin_layout Standard
This chapter aims to help you to find your way through the \SpecialChar LyX
 configuration files.
 Before continuing to read this chapter,
 you should find out where your \SpecialChar LyX
 system and user directories are by using 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Help\SpecialChar menuseparator
About
\begin_inset space ~
\end_inset

LyX
\end_layout

\end_inset

.
 The system directory is the place where \SpecialChar LyX
 places its system-wide configuration files;
 the user directory is where you can place your modified versions.
 We will call the former 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXDir
\end_layout

\end_inset

 and the latter 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
UserDir
\end_layout

\end_inset

 in the remainder of this document.
 
\end_layout

\begin_layout Section
What's in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXDir
\end_layout

\end_inset

?
\end_layout

\begin_layout Standard
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXDir
\end_layout

\end_inset

 and its sub-directories contain a number of files that can be used to customize \SpecialChar LyX
's behavior.
 You can change many of these files from within \SpecialChar LyX
 itself through the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Tools\SpecialChar menuseparator
Preferences
\end_layout

\end_inset

 dialog.
 Most customization that you will want to do in \SpecialChar LyX
 is possible through this dialog.
 However,
 many other inner aspects of \SpecialChar LyX
 can be customized by modifying the files in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXDir
\end_layout

\end_inset

.
 These files fall in different categories,
 described in the following subsections.
\end_layout

\begin_layout Subsection
Automatically generated files
\end_layout

\begin_layout Standard
The files found in 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
UserDir
\end_layout

\end_inset

 are generated when you configure \SpecialChar LyX
.
 They contain various default values that are automatically detected during reconfiguration.
 In general,
 it is not a good idea to modify them,
 since they might be overwritten at any time.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxrc.defaults
\end_layout

\end_inset

 Contains defaults for various commands.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
packages.lst
\end_layout

\end_inset

 Contains the list of packages that have been recognized by \SpecialChar LyX
.
 It is currently unused by the \SpecialChar LyX
 program itself,
 but the information extracted,
 and more,
 is made available with 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Help\SpecialChar menuseparator
\SpecialChar LaTeX

\begin_inset space ~
\end_inset

Configuration
\end_layout

\end_inset

.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
textclass.lst
\end_layout

\end_inset

 The list of text classes that have been found in your 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
layout/
\end_layout

\end_inset

 directories,
 along with the associated \SpecialChar LaTeX
 document class and their description.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxmodules.lst
\end_layout

\end_inset

 The list of layout modules found in your 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
layout/
\end_layout

\end_inset

 directories
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status open

\begin_layout Plain Layout
*files.lst
\end_layout

\end_inset

 Lists of various sorts of \SpecialChar LaTeX
-related files found on your system
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status open

\begin_layout Plain Layout
doc/\SpecialChar LaTeX
Config.lyx
\end_layout

\end_inset

 is automatically generated during configuration from the file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
\SpecialChar LaTeX
Config.lyx.in
\end_layout

\end_inset

.
 It contains information on your \SpecialChar LaTeX
 configuration.
\end_layout

\begin_layout Subsection
Directories
\end_layout

\begin_layout Standard
The following directories in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXDir
\end_layout

\end_inset

 can be duplicated in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UserDir
\end_layout

\end_inset

.
 If a particular file exists in both places,
 the one in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UserDir
\end_layout

\end_inset

 will be used.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
bind/
\end_layout

\end_inset

 This directory contains files with the extension 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.bind
\end_layout

\end_inset

 that define the keybindings used in \SpecialChar LyX
.
 If there exists an internationalized version of the bind file in a subdirectory 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
bind/xx
\end_layout

\end_inset

 where 
\begin_inset Quotes eld
\end_inset

xx
\begin_inset Quotes erd
\end_inset

 is the ISO language code,
 that will be used first.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
citeengines/
\end_layout

\end_inset

 Contains files with the extension 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.citeengine
\end_layout

\end_inset

 which define the diverse citation possibilities (natbib,
 biblatex etc.).
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Cite-Engine-Files"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 for details.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
clipart/
\end_layout

\end_inset

 Contains graphics files that can be included in documents.
 
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
doc/
\end_layout

\end_inset

 Contains \SpecialChar LyX
 documentation files (including the one you are currently reading).
 The file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LaTexConfig.lyx
\end_layout

\end_inset

 deserves special attention,
 as noted above.
 The internationalized help docs are in subdirectories 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
doc/xx
\end_layout

\end_inset

 where 
\begin_inset Quotes eld
\end_inset

xx
\begin_inset Quotes erd
\end_inset

 is the ISO language code.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "cha:Internationalizing-LyX"
nolink "false"

\end_inset

 for details.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
examples/
\end_layout

\end_inset

 Contains example files that explain how to use some features.
 In the file browser,
 press the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Examples
\end_layout

\end_inset

 button to get there.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
images/
\end_layout

\end_inset

 Contains image files that are used by the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document
\end_layout

\end_inset

 dialog.
 In addition,
 it also contains the individual icons used in the toolbar and the banners that can be shown when \SpecialChar LyX
 is launched.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
kbd/
\end_layout

\end_inset

 Contains keyboard keymapping files.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:International-Keymap-Stuff"
nolink "false"

\end_inset

 for details.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
layouts/
\end_layout

\end_inset

 Contains the text class and module files described in 
\begin_inset CommandInset ref
LatexCommand ref
reference "cha:Installing-New-Document"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyx2lyx
\end_layout

\end_inset

 Contains the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyx2lyx
\end_layout

\end_inset

 Python scripts used to convert between \SpecialChar LyX
 versions.
 These can be run from the command line if you want to batch-convert files.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
scripts/
\end_layout

\end_inset

 Contains some files that demonstrate the capabilities of the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
External
\begin_inset space ~
\end_inset

Template
\end_layout

\end_inset

 feature.
 Also contains some scripts used by \SpecialChar LyX
 itself.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
templates/
\end_layout

\end_inset

 Contains the standard \SpecialChar LyX
 template files described in 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Creating-Templates"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ui/
\end_layout

\end_inset

 Contains files with the extension 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.ui
\end_layout

\end_inset

 that define the user interface to \SpecialChar LyX
.
 That is,
 the files define which items appear in which menus and the items appearing on the toolbar.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
xtemplates/
\end_layout

\end_inset

 Contains files with the extension 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.xtemplate
\end_layout

\end_inset

 which define the templates for the insertion of external material to a \SpecialChar LyX
 document;
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "chap:Including-External-Material"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Subsection
Files you don't want to modify
\end_layout

\begin_layout Standard
These files are used internally by \SpecialChar LyX
 and you generally do not need to modify them unless you are a developer.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CREDITS
\end_layout

\end_inset

 This file contains the list of \SpecialChar LyX
 developers.
 The contents are displayed with the menu entry 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Help\SpecialChar menuseparator
About
\begin_inset space ~
\end_inset

LyX
\end_layout

\end_inset

.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
chkconfig.ltx
\end_layout

\end_inset

 This is a \SpecialChar LaTeX
 script used during the configuration process.
 Do not run directly.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
configure.py
\end_layout

\end_inset

 This is a Python script that is used to re-configure \SpecialChar LyX
.
 It creates configuration files in the directory it was run from.
\end_layout

\begin_layout Subsection
Other files needing a line or two
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
encodings
\end_layout

\end_inset

 This contains tables describing how different character encodings can be mapped to Unicode
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
languages
\end_layout

\end_inset

 This file contains a list of all the languages currently supported by \SpecialChar LyX
.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
latexfonts
\end_layout

\end_inset

 Contains information about the supported fonts.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
layouttranslations
\end_layout

\end_inset

 This file contains translations for internationalized paragraph styles (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:I18n"
nolink "false"

\end_inset

).
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
unicodesymbols
\end_layout

\end_inset

 This file contains information about Unicode-encoded glyphs and the way they are supported by \SpecialChar LyX
 via \SpecialChar LaTeX
.
\end_layout

\begin_layout Section
Your local configuration directory
\end_layout

\begin_layout Standard
Even if you are using \SpecialChar LyX
 as an unprivileged user,
 you might want to change \SpecialChar LyX
 configuration for your own use.
 The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UserDir
\end_layout

\end_inset

 directory contains all your personal configuration files.
 This is the directory described as 
\begin_inset Quotes eld
\end_inset

user directory
\begin_inset Quotes erd
\end_inset

 in 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Help\SpecialChar menuseparator
About
\begin_inset space ~
\end_inset

LyX
\end_layout

\end_inset

.
 This directory is used as a mirror of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXDir
\end_layout

\end_inset

,
 which means that every file in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UserDir
\end_layout

\end_inset

 is a replacement for the corresponding file in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXDir
\end_layout

\end_inset

.
 Any configuration file described in the above sections can be placed either in the system-wide directory,
 in which case it will affect all users,
 or in your local directory for your own use.
\end_layout

\begin_layout Standard
To make things clearer,
 let's provide a few examples:
\end_layout

\begin_layout Itemize
The preferences set in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Tools\SpecialChar menuseparator
Preferences
\end_layout

\end_inset

 dialog are saved to a file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
preferences
\end_layout

\end_inset

 in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UserDir
\end_layout

\end_inset

.
\end_layout

\begin_layout Itemize
When you reconfigure using 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Tools\SpecialChar menuseparator
Reconfigure
\end_layout

\end_inset

,
 \SpecialChar LyX
 runs the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
configure.py
\end_layout

\end_inset

 script,
 and the resulting files are written in your local configuration directory.
 This means that any additional text class file that you might have added in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UserDir/layouts
\end_layout

\end_inset

 will be added to the list of classes in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings
\end_layout

\end_inset

 dialog.
\end_layout

\begin_layout Itemize
If you get some updated documentation from a \SpecialChar LyX
 ftp site and cannot install it because you do not have sysadmin rights on your system,
 you can just copy the files to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UserDir/doc/
\end_layout

\end_inset

 and the items in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Help
\end_layout

\end_inset

 menu will open them!
\end_layout

\begin_layout Section
Running \SpecialChar LyX
 with multiple configurations
\end_layout

\begin_layout Standard
The configuration freedom of the local configuration directory may not suffice if you want to have more than one configuration at your disposal.
 For example,
 you may want to use different key bindings or printer settings at different times.
 You can achieve this by having several such directories.
 You then specify which directory to use at run-time.
\end_layout

\begin_layout Standard
Invoking \SpecialChar LyX
 with the command line switch 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-userdir
\end_layout

\end_inset

 
\emph on
<some directory>
\emph default
 instructs the program to read the configuration from that directory,
 and not from the default directory.
 (You can determine the default directory by running \SpecialChar LyX
 without the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-userdir
\end_layout

\end_inset

 switch.) If the specified directory does not exist,
 \SpecialChar LyX
 offers to create it for you,
 just like it does for the default directory the first time you run the program.
 You can modify the configuration options in this additional user directory exactly as you would for the default directory.
 These directories are completely independent (but read on).
 Note that setting the environment variable 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LYX_USERDIR_24x
\end_layout

\end_inset

 to some value has exactly the same effect.
\end_layout

\begin_layout Standard
Having several configurations also requires more maintenance:
 if you want to add a new layout to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NewUserDir/layouts
\end_layout

\end_inset

 which you want available from all your configurations,
 you must add it to each directory separately.
 You can avoid this with the following trick:
 after \SpecialChar LyX
 creates the additional directory,
 most of the subdirectories (see above) are empty.
 If you want the new configuration to mirror an existing one,
 replace the empty subdirectory with a symbolic link to the matching subdirectory in the existing configuration.
 Take care with the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
doc/
\end_layout

\end_inset

 subdirectory,
 however,
 since it contains a file written by the configuration script (also accessible through 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Tools\SpecialChar menuseparator
Reconfigure
\end_layout

\end_inset

) which is configuration specific.
\end_layout

\begin_layout Chapter
The Preferences dialog
\end_layout

\begin_layout Standard
All options of the preferences dialog are described in the Appendix 
\emph on
The Preferences Dialog
\emph default
 in the 
\emph on
User's Guide
\emph default
.
 For some options you might find here more details.
\end_layout

\begin_layout Section
Formats
\begin_inset CommandInset label
LatexCommand label
name "sec:Formats"

\end_inset


\end_layout

\begin_layout Standard
The first step is to define your file formats if they are not already defined.
 To do so,
 open the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Tools\SpecialChar menuseparator
Preferences
\end_layout

\end_inset

 dialog.
 Under 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
File Handling\SpecialChar menuseparator
File formats
\end_layout

\end_inset

 press the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
New
\end_layout

\end_inset

 button to define your new format.
 The 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Format
\end_layout

\end_inset

 field contains the name used to identify the format in the GUI.
 The 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Short Name
\end_layout

\end_inset

 is used to identify the format internally.
 You will also need to enter a file extension.
 These are all required.
 The optional 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Shortcut
\end_layout

\end_inset

 field is used to provide a keyboard shortcut on the menus.
 (For example,
 pressing 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Ctrl+D
\end_layout

\end_inset

 will 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
View (Other Formats)\SpecialChar menuseparator
DVI
\end_layout

\end_inset

.) 
\end_layout

\begin_layout Standard
A Format can have a 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Viewer
\end_layout

\end_inset

 and an 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Editor
\end_layout

\end_inset

 associated with it.
 For example,
 you might want to use 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Ghostview
\end_layout

\end_inset

 to view PostScript files.
 You can enter the command needed to start the program in the corresponding fields.
 In defining this command,
 you can use the four variables listed in the next section.
 The viewer is launched when you view an image in \SpecialChar LyX
 or use the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
View
\end_layout

\end_inset

 menu.
 The editor is for example launched when you right-click on an image and choose 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Edit externally
\end_layout

\end_inset

 in the appearing context menu.
\end_layout

\begin_layout Standard
The 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
MIME
\end_layout

\end_inset

 type of a format is optional,
 but if it is specified,
 it must be unique across all formats.
 It is used to detect files of this format from the file contents.
 For some important file formats there is no MIME type officially registered with the 
\begin_inset CommandInset href
LatexCommand href
name "IANA"
target "http://www.iana.org/assignments/media-types/"
literal "false"

\end_inset

.
 Therefore \SpecialChar LyX
 uses the extended list of MIME types as specified by 
\begin_inset CommandInset href
LatexCommand href
name "freedesktop.org"
target "http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec"
literal "false"

\end_inset

.
\end_layout

\begin_layout Standard
The 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document format
\end_layout

\end_inset

 option tells \SpecialChar LyX
 that a format is suitable for document export.
 If this is set and if a suitable conversion route exists (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Converters"
nolink "false"

\end_inset

),
 the format will appear in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
File\SpecialChar menuseparator
Export
\end_layout

\end_inset

 menu.
 The format will also appear in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
View
\end_layout

\end_inset

 menu if a viewer is specified for the format.
 Pure image formats,
 such as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
png
\end_layout

\end_inset

,
 should not use this option.
 Formats that can both represent vector graphics and documents like 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
pdf
\end_layout

\end_inset

 should use it.
\end_layout

\begin_layout Standard
The option 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Vector graphics format
\end_layout

\end_inset

 tells \SpecialChar LyX
 that a format can contain vector graphics.
 This information is used to determine the target format of included graphics for 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
pdflatex
\end_layout

\end_inset

 export.
 Included graphics may need to be converted to either 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
pdf
\end_layout

\end_inset

,
 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
png
\end_layout

\end_inset

,
 or 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
jpg
\end_layout

\end_inset

,
 since 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
pdflatex
\end_layout

\end_inset

 cannot handle other image formats.
 If an included graphic is not already in 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
pdf
\end_layout

\end_inset

,
 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
png
\end_layout

\end_inset

,
 or 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
jpg
\end_layout

\end_inset

 format,
 it is converted to 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
pdf
\end_layout

\end_inset

 if the vector format option is set,
 and otherwise to 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
png
\end_layout

\end_inset

.
\end_layout

\begin_layout Section
Copiers
\end_layout

\begin_layout Standard
Since all conversions from one format to another take place in \SpecialChar LyX
's temporary directory,
 it is sometimes necessary to modify a file before copying it to the temporary directory in order that the conversion may be performed.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
For example,
 the file may refer to other files—
images,
 for example—
using relative file names,
 and these may become invalid when the file is copied to the temporary directory.
\end_layout

\end_inset

 This is done by a Copier:
 It copies a file to (or from) the temporary directory and may modify it in the process.
\end_layout

\begin_layout Standard
The definitions of the copiers may use eight variables:
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$s
\end_layout

\end_inset

 The \SpecialChar LyX
 system directory (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
/usr/share/lyx
\end_layout

\end_inset

).
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$i
\end_layout

\end_inset

 The input file
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$o
\end_layout

\end_inset

 The output file
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$b
\end_layout

\end_inset

 The base name (without filename extension) in the \SpecialChar LyX
 temporary directory
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$p
\end_layout

\end_inset

 The full directory path of the \SpecialChar LyX
 temporary directory
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$r
\end_layout

\end_inset

 The full pathname to the original \SpecialChar LyX
 file being processed
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$f
\end_layout

\end_inset

 The filename (without any directory path) of the \SpecialChar LyX
 file.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$l
\end_layout

\end_inset

 The `\SpecialChar LaTeX
 name'
\end_layout

\begin_layout Standard
The latter should be the filename as it would be used in a \SpecialChar LaTeX
's 
\series bold

\backslash
include
\series default
 command.
 It is relevant only when exporting files suitable for such inclusion.
\end_layout

\begin_layout Standard
Copiers can be used to do almost anything with output files.
 For example,
 suppose you want generated pdf files to be copied to a special directory,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
/home/you/pdf/
\end_layout

\end_inset

.
 Then you could write a shell script such as this one:
\end_layout

\begin_layout Standard
\begin_inset listings
inline false
status open

\begin_layout Plain Layout

#!/bin/bash
\end_layout

\begin_layout Plain Layout

FROMFILE=$1
\end_layout

\begin_layout Plain Layout

TOFILE=`basename $2`
\end_layout

\begin_layout Plain Layout

cp $FROMFILE /home/you/pdf/$TOFILE
\end_layout

\end_inset

Save it in your local \SpecialChar LyX
 directory—
say,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
/home/you/.lyx/scripts/pdfcopier.sh
\end_layout

\end_inset

—
and make it executable,
 if you need to do so on your platform.
 Then,
 in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Tools\SpecialChar menuseparator
Preferences
\end_layout

\end_inset

 dialog,
 select under 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
File Handling\SpecialChar menuseparator
File formats
\end_layout

\end_inset

 the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
PDF(pdflatex)
\end_layout

\end_inset

 format—
or one of the other pdf formats—
and enter 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
pdfcopier.sh $$i $$o
\end_layout

\end_inset

 into the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Copier
\end_layout

\end_inset

 field.
 
\end_layout

\begin_layout Standard
Copiers are used by \SpecialChar LyX
 in various of its own conversions.
 For example,
 if appropriate programs are found,
 \SpecialChar LyX
 will automatically install copiers for the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
HTML
\end_layout

\end_inset

 and 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
HTML
\begin_inset space ~
\end_inset

(MS Word)
\end_layout

\end_inset

 formats.
 When these formats are exported,
 the copier sees that not just the main HTML file but various associated files (style files,
 images,
 etc.) are also copied.
 All these files are written to a subdirectory of the directory in which the original \SpecialChar LyX
 file was found.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
This copier can be customized.
 The optional 
\begin_inset Quotes eld
\end_inset

-e
\begin_inset Quotes erd
\end_inset

 argument takes a comma-separated list of extensions to be copied;
 if it is omitted,
 all files will be copied.
 The 
\begin_inset Quotes eld
\end_inset

-t
\begin_inset Quotes erd
\end_inset

 argument determines the extension added to the generated directory.
 By default,
 it is 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
LyXconv
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

,
 so HTML generated from 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
/path/to/filename.lyx
\end_layout

\end_inset

 will end up in 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
/path/to/filename.html.LyXconv
\end_layout

\end_inset

.
 
\end_layout

\end_inset


\end_layout

\begin_layout Section
Converters
\begin_inset CommandInset label
LatexCommand label
name "sec:Converters"

\end_inset


\end_layout

\begin_layout Standard
You can define your own Converters to convert files between different formats.
 This is done in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Tools\SpecialChar menuseparator
Preferences\SpecialChar menuseparator
File Handling\SpecialChar menuseparator
Converters
\end_layout

\end_inset

 dialog.
\end_layout

\begin_layout Standard
To define a new converter,
 select the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
From
\begin_inset space ~
\end_inset

format
\end_layout

\end_inset

 and 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
To
\begin_inset space ~
\end_inset

format
\end_layout

\end_inset

 from the drop-down lists,
 enter the command needed for the conversion,
 and then press the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Add
\end_layout

\end_inset

 button.
 Several variables can be used in the definition of converters:
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$s
\end_layout

\end_inset

 The \SpecialChar LyX
 system directory
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$i
\end_layout

\end_inset

 The input file
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$o
\end_layout

\end_inset

 The output file
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$b
\end_layout

\end_inset

 The base filename of the input file (i.
\begin_inset space \thinspace{}
\end_inset

g.,
 without the extension)
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$p
\end_layout

\end_inset

 The path to the input file
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$r
\end_layout

\end_inset

 The path to the original input file (this is different from $$p when a chain of converters is called)
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$e
\end_layout

\end_inset

 The iconv name for the encoding of the document.
\end_layout

\begin_layout Standard
In the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Extra
\begin_inset space ~
\end_inset

Flag
\end_layout

\end_inset

 field you can enter the following flags,
 separated by commas:
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
latex=flavor
\end_layout

\end_inset

 This converter runs some form of \SpecialChar LaTeX
.
 This will make \SpecialChar LyX
's \SpecialChar LaTeX
 error logs available.
 The optional 
\begin_inset Flex Code
status open

\begin_layout Plain Layout
flavor
\end_layout

\end_inset

 value specifies the form of \SpecialChar LaTeX
 that is run (
\begin_inset Flex Code
status open

\begin_layout Plain Layout
latex,
 pdflatex,
 platex,
 xetex,
 luatex
\end_layout

\end_inset

).
 If no value is specified,
 
\begin_inset Flex Code
status open

\begin_layout Plain Layout
latex
\end_layout

\end_inset

 is used.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
needauth
\end_layout

\end_inset

 This converter is considered non-safe and needs authorization by the user.
 Depending on the settings in 
\family sans
Tools\SpecialChar menuseparator
Preferences\SpecialChar menuseparator
File Handling\SpecialChar menuseparator
Converters
\family default
,
 users will (a.) be asked whether they trust the current document temporarily,
 permanently,
 or not,
 (b.) be informed that conversion is not possible due to security concerns,
 or (c.) not be informed as they gave permanent consent.
 Set this flag for converters that might execute arbitrary programs.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
needaux=flavor
\end_layout

\end_inset

 Needs the \SpecialChar LaTeX
 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
.aux
\end_layout

\end_inset

 file for the conversion.
 The optional 
\begin_inset Flex Code
status open

\begin_layout Plain Layout
flavor
\end_layout

\end_inset

 value specifies the form of \SpecialChar LaTeX
 that is run in order to generate the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
.aux
\end_layout

\end_inset

 file (
\begin_inset Flex Code
status open

\begin_layout Plain Layout
latex,
 pdflatex,
 platex,
 xetex,
 luatex
\end_layout

\end_inset

).
 If no value is specified,
 
\begin_inset Flex Code
status open

\begin_layout Plain Layout
latex
\end_layout

\end_inset

 is used.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
needcopiesfrom=<format>
\end_layout

\end_inset

 Some formats (e.
\begin_inset space \thinspace{}
\end_inset

g.,
 DocBook) generate external files with specific names (for instance if math is rendered as graphic),
 but they are only generated in the working directory if the respective format is the target format.
 If you have such a format in your conversion chain and need those files in conversion,
 use this flag with the respective 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<format>
\end_layout

\end_inset

 (cf.
 the DocBook to ePub converter,
 which uses 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
needcopiesfrom=docbook5
\end_layout

\end_inset

).
 The files will then be made available in the temporary directory as soon as the intermediate format has been generated.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
nice
\end_layout

\end_inset

 Needs a 
\begin_inset Quotes eld
\end_inset

nice
\begin_inset Quotes erd
\end_inset

 file from the backend,
 which in practice means a \SpecialChar LaTeX
 file like the one we would export,
 without 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
input@path
\end_layout

\end_inset

.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
xml
\end_layout

\end_inset

 Output is XML.
\end_layout

\begin_layout Standard
The following three flags are not really flags at all because they take an argument in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
key
\begin_inset space ~
\end_inset

=
\begin_inset space ~
\end_inset

value
\end_layout

\end_inset

 format:
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
hyperref-driver
\end_layout

\end_inset

 The name of the driver that needs to be loaded with the 
\family sans
hyperref
\family default
 package for this converter.
 The loading of the correct driver is necessary to get some PDF-specific features.
 See the 
\family sans
hyperref
\family default
 manual for details.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
parselog
\end_layout

\end_inset

 If set,
 the converter's standard error will be redirected to a file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
infile.out
\end_layout

\end_inset

,
 and the script given as argument will be run as:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
script < infile.out > infile.log
\end_layout

\end_inset

.
 The argument may contain 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$s
\end_layout

\end_inset

.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
resultdir
\end_layout

\end_inset

 The name of the directory in which the converter will dump the generated files.
 \SpecialChar LyX
 will not create this directory,
 and it does not copy anything into it,
 though it will copy this directory to the destination.
 The argument may contain 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$b
\end_layout

\end_inset

,
 which will be replaced by the base name of the input and output files,
 respectively,
 when the directory is copied.
\begin_inset Newline newline
\end_inset

Note that resultdir and usetempdir make no sense together.
 The latter will be ignored if the former is given.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
resultfile
\end_layout

\end_inset

 Determines the output file name and may,
 contain 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$b
\end_layout

\end_inset

.
 Sensible only with resultdir and optional even then;
 if not given,
 it defaults to `index'.
\end_layout

\begin_layout Standard
A suitable hyperref-driver is set for some converters that are installed with \SpecialChar LyX
.
 The last three flags,
 however,
 are presently not used in any of the pre-installed converters.
\end_layout

\begin_layout Standard
You do not have to define converters for all formats between which you want to convert.
 For example,
 you will note that there is no `\SpecialChar LyX
 to PostScript' converter,
 but \SpecialChar LyX
 will export PostScript.
 It does so by first creating a \SpecialChar LaTeX
 file (no converter needs to be defined for this) which is then converted to DVI using the `\SpecialChar LaTeX
 to DVI' converter,
 and finally converting the resulting DVI file to PostScript.
 \SpecialChar LyX
 finds such `chains' of converters automatically,
 and it will always choose the shortest possible chain.
 You can,
 though,
 still define multiple conversion methods between file formats.
 For example,
 the standard \SpecialChar LyX
 configuration provides five ways to convert \SpecialChar LaTeX
 to PDF:
\end_layout

\begin_layout Enumerate
Directly,
 using 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
pdflatex
\end_layout

\end_inset


\end_layout

\begin_layout Enumerate
via (DVI and) PostScript,
 using 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
ps2pdf
\end_layout

\end_inset


\end_layout

\begin_layout Enumerate
via DVI,
 using 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
dvipdfm
\end_layout

\end_inset


\end_layout

\begin_layout Enumerate
directly using 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Xe\SpecialChar TeX

\end_layout

\end_inset


\end_layout

\begin_layout Enumerate
directly using 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Lua\SpecialChar TeX

\end_layout

\end_inset


\end_layout

\begin_layout Standard
To define such alternate chains,
 you must define multiple target `file formats',
 as described in 
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Formats"
nolink "false"

\end_inset

.
 For example,
 in the standard configuration,
 the formats named 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
pdf
\end_layout

\end_inset

 (for 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
ps2pdf
\end_layout

\end_inset

),
 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
pdf2
\end_layout

\end_inset

 (for 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
pdflatex
\end_layout

\end_inset

),
 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
pdf3
\end_layout

\end_inset

 (for 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
dvipdfm
\end_layout

\end_inset

),
 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
pdf4
\end_layout

\end_inset

 (for 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Xe\SpecialChar TeX

\end_layout

\end_inset

),
 and 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
pdf5
\end_layout

\end_inset

 (for 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Lua\SpecialChar TeX

\end_layout

\end_inset

) are defined,
 all of which share the extension 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
.pdf
\end_layout

\end_inset

,
 and which correspond to the conversion methods just mentioned.
\end_layout

\begin_layout Chapter
Internationalizing \SpecialChar LyX

\begin_inset CommandInset label
LatexCommand label
name "cha:Internationalizing-LyX"

\end_inset


\end_layout

\begin_layout Standard
\SpecialChar LyX
 supports using a translated interface.
 Last time we checked,
 \SpecialChar LyX
 provided text in thirty languages.
 The language of choice is called your 
\emph on
locale
\emph default
.
 (For further reading on locale settings,
 see also the documentation for locale that comes with your operating system.
 For Linux,
 the manual page for 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
locale(5)
\end_layout

\end_inset

 could be a good place to start).
\end_layout

\begin_layout Standard
Notice that these translations will work,
 but do contain a few flaws.
 In particular,
 all dialogs have been designed with the English text in mind,
 which means that some of the translated text will be too large to fit within the space allocated.
 This is only a display problem and will not cause any harm.
 Also,
 you will find that some of the translations do not define shortcut keys for everything.
 Sometimes,
 there are simply not enough free letters to do it.
 Other times,
 the translator just hasn't got around to doing it yet.
 Our localization team,
 which you may wish to join,
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
If you are a fluent speaker of a language other than English,
 joining these teams is a great way to give back to the \SpecialChar LyX
 community!
\end_layout

\end_inset

 will of course try to fix these shortcomings in future versions of \SpecialChar LyX
.
\end_layout

\begin_layout Section
Translating \SpecialChar LyX

\end_layout

\begin_layout Subsection
Translating the graphical user interface (text messages).
\end_layout

\begin_layout Standard
\SpecialChar LyX
 uses the GNU 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
gettext
\end_layout

\end_inset

 library to handle the internationalization of the interface.
 To have \SpecialChar LyX
 speak your favorite language in all menus and dialogs,
 you need a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
po
\end_layout

\end_inset

-file for that language.
 When this is available,
 you'll have to generate a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
mo
\end_layout

\end_inset

-file from it and install the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
mo
\end_layout

\end_inset

-file.
 The process of doing all of this is explained in the documentation for GNU 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
gettext
\end_layout

\end_inset

.
 It is possible to do this just for yourself,
 but if you're going to do it,
 you might as well share the results of your labors with the rest of the \SpecialChar LyX
 community.
 Send a message to the \SpecialChar LyX
 developers' list for more information about how to proceed.
\end_layout

\begin_layout Standard
In short,
 this is what you should do (xx denotes the language code):
\end_layout

\begin_layout Itemize
Check out the \SpecialChar LyX
 source code.
 (See the 
\begin_inset CommandInset href
LatexCommand href
name "information on the web"
target "https://www.lyx.org/HowToUseGIT"
literal "false"

\end_inset

.)
\end_layout

\begin_layout Itemize
Copy the file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyx.pot
\end_layout

\end_inset

 to the folder of the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
**.po
\end_layout

\end_inset

 files.
 Then rename it to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
xx.po
\end_layout

\end_inset

.
 (If 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyx.pot
\end_layout

\end_inset

 doesn't exist anywhere,
 it can be remade with the console command 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
make lyx.pot
\end_layout

\end_inset

 in that directory,
 or you can use an existing po-file for some other language as a template).
\end_layout

\begin_layout Itemize
Edit 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
xx.po
\end_layout

\end_inset

.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
This is just a text file,
 so it can be edited in any text editor.
 But there are also specialized programs that support such editing,
 such as 
\family typewriter
Poedit
\family default
 (for all platforms) or 
\family typewriter
KBabel
\family default
 (for KDE).
 
\family typewriter
Emacs
\family default
 contains a `mode' for editing 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
po
\end_layout

\end_inset

 files,
 as well,
 see 
\begin_inset Flex URL
status open

\begin_layout Plain Layout

https://www.gnu.org/software/gettext/manual/html_node/PO-Mode.html#PO-Mode
\end_layout

\end_inset

.
\end_layout

\end_inset

 For some menu- and widget-labels,
 there are also shortcut keys that should be translated.
 Those keys are marked after a `|',
 and should be translated according to the words and phrases of the language.
 You should also fill also out the information at the beginning of the new 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
po
\end_layout

\end_inset

-file with your email-address,
 etc.,
 so people know where to reach you with suggestions and entertaining flames.
\end_layout

\begin_layout Standard
If you are just doing this on your own,
 then:
\end_layout

\begin_layout Itemize
Generate 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
xx.mo
\end_layout

\end_inset

.
 This can be done with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
msgfmt -o xx.mo < xx.po
\end_layout

\end_inset

.
\end_layout

\begin_layout Itemize
Copy the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
mo
\end_layout

\end_inset

-file to your locale-tree,
 at the correct directory for application messages for the language
\series bold
 
\series default
xx,
 and under the name 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyx.mo
\end_layout

\end_inset

 (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
/usr/local/share/locale/xx/LC_MESSAGES/lyx.mo
\end_layout

\end_inset


\series bold
.
\end_layout

\begin_layout Standard
As said,
 however,
 it would be best if the new 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
po
\end_layout

\end_inset

 file could be added to the \SpecialChar LyX
 distribution,
 so others can use it.
 Adding it involves making additional changes to \SpecialChar LyX
.
 So send an email to the developers' mailing list if you're interested in doing that.
\end_layout

\begin_layout Subsubsection
Ambiguous messages
\end_layout

\begin_layout Standard
Sometimes it turns out that one English message needs to be translated into different messages in the target language.
 One example is the message 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
To
\end_layout

\end_inset

 which has the German translation 
\lang german
Nach
\lang english
 or 
\lang german
Bis
\lang english
,
 depending upon exactly what the English 
\begin_inset Quotes eld
\end_inset

to
\begin_inset Quotes erd
\end_inset

 means.
 GNU 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
gettext
\end_layout

\end_inset

 does not handle such ambiguous translations.
 Therefore you have to add some context information to the message:
 Instead of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
To
\end_layout

\end_inset

 it becomes 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
To[[as in 'From format x to format y']]
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
To[[as in 'From page x to page y']].
\end_layout

\end_inset

 Now the two occurrences of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
To
\end_layout

\end_inset

 are different for 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
gettext
\end_layout

\end_inset

 and can be translated correctly to 
\lang german
Nach
\lang english
 and 
\lang german
Bis
\lang english
,
 respectively.
\end_layout

\begin_layout Standard
Of course the context information needs to be stripped off the original message when no translation is used.
 Therefore you have to put it in double square brackets at the end of the message (see the example above).
 The translation mechanism of \SpecialChar LyX
 ensures that everything in double square brackets at the end of messages is removed before displaying the message.
\end_layout

\begin_layout Subsection
Translating the documentation.
\end_layout

\begin_layout Standard
The online documentation (in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Help
\end_layout

\end_inset

-menu) can (and should!) be translated.
 If there are translated versions of the documentation available
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
As of March 2008,
 at least some of the documents have been translated into fourteen languages,
 with the Tutorial available in a few more.
\end_layout

\end_inset

 and the locale is set accordingly,
 these will be used automagically by \SpecialChar LyX
.
 \SpecialChar LyX
 looks for translated versions as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXDir/doc/xx/DocName.lyx
\end_layout

\end_inset

,
 where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
xx
\end_layout

\end_inset

 is the code for the language currently in use.
 If there are no translated documents,
 the default English versions will be displayed.
 Note that the translated versions must have the same filenames (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocName
\end_layout

\end_inset

 above) as the original.
 If you feel up to translating the documentation (an excellent way to proof-read the original documentation by the way!),
 there are a few things you should do right away:
\end_layout

\begin_layout Itemize
Check out the documentation translation web page at 
\begin_inset CommandInset href
LatexCommand href
name "https://www.lyx.org/Translation"
target "https://www.lyx.org/Translation"
literal "false"

\end_inset

.
 That way,
 you can find out which (if any) documents have already been translated into your language.
 You can also find out who (if anyone) is organizing the effort to translate the documentation into your language.
 If no one is organizing the effort,
 please let us know that you're interested.
\end_layout

\begin_layout Standard
Once you get to actually translating,
 here's a few hints for you that may save you trouble:
\end_layout

\begin_layout Itemize
Join the documentation team!
 There is information on how to do that in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Intro.lyx
\end_layout

\end_inset

 (
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Help\SpecialChar menuseparator
Introduction
\end_layout

\end_inset

),
 which by the way is the first document you should translate.
\end_layout

\begin_layout Itemize
Learn the typographic conventions for the language you are translating to.
 Typography is an ancient art and over the centuries,
 a great variety of conventions have developed throughout different parts of the world.
 Also study the professional terminology amongst typographers in your country.
 Inventing your own terminology will only confuse the users.
 
\emph on
(Warning!
 Typography is addictive!)
\end_layout

\begin_layout Itemize
Make a copy of the document.
 This will be your working copy.
 You can use this as your personal translated help-file by placing it in your 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UserDir/doc/xx/
\end_layout

\end_inset

 directory.
\begin_inset Note Greyedout
status open

\begin_layout Plain Layout

\series bold
Note:

\series default
 For a complex document with external material (images,
 etc.),
 if you make a copy e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

in a temp dir,
 beware that the links to external material may be broken when the document is moved to a different place.
 The best way is to retrieve the \SpecialChar LyX
 tree from git (see 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

https://www.lyx.org/HowToUseGIT
\end_layout

\end_inset

) and to edit the doc file in place.
\end_layout

\end_inset


\end_layout

\begin_layout Itemize
Sometimes the original document (from the \SpecialChar LyX
 team) will be updated.
 Use the source viewer at 
\begin_inset CommandInset href
LatexCommand href
name "https://www.lyx.org/trac/timeline"
target "https://www.lyx.org/trac/timeline"
literal "false"

\end_inset

 to see what has been changed.
 That way you can easily see which parts of the translated document need to be updated.
\end_layout

\begin_layout Standard
If you ever find an error in the original document,
 fix it and notify the rest of the documentation team of the changes!
 (You didn't forget to join the documentation team,
 did you?)
\end_layout

\begin_layout Standard
\begin_inset Branch OutDated
inverted 0
status collapsed

\begin_layout Section
International Keyboard Support
\end_layout

\begin_layout Standard

\emph on
[Editor's Note:
 The following section is by
\emph default
 
\shape smallcaps
\emph on
Ivan Schreter
\shape default
.
 It needs to be fixed to conform to the new Documentation Style sheet and to make use of the new v1.0 features.
 The whole thing also needs to be merged with the section following it.-jw It may also be badly out of date.-rh (2008)]
\end_layout

\begin_layout Subsection
Defining Own Keymaps:
 Keymap File Format
\end_layout

\begin_layout Standard
Let's look at a keyboard definition file a little closer.
 It is a plain text file defining
\end_layout

\begin_layout Itemize
key-to-key or key-to-string translations
\end_layout

\begin_layout Itemize
dead keys
\end_layout

\begin_layout Itemize
dead keys exceptions
\end_layout

\begin_layout Standard
To define key-to-key or key-to-string translation,
 use this command:
\end_layout

\begin_layout Quotation
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
kmap
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
key
\end_layout

\end_inset

 outstring 
\end_layout

\begin_layout Standard
where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
key
\end_layout

\end_inset

 is the key to be translated and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
outstring
\end_layout

\end_inset

 is the string to be inserted into the document.
 To define dead keys,
 use:
\end_layout

\begin_layout Quotation
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
kmod
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
key
\end_layout

\end_inset

 deadkey
\end_layout

\begin_layout Standard
where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
key
\end_layout

\end_inset

 is a keyboard key and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
deadkey
\end_layout

\end_inset

 is dead key name.
 The following dead keys are supported (shortcut name is in parentheses):
\end_layout

\begin_layout Quotation

\emph on
Name
\begin_inset space \hfill{}
\end_inset

Example
\end_layout

\begin_layout Quotation
acute (acu)
\begin_inset space \hfill{}
\end_inset

áéíóú
\end_layout

\begin_layout Quotation
grave (gra)
\begin_inset space \hfill{}
\end_inset

àèìòù
\end_layout

\begin_layout Quotation
macron (mac)
\begin_inset space \hfill{}
\end_inset

 ō
\end_layout

\begin_layout Quotation
tilde (til)
\begin_inset space \hfill{}
\end_inset

ñÑ
\end_layout

\begin_layout Quotation
underbar (underb)
\begin_inset space \hfill{}
\end_inset


\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
b o
\end_layout

\end_inset


\end_layout

\begin_layout Quotation
cedilla (ced)
\begin_inset space \hfill{}
\end_inset

çÇ
\end_layout

\begin_layout Quotation
underdot (underd)
\begin_inset space \hfill{}
\end_inset


\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
d o
\end_layout

\end_inset


\end_layout

\begin_layout Quotation
circumflex (circu)
\begin_inset space \hfill{}
\end_inset

âêîôû
\end_layout

\begin_layout Quotation
circle (circl)
\begin_inset space \hfill{}
\end_inset

ÅůŮ
\end_layout

\begin_layout Quotation
tie (tie)
\begin_inset space \hfill{}
\end_inset


\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
t o
\end_layout

\end_inset


\end_layout

\begin_layout Quotation
breve (bre)
\begin_inset space \hfill{}
\end_inset

ă
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
u o
\end_layout

\end_inset


\end_layout

\begin_layout Quotation
caron (car)
\begin_inset space \hfill{}
\end_inset

čšž
\end_layout

\begin_layout Quotation
hungarian umlaut (hug)
\begin_inset space \hfill{}
\end_inset

őű
\end_layout

\begin_layout Quotation
umlaut (uml)
\begin_inset space \hfill{}
\end_inset

äöü
\end_layout

\begin_layout Quotation
dot (dot)
\begin_inset space \hfill{}
\end_inset

ż
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
.s
\end_layout

\end_inset


\end_layout

\begin_layout Standard
Since in many international keyboards there are exceptions to what some dead keys should do,
 you can define them using
\end_layout

\begin_layout Quotation
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
kxmod
\end_layout

\end_inset

 deadkey key outstring
\end_layout

\begin_layout Standard
For example,
 on Slovak keyboard,
 if you enter caron-o,
 it generates circumflex-o,
 so you put in
\end_layout

\begin_layout Quotation
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
kxmod
\end_layout

\end_inset

 caron o "
\backslash
^o"
\end_layout

\begin_layout Standard
to make it work correctly.
 Also,
 you have to define as exceptions dead keys over i and j,
 to remove the dot from them before inserting an accent mark.
 I will change this when the time comes,
 but so far I haven't had time.
\end_layout

\begin_layout Standard
Oh,
 and about characters:
 backslash is escaped,
 so to enter it,
 you'll need double backslash.
 Also,
 quotes and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
#
\end_layout

\end_inset

 have different meaning.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
#
\end_layout

\end_inset

 marks comments,
 quotes start and end \SpecialChar LaTeX
-style commands.
 To enter quote,
 you'll need to use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
"
\end_layout

\end_inset

,
 to enter 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
#
\end_layout

\end_inset

,
 use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
#
\end_layout

\end_inset

.
\end_layout

\begin_layout Standard
If you make a keyboard description file that works for your language,
 please mail it to me,
 so I can include it in the next keymap distribution.
\end_layout

\begin_layout Standard
More keywords will be supported in keymap configuration file in future,
 like
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
kinclude filename
\end_layout

\end_inset


\emph on

\begin_inset space \hfill{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
include
\end_layout

\end_inset

 another file
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
kprog program
\end_layout

\end_inset


\emph on

\begin_inset space \hfill{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
define
\end_layout

\end_inset

 an external keymap translation program 
\end_layout

\begin_layout Standard
Also,
 it should look into 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxrc
\end_layout

\end_inset

 file for defaults,
 too (for example,
 a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
kinclude
\end_layout

\end_inset

 option to include default keyboard).
\end_layout

\end_inset


\end_layout

\begin_layout Section
International Keymap Stuff
\begin_inset CommandInset label
LatexCommand label
name "sec:International-Keymap-Stuff"

\end_inset


\end_layout

\begin_layout Standard
\begin_inset Note Note
status open

\begin_layout Plain Layout
In doing the revisions on this document in March 2008,
 I did not look over this stuff,
 as I do not understand it.
 It would be good if someone else could do so.
 (RH)
\end_layout

\end_inset


\end_layout

\begin_layout Standard
The next two sections describe the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
.kmap
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
.cdef
\end_layout

\end_inset

 file syntax in detail.
 These sections should help you design your own key map if the ones provided do not meet your needs.
\end_layout

\begin_layout Subsection
The .kmap File
\end_layout

\begin_layout Standard
A 
\shape up
.
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
kmap
\end_layout

\end_inset

 file maps keystrokes to characters or strings.
 As the name suggests,
 it sets a keyboard mapping.
 The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.kmap
\end_layout

\end_inset


\shape default
 file keywords 
\shape up

\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
kmap
\end_layout

\end_inset


\shape default
,

\shape up
 
\shape default

\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
kmod
\end_layout

\end_inset

,

\shape up
 
\shape default

\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
kxmod
\end_layout

\end_inset

,
 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
kcomb
\end_layout

\end_inset

 are described in this section.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
kmap
\end_layout

\end_inset

 Map a character to a string
\end_layout

\begin_layout LyX-Code

\backslash
kmap 
\family roman
\emph on
char
\family default
\emph default
 
\family roman
\emph on
string
\end_layout

\begin_layout Standard
This will ma
\family roman
p
\family default
 
\family roman
\emph on
char
\family default
\emph default
 
\family roman
to
\family default
 
\family roman
\emph on
string
\emph default
.
 Note that in
\family default
 
\family roman
\emph on
string
\emph default
,

\family default
 
\family roman
\shape up
the double-quote (")
\family default
\shape default
 
\family roman
and
\family default
 
\family roman
\shape up
the backslash (
\backslash
)
\family default
\shape default
 
\family roman
must be escaped with a preceding backslash (
\shape up

\backslash

\shape default
)
\family default
.
\end_layout

\begin_layout Standard
An example of a 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout

\shape up
kmap
\end_layout

\end_inset

 statement to cause the symbol 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout

\shape up
/
\end_layout

\end_inset

 to be output for the keystroke 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout

\shape up
&
\end_layout

\end_inset

 is:
\end_layout

\begin_layout LyX-Code

\backslash
kmap & /
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
kmod
\end_layout

\end_inset

 Specify an accent character
\end_layout

\begin_layout LyX-Code

\backslash
kmod 
\family roman
\emph on
char accent allowed
\end_layout

\begin_layout Standard
This will make the cha
\family roman
racter
\family default
 
\family roman
\emph on
char
\family default
\emph default
 
\family roman
\shape up
\emph on
be an accent
\family default
\shape default
\emph default
 
\family roman
\shape up
on the
\family default
\shape default
 
\family roman
\shape up
\emph on
allowed
\family default
\shape default
\emph default
 
\family roman
\shape up
cha
\family default
racter(s).
 This is the dead key
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
The term 
\family roman
\emph on
dead key
\family default
\emph default
 refers to a key that does not produce a character by itself,
 but when followed with another key,
 produces the desired accent character.
 For example,
 a German characte
\family roman
r with an umlaut like
\family default
 
\family roman
\emph on
ä
\family default
\emph default
 
\family roman
can be produced in this manner.
\end_layout

\end_inset

 mechanism.
 
\end_layout

\begin_layout Standard
If you 
\family roman
hit
\family default
 
\family roman
\emph on
char
\family default
\emph default
 
\family roman
and then another key not in
\family default
 
\family roman
\emph on
allowed
\emph default
,
 you will get a
\family default
 
\family roman
\emph on
char
\family default
\emph default
 
\family roman
followed by the other,
 not allowed key,
 as output.

\family default
 Note that a 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout

\shape up
Backspace
\end_layout

\end_inset

 cancels a dead key,
 so if 
\family roman
you hit
\family default
 
\family roman
\emph on
char
\family default
\emph default
 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout

\shape up
\emph on
Backspace
\end_layout

\end_inset

,
 the cursor will not go one position backwards but will instead cancel the effect t
\family roman
hat
\family default
 
\family roman
\shape up
\emph on
char
\family default
\shape default
\emph default
 
\family roman
\shape up
might have had on the next keystroke.
 
\end_layout

\begin_layout Standard
The following example specifies that the character ' is to be an acute accent,
 allowed on the characters a,
 e,
 i,
 o,
 u,
 A,
 E,
 I,
 O,
 and U:
\end_layout

\begin_layout LyX-Code

\backslash
kmod ' acute aeiouAEIOU
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
kxmod
\end_layout

\end_inset

 Specify an exception to the accent character
\end_layout

\begin_layout LyX-Code

\backslash
kxmod  
\family roman
\emph on
accent char result
\end_layout

\begin_layout Standard
This defines an exce
\family roman
ption for
\family default
 
\family roman
\emph on
accent
\family default
\emph default
 
\family roman
on
\family default
 
\family roman
\emph on
char
\emph default
.
 T
\shape up
he
\family default
\shape default
 
\family roman
\shape up
\emph on
accent
\family default
\shape default
\emph default
 
\family roman
\shape up
must
\family default
\shape default
 
\shape up
have been assigned a keystroke with a previous
\shape default
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up

\backslash
kmo
\shape default
d
\end_layout

\end_inset

 declar
\family roman
ation and
\family default
 
\family roman
\emph on
char
\family default
\emph default
 
\family roman
must not belong in the
\family default
 
\family roman
\emph on
allowed
\family default
\emph default
 
\family roman
set of
\family default
 
\family roman
\emph on
accent
\emph default
.
 When
\family default
 
\family roman
\shape up
you enter the
\family default
\shape default
 
\family roman
\shape up
\emph on
accent char
\family default
\shape default
\emph default
 
\family roman
\shape up
sequence,

\family default
\shape default
 
\family roman
\shape up
\emph on
result
\emph default
 is produced.
 If such a declaration does not exist in
\family default
\shape default
 
\shape up
the
\shape default
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
.kmap
\end_layout

\end_inset

 file and yo
\family roman
u enter
\family default
 
\family roman
\emph on
accent char
\emph default
,
 you get
\family default
 
\family roman
\emph on
accent_key char
\emph default
 where
\family default
 
\family roman
\emph on
accent_key
\emph default
 is the first arg
\family default
ument of the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up

\backslash
kmod
\end_layout

\end_inset

 declaration.
 
\end_layout

\begin_layout Standard
The following command produces causes äi to be produced when you enter acute-i ('i):
\end_layout

\begin_layout LyX-Code

\backslash
kxmod acute i "
\backslash

\backslash
'{
\backslash

\backslash
i}"
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
kcomb
\end_layout

\end_inset

 Combine two accent characters
\end_layout

\begin_layout LyX-Code

\backslash
kcomb 
\family roman
\emph on
accent1 accent2 allowed
\end_layout

\begin_layout Standard
This one is getting pretty esoteric.
 It allows you to combine the effect 
\family roman
of
\family default
 
\family roman
\emph on
accent1
\family default
\emph default
 
\family roman
and
\family default
 
\family roman
\emph on
accent2
\family default
\emph default
 
\family roman
(in that order!) on
\family default
 
\family roman
\emph on
allowed
\family default
\emph default
 
\family roman
chars.
 The keystrokes for
\family default
 
\family roman
\emph on
accent1
\family default
\emph default
 
\family roman
and
\family default
 
\family roman
\emph on
accent2
\family default
\emph default
 
\family roman
must have be
\family default
en set with a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up

\backslash
kmod
\end_layout

\end_inset

 command at 
\family roman
a
\family default
 
\family roman
\emph on
previous
\family default
\emph default
 
\family roman
point in the
\family default
 file.
 
\end_layout

\begin_layout Standard
Consider this example from the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
greek.kmap
\end_layout

\end_inset

 file:
\end_layout

\begin_layout LyX-Code

\backslash
kmod ;
 acute aeioyvhAEIOYVH 
\backslash
kmod :
 umlaut iyIY 
\backslash
kcomb acute umlaut iyIY
\end_layout

\begin_layout Standard
This allows you to press 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout

\shape up
;:i
\end_layout

\end_inset

 and get the effect of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up

\backslash
'{
\backslash
"{i}}
\end_layout

\end_inset

.
 
\family roman
\shape up
A backspace
\family default
\shape default
 in this case cancels the last dead key,
 so if you press 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout

\shape up
;:
 Backspace i
\end_layout

\end_inset

 you get 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up

\backslash
'{i}
\end_layout

\end_inset

.
\end_layout

\begin_layout Subsection
The .cdef File
\end_layout

\begin_layout Standard
After the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
.kmap
\end_layout

\end_inset

 mapping is performed,
 a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
.cde
\shape default
f
\end_layout

\end_inset

 file maps the strings that the symbols generate to characters in the current font.
 The \SpecialChar LyX
 distribution currently includes at least the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
iso8859-1.cdef
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
iso8859-2.cdef
\end_layout

\end_inset

 files.
\end_layout

\begin_layout Standard
In general the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\shape up
.cdef
\end_layout

\end_inset

 file is a sequence of declarations of the form
\end_layout

\begin_layout LyX-Code

\family roman
\emph on
char_index_in_set
\family default
\emph default
 
\family roman
\emph on
 string
\end_layout

\begin_layout Standard
For example,
 in order to map 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout

\shape up

\backslash
'{e}
\end_layout

\end_inset

 to the corresponding character in the iso-8859-1 set (233),
 the following declaration is used
\end_layout

\begin_layout LyX-Code
233 "
\backslash

\backslash
'{e}"
\end_layout

\begin_layout Standard
with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash

\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
"
\end_layout

\end_inset

 being escap
\family roman
ed in
\family default
 
\family roman
\emph on
string
\emph default
.
 Note that
\family default
 the same character can apply to more than one string.
 In the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
i
\shape up
so-8859-7.cdef
\end_layout

\end_inset

 file you have
\end_layout

\begin_layout LyX-Code
192 "
\backslash

\backslash
'{
\backslash

\backslash

\backslash
"{i}}"
\begin_inset Newline newline
\end_inset

192 "
\backslash

\backslash

\backslash
"{
\backslash

\backslash
'{i}}"
\end_layout

\begin_layout Standard
If \SpecialChar LyX
 cannot find a mapping for the string produced by the keystroke or a deadkey sequence,
 it will check if it looks like an accented char and try to draw an accent over the character on screen.
\end_layout

\begin_layout Subsection
Dead Keys
\end_layout

\begin_layout Standard
There is a second way to add support for international characters through so-called dead-keys.
 A dead-key works in combination with a letter to produce an accented character.
 Here,
 we'll explain how to create a really simple dead-key to illustrate how they work.
\end_layout

\begin_layout Standard
Suppose you happen to need the circumflex character,
 
\begin_inset Quotes eld
\end_inset

 ̂
\begin_inset Quotes erd
\end_inset

.
 You could bind the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
^
\end_layout

\end_inset

-key [a.k.a.
\begin_inset space ~
\end_inset


\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Shift-6
\end_layout

\end_inset

] to the \SpecialChar LyX
 command 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
accent-circumflex
\end_layout

\end_inset

 in your 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxrc
\end_layout

\end_inset

 file.
 Now,
 whenever you type the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
^
\end_layout

\end_inset

-key followed by a letter,
 that letter will have a circumflex accent on it.
 For example,
 the sequence 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
^e
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 produces the letter:
 
\begin_inset Quotes eld
\end_inset

ê
\begin_inset Quotes erd
\end_inset

.
 If you tried to type 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
^t
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

,
 however,
 \SpecialChar LyX
 will complain with a beep,
 since a 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
t
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 never takes a circumflex accent.
 Hitting 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Space
\end_layout

\end_inset

 after a dead-key produces the bare-accent.
 Please note this last point!
 If you bind a key to a dead-key,
 you'll need to rebind the character on that key to yet another key.
 Binding the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
,-key
\end_layout

\end_inset

 to a cedilla is a bad idea,
 since you'll only get cedillas instead of commas.
\end_layout

\begin_layout Standard
One common way to bind dead-keys is to use 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Meta-
\end_layout

\end_inset

,
 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Ctrl-
\end_layout

\end_inset

,
 and 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Shift-
\end_layout

\end_inset

 in combination with an accent,
 like 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
~
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 or 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
,
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 or 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
^
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 Another way involves using 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
xmodmap
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
xkeycaps
\end_layout

\end_inset

 to set up the special 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Mode_Switch
\end_layout

\end_inset

 key.
 The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Mode_Switch
\end_layout

\end_inset

 acts in some ways just like 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Shift
\end_layout

\end_inset

 and permits you to bind keys to accented characters.
 You can also turn keys into dead-keys by binding them to something like 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
usldead_cedilla
\end_layout

\end_inset

 and then binding this symbolic key to the corresponding \SpecialChar LyX
 command.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Note from 
\noun on
John Weiss
\noun default
:
 This is exactly what I do in my 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
~/.lyx/lyxrc
\end_layout

\end_inset

 and my 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
~/.xmodmap
\end_layout

\end_inset

 files.
 I have my 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Scroll
\begin_inset space ~
\end_inset

Lock
\end_layout

\end_inset

 key set up as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Mode_Shift
\end_layout

\end_inset

 and a bunch of these 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
usldead_*
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 symbolic keys bound such things as 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Scroll
\begin_inset space ~
\end_inset

Lock-^
\end_layout

\end_inset

 and 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Scroll
\begin_inset space ~
\end_inset

Lock-~
\end_layout

\end_inset

.
 This is how I produce my accented characters.
\end_layout

\end_inset

 You can make just about anything into the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Mode_Switch
\end_layout

\end_inset

 key:
 One of the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Ctrl-
\end_layout

\end_inset

 keys,
 a spare function key,
 etc.
 As for the \SpecialChar LyX
 commands that produce accents,
 check the entry for 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
accent-acute
\end_layout

\end_inset

 in the 
\emph on
Reference Manual
\emph default
.
 You'll find the complete list there.
\end_layout

\begin_layout Subsection
Saving your Language Configuration
\end_layout

\begin_layout Standard
You can edit your preferences so that your desired language environment is automatically configured when \SpecialChar LyX
 starts up,
 via the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Edit\SpecialChar menuseparator
Preferences
\end_layout

\end_inset

 dialog.
\end_layout

\begin_layout Chapter
Creating and Installing New Document Classes,
 Layouts,
 and Templates
\begin_inset CommandInset label
LatexCommand label
name "cha:Installing-New-Document"

\end_inset


\begin_inset Argument 1
status collapsed

\begin_layout Plain Layout
Installing New Document Classes
\end_layout

\end_inset


\end_layout

\begin_layout Standard
In this chapter,
 we describe the procedures for creating and installing new \SpecialChar LyX
 layout and template files,
 as well as offer a refresher on correctly installing new \SpecialChar LaTeX
 document classes.
 
\end_layout

\begin_layout Standard
First,
 let us a say a few words about how one ought to think about the relation between \SpecialChar LyX
 and \SpecialChar LaTeX
.
 The thing to understand is that,
 in a certain sense,
 \SpecialChar LyX
 doesn't know anything about \SpecialChar LaTeX
.
 Indeed,
 from \SpecialChar LyX
's point of view,
 \SpecialChar LaTeX
 is just one of several 
\begin_inset Quotes eld
\end_inset

backend formats
\begin_inset Quotes erd
\end_inset

 in which it is capable of producing output.
 Other such formats are DocBook,
 plaintext,
 and XHTML.
 \SpecialChar LaTeX
 is,
 of course,
 a particularly important format,
 but very little of the information \SpecialChar LyX
 has about \SpecialChar LaTeX
 is actually contained in the program itself.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Some commands are sufficiently complex that they are 
\begin_inset Quotes eld
\end_inset

hardcoded
\begin_inset Quotes erd
\end_inset

 into \SpecialChar LyX
.
 But the developers generally regard this as a Bad Thing.
\end_layout

\end_inset

 Rather,
 that information,
 even for the standard classes like 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article.cls
\end_layout

\end_inset

,
 is contained in `layout files'.
 Similarly,
 \SpecialChar LyX
 itself does not know much about DocBook or XHTML.
 What it knows is contained in layout files.
\end_layout

\begin_layout Standard
You can think of the layout file for a given document class as a translation manual between \SpecialChar LyX
 constructs—
paragraphs with their corresponding styles,
 certain sorts of insets,
 etc—
and the corresponding \SpecialChar LaTeX
,
 DocBook,
 or XHTML constructs.
 Almost everything \SpecialChar LyX
 knows about 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article.cls
\end_layout

\end_inset

,
 for example,
 is contained in the file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article.layout
\end_layout

\end_inset

 and in various other files it includes.
 For this reason,
 anyone intending to write layout files should plan to study the existing files.
 A good place to start is with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
stdsections.inc
\end_layout

\end_inset

,
 which is included in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article.layout
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
book.layout
\end_layout

\end_inset

,
 and many of the other layout files for document classes.
 This file is where sections and the like are defined:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
stdsections.inc
\end_layout

\end_inset

 tells \SpecialChar LyX
 how paragraphs that are marked with the Section,
 Subsection,
 etc,
 styles can be translated into corresponding \SpecialChar LaTeX
,
 DocBook,
 and XHTML commands and tags.
 The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article.layout
\end_layout

\end_inset

 file basically just includes several of these 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
std*.inc
\end_layout

\end_inset

 files.
\end_layout

\begin_layout Standard
Defining the \SpecialChar LyX
–\SpecialChar LaTeX
 correspondence is not the only thing layout files do,
 though.
 Their other job is to define how the \SpecialChar LyX
 constructs themselves will appear on-screen.
 The fact that layout files have these two jobs is often a source of confusion,
 because they are completely separate.
 Telling \SpecialChar LyX
 how to translate a certain paragraph style into \SpecialChar LaTeX
 does not tell \SpecialChar LyX
 how to display it;
 conversely,
 telling \SpecialChar LyX
 how to display a certain paragraph style does not tell \SpecialChar LyX
 how to translate it into \SpecialChar LaTeX
 (let alone tell \SpecialChar LaTeX
 how to display it).
 So,
 in general,
 when you define a new \SpecialChar LyX
 construct,
 you must always do two quite separate things:
 (i)
\begin_inset space ~
\end_inset

tell \SpecialChar LyX
 how to translate it into \SpecialChar LaTeX
 and (ii)
\begin_inset space ~
\end_inset

tell \SpecialChar LyX
 how to display it.
\end_layout

\begin_layout Standard
Much the same is true,
 of course,
 as regards \SpecialChar LyX
's other backend formats,
 though XHTML is in some ways different,
 because in that case \SpecialChar LyX
 
\emph on
is
\emph default
 able,
 to some extent,
 to use information about how it should display a paragraph on the screen to output information (in the form of CSS) about how the paragraph should be displayed in a browser.
 Even in this case,
 however,
 the distinction between what \SpecialChar LyX
 does internally and how things are rendered externally remains in force,
 and the two can be controlled separately.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Tags-for-XHTML"
nolink "false"

\end_inset

 for the details.
\end_layout

\begin_layout Section
Installing new \SpecialChar LaTeX
 files
\end_layout

\begin_layout Standard
Some installations may not include a \SpecialChar LaTeX
 package or class file that you would like to use within \SpecialChar LyX
.
 For example,
 you might need Foil\SpecialChar TeX
,
 a package for preparing slides for overhead projectors.
 Modern \SpecialChar LaTeX
 distributions like \SpecialChar TeX
Live (2008 or newer) or MiK\SpecialChar TeX
 provide a user interface for installing such packages.
 For example,
 with MiK\SpecialChar TeX
,
 you start the program 
\begin_inset Quotes eld
\end_inset

Package
\begin_inset space ~
\end_inset

Manager
\begin_inset Quotes erd
\end_inset

 to get a list of available packages.
 To install one of them,
 right click on it or use the corresponding toolbar button.
\end_layout

\begin_layout Standard
If your \SpecialChar LaTeX
 distribution does not provide such a `package manager',
 or if the package is not available from your distribution,
 then follow these steps to install it manually:
\end_layout

\begin_layout Enumerate
Get the package from 
\begin_inset CommandInset href
LatexCommand href
name "CTAN"
target "http://www.ctan.org/"
literal "false"

\end_inset

 or wherever.
\end_layout

\begin_layout Enumerate
If the package contains a file with the ending 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.ins
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 (is the case for Foil\SpecialChar TeX
) then open a console,
 change to the folder of this file and execute the command 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
latex foiltex.ins
\end_layout

\end_inset

.
 You have now unpacked the package and have all files to install it.
 Most \SpecialChar LaTeX
-packages are not packed and you can skip this step.
\end_layout

\begin_layout Enumerate
Now you need to decide if the package should be available for all users or only for you.
\end_layout

\begin_deeper
\begin_layout Enumerate
On *nix systems (Linux,
 OSX,
 etc.),
 if you want the new package to be available for all users on your system,
 then install it in your `local' \SpecialChar TeX
 tree,
 otherwise install it in your own `user' \SpecialChar TeX
 tree.
 Where these trees should be created,
 if they do not already exist,
 depends on your system.
 To find this out,
 look in the file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
texmf.cnf
\end_layout

\end_inset

.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
This is usually in the directory 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$TEXMF/web2c
\end_layout

\end_inset

,
 though you can execute the command 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
kpsewhich texmf.cnf
\end_layout

\end_inset

 to locate it.
\end_layout

\end_inset

 The location of the `local' \SpecialChar TeX
 tree is defined by the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TEXMFLOCAL
\end_layout

\end_inset

 variable;
 this is usually somewhere like 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
/usr/local/share/texmf
\end_layout

\end_inset

 or /usr/local/texlive/XXXX where XXXX is the year of the installed \SpecialChar TeX
Live distribution.
 The location of the `user' \SpecialChar TeX
 tree is defined by 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TEXMFHOME
\end_layout

\end_inset

 and is commonly 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$HOME/texmf
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\family sans
$HOME/.texliveXXXX
\end_layout

\end_inset

.
 (If these variables are not predefined,
 you have to define them.) You'll probably need root permissions to create or modify the `local' tree,
 but not for your `user' tree.
\begin_inset Newline newline
\end_inset

In general,
 it is recommended to install in the user tree because your user will not be modified or even overwritten when you upgrade your system.
 It will typically also be backed up together with everything else when you backup your home directory (which,
 of course,
 you do on a regular basis).
\end_layout

\begin_layout Enumerate
On Windows,
 if you want the new package to be available for all users on your system,
 change to the folder where \SpecialChar LaTeX
 is installed and then change to the subfolder 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
~
\backslash
tex
\backslash
latex
\end_layout

\end_inset

.
 (For MiK\SpecialChar TeX
,
 this would be by default the folder 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
~:
\backslash
Programs
\backslash
MiKTeX
\backslash
tex
\backslash
latex
\end_layout

\end_inset

.)
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Note that this will be the correct path only on English installations.
 On a German one,
 it would be 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
~:
\backslash
Programme
\backslash
MiKTeX
\backslash
tex
\backslash
latex
\end_layout

\end_inset

,
 and similarly for other languages.
\end_layout

\end_inset

 Create there a new folder 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
foiltex
\end_layout

\end_inset

 and copy all files of the package into it.
 
\begin_inset Newline newline
\end_inset

If the package should only available for you or you don't have admin permissions,
 do the same,
 but in the local \SpecialChar LaTeX
 folder.
 E.
\begin_inset space \thinspace{}
\end_inset

g.,
 for MiK\SpecialChar TeX

\begin_inset space ~
\end_inset

2.8 under Windows XP,
 this would be the folder:
\begin_inset Newline newline
\end_inset


\family sans

\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
~:
\backslash
Documents and Settings
\backslash
<username>
\backslash
Application Data
\backslash

\end_layout

\end_inset


\begin_inset Newline newline
\end_inset


\family default

\begin_inset Phantom HPhantom
status open

\begin_layout Plain Layout

\family sans
~:
\backslash

\end_layout

\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MiKTeX
\backslash
2.8
\backslash
tex
\backslash
latex
\end_layout

\end_inset


\begin_inset Newline newline
\end_inset

On Vista,
 it would be:
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
~:
\backslash
Users
\backslash
<username>
\backslash
AppData
\backslash
Roaming
\backslash
2.8
\backslash
MiKTeX
\backslash
tex
\backslash
latex
\end_layout

\end_inset


\end_layout

\end_deeper
\begin_layout Enumerate
Now one only need to tell \SpecialChar LaTeX
 that there are new files.
 This depends on the used \SpecialChar LaTeX
-Distribution:
\end_layout

\begin_deeper
\begin_layout Enumerate
For \SpecialChar TeX
Live execute the command 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
texhash
\end_layout

\end_inset

 from a console.
 If you installed the package for all users,
 then you will probably need to have root permissions for that.
\end_layout

\begin_layout Enumerate
For MiK\SpecialChar TeX
,
 if you have installed the package for all users,
 start the program 
\begin_inset Quotes eld
\end_inset

Settings
\begin_inset space ~
\end_inset

(Admin)
\begin_inset Quotes erd
\end_inset

 and press the button marked 
\begin_inset Quotes eld
\end_inset

Refresh FNDB
\begin_inset Quotes erd
\end_inset

.
 Otherwise start the program 
\begin_inset Quotes eld
\end_inset

Settings
\begin_inset Quotes erd
\end_inset

 and do the same.
\end_layout

\end_deeper
\begin_layout Enumerate
Finally,
 you need to tell \SpecialChar LyX
 that there are new packages available.
 So,
 in \SpecialChar LyX
,
 use the menu 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Tools
\family sans
\SpecialChar menuseparator
Reconfigure
\end_layout

\end_inset

 and then restart \SpecialChar LyX
.
\end_layout

\begin_layout Standard
Now the package is installed.
 In our example,
 the document class 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
FoilTex
\end_layout

\end_inset

 will now be available under 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings\SpecialChar menuseparator
Document Class
\end_layout

\end_inset

 (in the 
\begin_inset Quotes eld
\end_inset

Presentations
\begin_inset Quotes erd
\end_inset

 category).
 
\end_layout

\begin_layout Standard
If you would like to use a \SpecialChar LaTeX
 document class that is not even listed in the menu 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings\SpecialChar menuseparator
Document Class
\end_layout

\end_inset

,
 then you need to create a `layout' file for it.
 That is the topic of the next section.
\end_layout

\begin_layout Section
Types of layout files
\end_layout

\begin_layout Standard
This section describes the various sorts of \SpecialChar LyX
 files that contain layout information.
 These files describe various paragraph and character styles,
 determining how \SpecialChar LyX
 should display them and how they should be translated into \SpecialChar LaTeX
,
 DocBook,
 XHTML,
 or whatever output format is being used.
 
\end_layout

\begin_layout Standard
We shall try to provide a thorough description of the process of writing layout files here.
 However,
 there are so many different types of documents supported even by just \SpecialChar LaTeX
 that we can't hope to cover every different possibility or problem you might encounter.
 The \SpecialChar LyX
 users' list is frequented by people with lots of experience with layout design who are willing to share what they've learned,
 so please feel free to ask questions there.
\end_layout

\begin_layout Standard
As you prepare to write a new layout,
 it is extremely helpful to look at the layouts distributed with \SpecialChar LyX
.
 If you write a \SpecialChar LyX
 layout for a \SpecialChar LaTeX
 document class that might also be used by others,
 or write a module that might be useful to others,
 then you should consider posting your layout to the 
\begin_inset CommandInset href
LatexCommand href
name "layout section on the LyX wiki"
target "https://wiki.lyx.org/Layouts/Layouts"
literal "false"

\end_inset

 or even to the \SpecialChar LyX
 developers' list,
 so that it might be included in \SpecialChar LyX
 itself.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Note that \SpecialChar LyX
 is licensed under the General Public License,
 so any material that is contributed to \SpecialChar LyX
 must be similarly licensed.
\end_layout

\end_inset


\end_layout

\begin_layout Subsection
Layout modules
\begin_inset CommandInset label
LatexCommand label
name "subsec:Layout-modules"

\end_inset


\end_layout

\begin_layout Standard
We have spoken to this point about `layout files'.
 But there are different sorts of files that contain layout information.
 Layout files,
 strictly so called,
 have the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.layout
\end_layout

\end_inset

 extension and provide \SpecialChar LyX
 with information about document classes.
 Since \SpecialChar LyX
 1.6 layout information can also be contained in layout 
\emph on
modules
\emph default
,
 which have the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.module
\end_layout

\end_inset

 extension.
 Modules are to \SpecialChar LaTeX
 packages much as layouts are to \SpecialChar LaTeX
 classes,
 and some modules—
such as the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
endnotes
\end_layout

\end_inset

 module—
specifically provide support for one package.
 In a sense,
 layout modules are similar to included
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
These can have any extension,
 but by convention have the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.inc
\end_layout

\end_inset

 extension.
\end_layout

\end_inset

 files—
files like 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
stdsections.inc
\end_layout

\end_inset

—
in that modules are not specific to a given document class but may be used with many different classes.
 The difference is that using an included file with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article.cls
\end_layout

\end_inset

 requires editing that file.
 Modules,
 by contrast,
 are selected in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings
\end_layout

\end_inset

 dialog.
\end_layout

\begin_layout Standard
Building modules is the easiest way to get started with layout editing,
 since it can be as simple as adding a single new paragraph style or flex inset.
 But modules may,
 in principle,
 contain anything a layout file can contain.
\end_layout

\begin_layout Standard
After creating a new module and copying it to the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
layouts/
\end_layout

\end_inset

 folder,
 you will need to reconfigure and then restart \SpecialChar LyX
 for the module to appear in the menu.
 However,
 changes you make to the module will be seen immediately,
 if you open 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings
\end_layout

\end_inset

,
 highlight something,
 and then hit 
\begin_inset Quotes eld
\end_inset

OK
\begin_inset Quotes erd
\end_inset

.
 
\emph on
It is strongly recommended that you save your work before doing this
\emph default
.
 In fact,
 
\emph on
it is strongly recommended that you not attempt to edit modules while simultaneously working on actual documents
\emph default
.
 Though of course the developers strive to keep \SpecialChar LyX
 stable in such situations,
 syntax errors and the like in your module file could cause strange behavior.
\end_layout

\begin_layout Subsubsection
Local Layout
\end_layout

\begin_layout Standard
Modules are to \SpecialChar LyX
 as packages are to \SpecialChar LaTeX
.
 Sometimes,
 however,
 you find yourself wanting a specific inset or character style just for one document and writing a module that will also be available to other documents makes little sense.
 What you need is \SpecialChar LyX
's 
\begin_inset Quotes eld
\end_inset

Local Layout
\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Standard
You will find it under 
\family sans
Document\SpecialChar menuseparator
Settings\SpecialChar menuseparator
Local Layout
\family default
.
 The large text box allows you to enter anything that you might enter in a layout file or module.
 You can think of a document's local layout,
 in fact,
 as a module that belongs just to it.
 So,
 in particular,
 you must enter a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Format
\end_layout

\end_inset

 tag.
 Any format is acceptable,
 but one would normally use the format current at the time.
 (In \SpecialChar LyX
 
\begin_inset Info
type  "lyxinfo"
arg   "version"
\end_inset

,
 the current layout format is 
\begin_inset Info
type  "lyxinfo"
arg   "layoutformat"
\end_inset

.)
\end_layout

\begin_layout Standard
When you have entered something in the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Local Layout
\end_layout

\end_inset

 pane,
 \SpecialChar LyX
 will enable the 
\begin_inset Quotes eld
\end_inset

Validate
\begin_inset Quotes erd
\end_inset

 button at the bottom.
 Clicking this button will cause \SpecialChar LyX
 to determine whether what you have entered is valid layout information for the chosen format.
 \SpecialChar LyX
 will report the result but,
 unfortunately,
 will not tell you what errors there might have been.
 These will be written to the terminal,
 however,
 if \SpecialChar LyX
 is started from a terminal.
 You will not be permitted to save your local layout until you have entered something valid.
\end_layout

\begin_layout Standard
The warnings at the end of the previous section apply here,
 too.
 Do not play with local layout while you are actually working,
 especially if you have not saved your document.
 That said,
 using local layout with a test document can be a very convenient way to try out layout ideas,
 or even to start developing a module.
\end_layout

\begin_layout Subsection
Layout for 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
.sty
\end_layout

\end_inset

 files
\end_layout

\begin_layout Standard
There are two situations you are likely to encounter when wanting to support a new \SpecialChar LaTeX
 document class,
 involving style (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.sty
\end_layout

\end_inset

) files and \SpecialChar LaTeX2e
 class (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.cls
\end_layout

\end_inset

) .
 Supporting a style file is usually fairly easy.
 Supporting a new class file is a bit harder.
 We'll discuss the former in this section and the latter in the next.
 
\end_layout

\begin_layout Standard
The easier case is the one in which your new document class is provided as a style file that is to be used in conjunction with an already supported document class.
 For the sake of the example,
 we'll assume that the style file is called 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
myclass.sty
\end_layout

\end_inset

 and that it is meant to be used with 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
report.cls
\end_layout

\end_inset

,
 which is a standard class.
 
\end_layout

\begin_layout Standard
Start by copying the existing class's layout file into your local directory:
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Of course,
 which directory is your local directory will vary by platform,
 and \SpecialChar LyX
 allows you to specify your local directory on startup,
 too,
 using the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-userdir
\end_layout

\end_inset

 option.
\end_layout

\end_inset


\end_layout

\begin_layout LyX-Code
cp report.layout ~/.lyx/layouts/myclass.layout
\end_layout

\begin_layout Standard
Then edit 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
myclass.layout
\end_layout

\end_inset

 and change the line:
 
\end_layout

\begin_layout LyX-Code

\backslash
DeclareLaTeXClass{Report (Standard Class)}
\end_layout

\begin_layout Standard
to read
\end_layout

\begin_layout LyX-Code

\backslash
DeclareLaTeXClass[report,
 myclass.sty]{Report (My Class)}
\end_layout

\begin_layout Standard
Then add:
\end_layout

\begin_layout LyX-Code
Preamble 
\begin_inset Newline newline
\end_inset

    
\backslash
usepackage{myclass}
\begin_inset Newline newline
\end_inset

EndPreamble
\end_layout

\begin_layout Standard
near the top of the file.
\end_layout

\begin_layout Standard
Start \SpecialChar LyX
 and select 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Tools\SpecialChar menuseparator
Reconfigure
\end_layout

\end_inset

.
 Then restart \SpecialChar LyX
 and try creating a new document.
 You should see "
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Report (My Class)
\end_layout

\end_inset

" as a document class option in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings
\end_layout

\end_inset

 dialog.
 It is likely that some of the sectioning commands and such in your new class will work differently from how they worked in the base class—

\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
report
\end_layout

\end_inset

 in this example—
so you can fiddle around with the settings for the different sections if you wish.
 The layout information for sections is contained in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
stdsections.inc
\end_layout

\end_inset

,
 but you do not need to copy and change this file.
 Instead,
 you can simply add your changes to your layout file,
 after the line 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Input stdclass.inc
\end_layout

\end_inset

,
 which itself includes 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
stdsections.inc
\end_layout

\end_inset

.
 For example,
 you might add these lines:
\end_layout

\begin_layout LyX-Code
Style Chapter
\end_layout

\begin_layout LyX-Code
    Font
\end_layout

\begin_layout LyX-Code
        Family Sans
\end_layout

\begin_layout LyX-Code
    EndFont
\end_layout

\begin_layout LyX-Code
End
\end_layout

\begin_layout Standard
to change the font for chapter headings to sans-serif.
 This will override (or,
 in this case,
 add to) the existing declaration for the Chapter style.
 
\end_layout

\begin_layout Standard
Your new package may also provide commands or environments not present in the base class.
 In this case,
 you will want to add these to the layout file.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:TextClass"
nolink "false"

\end_inset

 for information on how to do so.
\end_layout

\begin_layout Standard
If 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
myclass.sty
\end_layout

\end_inset

 can be used with several different document classes,
 and even if it cannot,
 you might find it easiest just to write a module that you can load with the base class.
 The simplest possible such module would be:
\end_layout

\begin_layout LyX-Code
#
\backslash
DeclareLyXModule{My Class} 
\end_layout

\begin_layout LyX-Code
#DescriptionBegin 
\end_layout

\begin_layout LyX-Code
#Support for myclass.sty.
\end_layout

\begin_layout LyX-Code
#DescriptionEnd
\begin_inset Newline newline
\end_inset


\end_layout

\begin_layout LyX-Code
Format 
\begin_inset Info
type  "lyxinfo"
arg   "layoutformat"
\end_inset


\begin_inset Newline newline
\end_inset


\end_layout

\begin_layout LyX-Code
Preamble
\begin_inset Newline newline
\end_inset

    
\backslash
usepackage{myclass}
\begin_inset Newline newline
\end_inset

EndPreamble
\end_layout

\begin_layout Standard
A more complex module might modify the behavior of some existing constructs or define some new ones.
 Again,
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:TextClass"
nolink "false"

\end_inset

 for discussion.
\end_layout

\begin_layout Subsection
Layout for 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
.cls
\end_layout

\end_inset

 files
\end_layout

\begin_layout Standard
There are two possibilities here.
 One is that the class file is itself based upon an existing document class.
 For example,
 many thesis classes are based upon 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
book.cls
\end_layout

\end_inset

.
 To see whether yours is,
 look for a line like
\end_layout

\begin_layout LyX-Code

\backslash
LoadClass{book}
\end_layout

\begin_layout Standard
in the file.
 If so,
 then you may proceed largely as in the previous section,
 though the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Declare\SpecialChar LaTeX
Class
\end_layout

\end_inset

 line will be different.
 If your new class is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
thesis
\end_layout

\end_inset

 and it is based upon 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
book
\end_layout

\end_inset

,
 then the line should read:
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
And it will be easiest if you save the file to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
thesis.layout
\end_layout

\end_inset

:
 \SpecialChar LyX
 assumes that the document class has the same name as the layout file.
 
\end_layout

\end_inset


\end_layout

\begin_layout LyX-Code

\backslash
DeclareLaTeXClass[thesis,book]{thesis}
\end_layout

\begin_layout Standard
If,
 on the other hand,
 the new class is not based upon an existing class,
 you will probably have to 
\begin_inset Quotes eld
\end_inset

roll your own
\begin_inset Quotes erd
\end_inset

 layout.
 We strongly suggest copying an existing layout file which uses a similar \SpecialChar LaTeX
 class and then modifying it,
 if you can do so.
 At least use an existing file as a starting point so you can find out what items you need to worry about.
 Again,
 the specifics are covered below.
\end_layout

\begin_layout Subsection
Creating templates
\begin_inset CommandInset label
LatexCommand label
name "subsec:Creating-Templates"

\end_inset


\end_layout

\begin_layout Standard
Once you have written a layout file for a new document class,
 you might want to consider writing a 
\emph on
template
\emph default
 for it,
 too.
 A template acts as a kind of tutorial for your layout,
 showing how it might be used,
 though containing dummy content.
 You can of course look at the various templates included with \SpecialChar LyX
 for ideas.
\end_layout

\begin_layout Standard
Templates are created just like usual documents:
 using \SpecialChar LyX
.
 The only difference is that usual documents contain all possible settings,
 including the font scheme and the paper size.
 Usually a user doesn't want a template to overwrite his preferred settings for such parameters.
 For that reason,
 the designer of a template should remove the corresponding commands like 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
font_roman
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
papersize
\end_layout

\end_inset

 from the template \SpecialChar LyX
 file.
 This can be done with any simple text-editor,
 for example 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
vi
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
notepad
\end_layout

\end_inset

.
\end_layout

\begin_layout Standard
Put the edited template files you create in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UserDir/templates/
\end_layout

\end_inset

,
 copy the ones you use from the global template directory in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXDir/templates/
\end_layout

\end_inset

 to the same place,
 and redefine the template path in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Tools\SpecialChar menuseparator
Preferences\SpecialChar menuseparator
Paths
\end_layout

\end_inset

 dialog.
\end_layout

\begin_layout Standard
Note,
 by the way,
 that there is a template which has a particular meaning:
\begin_inset Newline linebreak
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
defaults.lyx
\end_layout

\end_inset

.
 This template is loaded every time you create a new document with 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
File\SpecialChar menuseparator
New
\end_layout

\end_inset

 in order to provide useful defaults.
 To create this template from inside \SpecialChar LyX
,
 all you have to do is to open a document with the correct settings,
 and use the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Save as Document Defaults
\end_layout

\end_inset

 button.
\end_layout

\begin_layout Subsection
Upgrading old layout files
\end_layout

\begin_layout Standard
The format of layout files changes with each \SpecialChar LyX
 release,
 so old layout files need to be converted to the new format.
 If \SpecialChar LyX
 reads a layout file in an older format,
 it automatically calls the script 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
layout2layout.py
\end_layout

\end_inset

 to convert it to a temporary file in current format.
 The original file is left untouched.
 If you use the layout file often,
 then,
 you may want to convert it permanently,
 so that \SpecialChar LyX
 does not have to do so itself every time.
 To do this,
 you can call the converter manually:
\end_layout

\begin_layout Enumerate
rename the file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
myclass.layout
\end_layout

\end_inset

 to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
myclass.old
\end_layout

\end_inset


\end_layout

\begin_layout Enumerate
Call the command
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
python LyXDir/scripts/layout2layout.py myclass.old myclass.layout
\end_layout

\end_inset


\begin_inset Newline newline
\end_inset

where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXDir
\end_layout

\end_inset

 is the name of your \SpecialChar LyX
 system directory.
\end_layout

\begin_layout Standard
Note that manual conversion does not affect included files,
 so these will have to be converted separately.
\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "subsec:Cite-Engine-Files"

\end_inset

Cite engine files
\end_layout

\begin_layout Standard
A specific form of layout files are the so-called 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
*.citeengine
\end_layout

\end_inset

 files that are located in the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
citeengines/
\end_layout

\end_inset

 sub-directory.
 Their purpose is to define the specifics of \SpecialChar LaTeX
 packages aimed at bibliography generation,
 such as 
\family sans
natbib
\family default
,

\family sans
 jurabib
\family default
 or 
\family sans
biblatex
\family default
,
 but also the way how normal Bib\SpecialChar TeX
 citations (without additional packages) are handled in \SpecialChar LyX
 is defined in such a file.
 
\end_layout

\begin_layout Standard
More specifically,
 it is defined which packages \SpecialChar LyX
 needs to load,
 which citation commands are available,
 how these are to be displayed in \SpecialChar LyX
 (in the workarea,
 the dialogs,
 the context menus) as well as in the XHTML and plain text output.
 Furthermore,
 the files specify available style variants (author-year,
 numerical,
 etc.) and their specifics.
 The cite engine files are also used to generate the options that are available in 
\family sans
Document\SpecialChar menuseparator
Settings\SpecialChar menuseparator
Bibliography\SpecialChar menuseparator
Style engine
\family default
.
\end_layout

\begin_layout Standard
Even though a cite engine file is essentially a normal layout file that could theoretically include any layout information,
 it usually primarily includes some specific parameters such as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MaxCiteNames
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CiteFramework
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CiteEngine
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CiteFormat
\end_layout

\end_inset

 blocks.
 The syntax of the latter two is described in 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Citation-engine-description"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 and 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Citation-format-description"
nolink "false"

\end_inset

,
 as well as in the files themselves.
\end_layout

\begin_layout Section
\begin_inset CommandInset label
LatexCommand label
name "sec:TextClass"

\end_inset

The layout file format
\end_layout

\begin_layout Standard
The following sections describe how layout files are structured and written.
 Our advice is to go slowly,
 save and test often.
 It is really not that hard,
 except that the multitude of options can become overwhelming,
 especially if you try to check out too many at once.
 It becomes easier if you use existing layouts of \SpecialChar LyX
 as examples/reference or if you modify an existing layout to your needs.
\end_layout

\begin_layout Standard
Note that all the tags used in layout files are case-insensitive.
 This means that 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Style
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
style
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
StYlE
\end_layout

\end_inset

 are really the same tag.
 The possible arguments are printed in brackets after the tag's name.
 The default argument is typeset 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
emphasized
\end_layout

\end_inset

.
 If the argument has a data type like 
\begin_inset Quotes eld
\end_inset

string
\begin_inset Quotes erd
\end_inset

 or 
\begin_inset Quotes eld
\end_inset

float
\begin_inset Quotes erd
\end_inset

,
 the default is shown like this:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
float=
\emph on
default
\end_layout

\end_inset

.
\end_layout

\begin_layout Subsection
The document class declaration and classification
\end_layout

\begin_layout Standard
Lines in a layout file which begin with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
#
\end_layout

\end_inset

 are comments.
 There is one exception to this rule.
 All 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
*.layout
\end_layout

\end_inset

 files should begin with lines like:
\end_layout

\begin_layout LyX-Code

\size small
#% Do not delete the line below;
 configure depends on this 
\end_layout

\begin_layout LyX-Code

\size small
#  
\backslash
DeclareLaTeXClass{Article (Standard Class)}
\end_layout

\begin_layout LyX-Code

\size small
#  
\backslash
DeclareCategory{Articles}
\end_layout

\begin_layout Standard
The second and third lines are used when you (re)configure \SpecialChar LyX
.
 The layout file is read by the \SpecialChar LaTeX
 script 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
chkconfig.ltx
\end_layout

\end_inset

,
 in a special mode where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
#
\end_layout

\end_inset

 is ignored.
 The first line is just a \SpecialChar LaTeX
 comment,
 the second one contains the mandatory declaration of the text class and the third line contains the optional classification of the class.
 If these lines appear in a file named 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article.layout
\end_layout

\end_inset

,
 then they define a text class of name 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article
\end_layout

\end_inset

 (the name of the layout file) which uses the \SpecialChar LaTeX
 document class 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article.cls
\end_layout

\end_inset

 (the default is to use the same name as the layout).
 The string 
\begin_inset Quotes eld
\end_inset

Article (Standard Class)
\begin_inset Quotes erd
\end_inset

 that appears above is used as a description of the text class in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings
\end_layout

\end_inset

 dialog.
 The category (
\begin_inset Quotes eld
\end_inset

Articles
\begin_inset Quotes erd
\end_inset

 in the example) is also used in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings
\end_layout

\end_inset

 dialog:
 the text classes are grouped by these categories (which are usually genres,
 so typical categories are 
\begin_inset Quotes eld
\end_inset

Articles
\begin_inset Quotes erd
\end_inset

,
 
\begin_inset Quotes eld
\end_inset

Books
\begin_inset Quotes erd
\end_inset

,
 
\begin_inset Quotes eld
\end_inset

Reports
\begin_inset Quotes erd
\end_inset

,
 
\begin_inset Quotes eld
\end_inset

Letters
\begin_inset Quotes erd
\end_inset

,
 
\begin_inset Quotes eld
\end_inset

Presentations
\begin_inset Quotes erd
\end_inset

,
 
\begin_inset Quotes eld
\end_inset

Curricula Vitae
\begin_inset Quotes erd
\end_inset

 etc.).
 If no category has been declared,
 the class will be put in the 
\begin_inset Quotes eld
\end_inset

Uncategorized
\begin_inset Quotes erd
\end_inset

 group.
\end_layout

\begin_layout Standard
Let's assume that you wrote your own text class that uses the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article.cls
\end_layout

\end_inset

 document class,
 but where you changed the appearance of the section headings.
 If you put it in a file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
myarticle.layout
\end_layout

\end_inset

,
 the header of this file should be:
\end_layout

\begin_layout LyX-Code

\size small
#% Do not delete the line below;
 configure depends on this 
\end_layout

\begin_layout LyX-Code

\size small
#  
\backslash
DeclareLaTeXClass[article]{Article (with My Own Headings)}
\end_layout

\begin_layout LyX-Code

\size small
#  
\backslash
DeclareCategory{Articles}
\end_layout

\begin_layout Standard
This declares a text class 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
myarticle
\end_layout

\end_inset

,
 associated with the \SpecialChar LaTeX
 document class 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article.cls
\end_layout

\end_inset

 and described as 
\begin_inset Quotes eld
\end_inset

Article (with My Own Headings)
\begin_inset Quotes erd
\end_inset

.
 If your text class depends on several packages,
 you can declare it as:
\end_layout

\begin_layout LyX-Code

\size small
#% Do not delete the line below;
 configure depends on this 
\end_layout

\begin_layout LyX-Code

\size small
#  
\backslash
DeclareLaTeXClass[article,foo.sty]{Article (with My Own Headings)}
\end_layout

\begin_layout LyX-Code

\size small
#  
\backslash
DeclareCategory{Articles}
\end_layout

\begin_layout Standard
This indicates that your text class uses the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
foo.sty
\end_layout

\end_inset

 package.
 
\end_layout

\begin_layout Standard
Note that these declarations can also be given an optional parameter declaring the name of the document class (but not a list).
\end_layout

\begin_layout Standard
So,
 to be as explicit as possible,
 the form of the layout declaration is:
\end_layout

\begin_layout LyX-Code

\size small
#  
\backslash
DeclareLaTeXClass[class,package.sty]{layout description}
\end_layout

\begin_layout LyX-Code

\size small
#  
\backslash
DeclareCategory{category}
\end_layout

\begin_layout Standard
The class need only be specified if the name of the \SpecialChar LaTeX
 class file and the name of the layout file are different or if there are packages to load.
 If the name of the class file is not specified,
 then \SpecialChar LyX
 will simply assume that it is the same as the name of the layout file.
\end_layout

\begin_layout Standard
When the text class has been modified to your taste,
 all you have to do is to copy it either to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXDir/layouts/
\end_layout

\end_inset

 or to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UserDir/layouts
\end_layout

\end_inset

,
 run 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Tools\SpecialChar menuseparator
Reconfigure
\end_layout

\end_inset

,
 exit \SpecialChar LyX
 and restart.
 Then your new text class should be available along with the others.
\end_layout

\begin_layout Standard
Once the layout file is installed,
 you can edit it and see your changes without having to reconfigure or to restart \SpecialChar LyX
.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
In versions of \SpecialChar LyX
 prior to 1.6,
 this was not true.
 As a result,
 editing layout files was very time consuming,
 since you had constantly to restart \SpecialChar LyX
 to see changes.
\end_layout

\end_inset

 You can force a reload of the current layout by using the \SpecialChar LyX
 function 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
layout-reload
\end_layout

\end_inset

.
 There is no default binding for this function—
though,
 of course,
 you can bind it to a key yourself.
 But you will normally use this function simply by entering it in the mini-buffer.
 
\end_layout

\begin_layout Standard

\emph on
Warning
\emph default
:
 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
layout-reload
\end_layout

\end_inset

 is very much an `advanced feature'.
 It is 
\emph on
strongly
\emph default
 recommended that you save your work before using this function.
 In fact,
 it is 
\emph on
strongly
\emph default
 recommended that you not attempt to edit layout information while simultaneously working on a document that you care about.
 Use a test document.
 Syntax errors and the like in your layout file could cause peculiar behavior.
 In particular,
 such errors could cause \SpecialChar LyX
 to regard the current layout as invalid and to attempt to switch to some other layout.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Really bad syntax errors may even caused \SpecialChar LyX
 to exit.
 This is because certain sorts of errors may make \SpecialChar LyX
 unable to read 
\emph on
any
\emph default
 layout information.
 Please be careful.
\end_layout

\end_inset

 The \SpecialChar LyX
 team strives to keep \SpecialChar LyX
 stable in such situations,
 but safe is better than sorry.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
While we're giving advice:
 make regular backups.
 And be nice to your mother.
\end_layout

\end_inset


\end_layout

\begin_layout Subsection
The Module declaration
\end_layout

\begin_layout Standard
A module must begin with a line like the following:
\end_layout

\begin_layout LyX-Code
#
\backslash
DeclareLyXModule[endnotes.sty]{Endnotes}
\end_layout

\begin_layout LyX-Code

\size small
#
\backslash
DeclareCategory{Foot- and Endnotes}
\end_layout

\begin_layout Standard
The mandatory argument of 
\family typewriter

\backslash
DeclareLyXModule
\family default
,
 in curly brackets,
 is the name of the module,
 as it should appear in 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings\SpecialChar menuseparator
Modules
\end_layout

\end_inset

.
 The argument in square brackets is optional:
 It declares any \SpecialChar LaTeX
 packages on which the module depends.
 It is also possible to use the form 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
from->to
\end_layout

\end_inset

 as an optional argument,
 which declares that the module can only be used when there exists a conversion chain between the formats `
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
from
\end_layout

\end_inset

' and `
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
to
\end_layout

\end_inset

'.
 The 
\family typewriter

\backslash
DeclareCategory
\family default
 declaration is not strictly mandatory,
 but you should add it,
 since it is helpful to find the module.
 Please have a look at the existing module categories and if appropriate,
 use one of those.
\end_layout

\begin_layout Standard
The module and category declaration should then be followed by lines like the following:
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Preferably in English if the module should be published with \SpecialChar LyX
.
 This description will appear in the list of messages to be translated and will be thus translated with the next interface update.
\end_layout

\end_inset


\end_layout

\begin_layout LyX-Code
#DescriptionBegin 
\end_layout

\begin_layout LyX-Code
#Adds an endnote command,
 in addition to footnotes.
 
\end_layout

\begin_layout LyX-Code
#You will need to add  
\backslash
theendnotes in TeX code where you 
\end_layout

\begin_layout LyX-Code
#want the endnotes to appear.
 
\end_layout

\begin_layout LyX-Code
#DescriptionEnd 
\end_layout

\begin_layout LyX-Code
#Requires:
 somemodule | othermodule
\end_layout

\begin_layout LyX-Code
#Excludes:
 badmodule
\end_layout

\begin_layout Standard
The description is used in 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings\SpecialChar menuseparator
Modules
\end_layout

\end_inset

 to provide the user with information about what the module does.
 The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Requires
\end_layout

\end_inset

 line is used to identify other modules with which this one must be used;
 the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Excludes
\end_layout

\end_inset

 line is used to identify modules with which this one may not be used.
 Both are optional,
 and,
 as shown,
 multiple modules should be separated with the pipe symbol:
 |.
 Note that the required modules are treated disjunctively:
 
\emph on
at least one
\emph default
 of the required modules must be used.
 Similarly,
 
\emph on
no
\emph default
 excluded module may be used.
 Note that modules are identified here by their filenames without the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.module
\end_layout

\end_inset

 extension.
 So 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
somemodule
\end_layout

\end_inset

 is really 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
somemodule.module
\end_layout

\end_inset

.
\end_layout

\begin_layout Subsection
The CiteEngine file declaration
\end_layout

\begin_layout Standard
A cite engine file must begin with a line like the following:
\end_layout

\begin_layout LyX-Code
#
\backslash
DeclareLyXCiteEngineModule[biblatex.sty]{Biblatex}
\end_layout

\begin_layout Standard
The mandatory argument,
 in curly brackets,
 is the name of the cite style,
 as it should appear in 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings\SpecialChar menuseparator
Bibliography
\end_layout

\end_inset

.
 The argument in square brackets is optional:
 It declares any \SpecialChar LaTeX
 packages on which the cite engine depends.
\end_layout

\begin_layout Standard
The cite engine declaration should then be followed by lines like the following:
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Preferably in English if the module should be published with \SpecialChar LyX
.
 This description will appear in the list of messages to be translated and will be thus translated with the next interface update.
\end_layout

\end_inset


\end_layout

\begin_layout LyX-Code
# DescriptionBegin
\end_layout

\begin_layout LyX-Code
#   Biblatex supports many author-year and numerical styles.
\end_layout

\begin_layout LyX-Code
#   It is mainly aimed at the Humanities.
 It is highly
\end_layout

\begin_layout LyX-Code
#   customizable,
 fully localized and provides many features
\end_layout

\begin_layout LyX-Code
#   that are not possible with BibTeX.
 The use of 'biber' as
\end_layout

\begin_layout LyX-Code
#   bibliography processor is advised.
\end_layout

\begin_layout LyX-Code
# DescriptionEnd
\end_layout

\begin_layout Standard
The description is used in 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings\SpecialChar menuseparator
Bibliography
\end_layout

\end_inset

 to provide the user with information about the cite engine.
\end_layout

\begin_layout Subsection
Format number
\end_layout

\begin_layout Standard
The first non-comment line of any layout file,
 included file,
 or module 
\emph on
must
\emph default
 contain the file format number:
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Format
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
int
\end_layout

\end_inset

] The format number of the layout file.
\end_layout

\begin_layout Standard
This tag was introduced with \SpecialChar LyX

\begin_inset space ~
\end_inset

1.4.0.
 Layout files from older \SpecialChar LyX
 versions do not have an explicit file format and are considered to have 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Format
\begin_inset space ~
\end_inset

1
\end_layout

\end_inset

.
 The format for the present version of \SpecialChar LyX
 is format 60.
 But each version of \SpecialChar LyX
 is capable of reading earlier versions' layout files,
 just as they are capable of reading files produced by earlier versions of \SpecialChar LyX
.
 There is,
 however,
 no provision for converting to earlier formats.
\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "subsec:General-text-class"

\end_inset

General text class parameters
\end_layout

\begin_layout Standard
These are general parameters that govern the behavior of an entire document class.
 (This does 
\emph on
not
\emph default
 mean that they must appear in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.layout
\end_layout

\end_inset

 files rather than in modules.
 A module can contain any layout tag.)
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AddToCiteEngine <engine>
\end_layout

\end_inset

 Extends the possibilities for displaying citation references.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Citation-engine-description"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 for details.
 Must end with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AddToHTMLPreamble
\end_layout

\end_inset

 Adds information that will be output in the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<head>
\end_layout

\end_inset

 block when the document is output to XHTML.
 Typically,
 this would be used to output CSS style information,
 but it can be used for anything that can appear in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<head>
\end_layout

\end_inset

.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndPreamble
\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
AddToPreamble
\end_layout

\end_inset

 Adds information to the document preamble.
 Must end with
\begin_inset Newline newline
\end_inset


\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndPreamble
\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
BibInToc
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] If the document class adds the bibliography to the table of contents,
 add this option with value 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

 (or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
true
\end_layout

\end_inset

).
 This prevents the bibliography from being added twice.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CiteEngine <engine>
\end_layout

\end_inset

 Defines the possibilities for displaying citation references.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Citation-engine-description"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 for details.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 Primarily used in cite engine files (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Cite-Engine-Files"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

).
 Note that if you specify this in a layout file or module,
 any cite engine definition will be overridden.
 Also see 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AddToCiteEngine
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CiteFormat
\end_layout

\end_inset

 Defines formats for use in the display of bibliographic information.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Citation-format-description"
nolink "false"

\end_inset

 for details.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 Primarily used in cite engine files (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Cite-Engine-Files"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

).
 A cite format defined in a layout or module will override the cite engine definition.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CiteFramework
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
bibtex
\end_layout

\end_inset

,
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
biblatex
\end_layout

\end_inset

] Determines whether 
\family sans
Biblatex
\family default
 or Bib\SpecialChar TeX
 is used to generate a Bibliography.
 Primarily used in cite engine files (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Cite-Engine-Files"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ClassOptions
\end_layout

\end_inset

 Describes various global options supported by the document class.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:ClassOptions"
nolink "false"

\end_inset

 for a description.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\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
Columns
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
1
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
2
\end_layout

\end_inset

] Whether the class should 
\emph on
default
\emph default
 to having one or two columns.
 Can be changed in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings
\end_layout

\end_inset

 dialog.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Counter
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] This sequence defines the properties for a counter.
 If the counter does not yet exist,
 it is created;
 if it does exist,
 it is modified.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
\begin_inset Newline newline
\end_inset

See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Counters"
nolink "false"

\end_inset

 for details on counters.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DefaultFont
\end_layout

\end_inset

 Sets the default font used to display the document.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Font-description"
nolink "false"

\end_inset

 for how to declare fonts.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndFont
\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
DefaultModule
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<module>
\end_layout

\end_inset

] Specifies a module to be included by default with this document class.
 The module is specified as filename without the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.module
\end_layout

\end_inset

 extension.
 The user can still remove the module,
 but it will be active at the outset.
 (This applies only when new files are created,
 or when this class is chosen for an existing document.)
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DefaultStyle
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<style>
\end_layout

\end_inset

] This is the style that will be assigned to new paragraphs,
 usually 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Standard
\end_layout

\end_inset

.
 This will default to the first defined style if not given,
 but you are encouraged to use this directive.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookRoot
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] The root element (at the top of the document) to use when outputting documents with this class in DocBook.
 The default value is 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article
\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
DocBookForceAbstract
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
boolean
\end_layout

\end_inset

] If 
\begin_inset Quotes eld
\end_inset


\family typewriter
true
\family default

\begin_inset Quotes erd
\end_inset

,
 the root element will always have an 
\family typewriter
<abstract>
\family default
 tag.
 The default value is 
\begin_inset Quotes eld
\end_inset


\family typewriter
false
\family default

\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ExcludesModule
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<module>
\end_layout

\end_inset

] This tag indicates that the module (which is specified by filename without the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.module
\end_layout

\end_inset

 extension) cannot be used with this document class.
 This might be used in a journal-specific layout file to prevent,
 say,
 the use of the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
theorems-sec
\end_layout

\end_inset

 module that numbers theorems by section.
 This tag may 
\emph on
not
\emph default
 be used in a module.
 Modules have their own way of excluding other modules (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Layout-modules"
nolink "false"

\end_inset

).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Float
\end_layout

\end_inset

 Defines a new float.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Floats"
nolink "false"

\end_inset

 for details.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\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
HTMLPreamble
\end_layout

\end_inset

 Sets the information that will be output in the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<head>
\end_layout

\end_inset

 block when this document class is output to XHTML.
 Note that this will completely override any prior 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTMLPreamble
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AddToHTMLPreamble
\end_layout

\end_inset

 declarations.
 (Use
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AddToHTMLPreamble
\end_layout

\end_inset

 if you just want to add material to the preamble.) Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndPreamble
\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
HTMLTOCSection
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<style>
\end_layout

\end_inset

] The style to use for the table of contents,
 bibliography,
 and so forth,
 when the document is output to HTML.
 For articles,
 this should normally be 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Section
\end_layout

\end_inset

;
 for books 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Chapter
\end_layout

\end_inset

.
 If it is not given,
 then \SpecialChar LyX
 will attempt to figure out which layout to use.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
IfCounter
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<counter>
\end_layout

\end_inset

] Modifies the properties of the given counter.
 If the counter does not exist,
 the statement is ignored.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
\begin_inset Newline newline
\end_inset

See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Counters"
nolink "false"

\end_inset

 for details on counters.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Input
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<filename>
\end_layout

\end_inset

] This allows you to include another layout definition file within yours to avoid duplicating commands.
 Common examples are the standard layout files,
 for example,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
stdclass.inc
\end_layout

\end_inset

,
 which contains most of the basic layouts.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InputGlobal
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<filename>
\end_layout

\end_inset

] is a variant of the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Input
\end_layout

\end_inset

 command which does not look for files in the user directory.
 This allows to create a file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
name.layout
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
name.inc
\end_layout

\end_inset

 in the user directory which includes a global file with the same name via 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InputGlobal name
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InputGlobal name.inc
\end_layout

\end_inset

,
 respectively (with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Input
\end_layout

\end_inset

,
 the file would recursively include itself).
 This way,
 you can modify global files without having to completely copy them.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InsetLayout
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<type>
\end_layout

\end_inset

] This section (re-)defines the layout of an inset.
 It can be applied to an existing inset or to a new,
 user-defined inset,
 e.g.,
 a new character style.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
\begin_inset Newline newline
\end_inset

See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Flex-insets-and"
nolink "false"

\end_inset

 for more information.
 
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LeftMargin
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] A string that indicates the width of the left margin on the screen,
 for example,
 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MMMMM
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 (Note that this is not a `length',
 like 
\begin_inset Quotes eld
\end_inset

2ex
\begin_inset Quotes erd
\end_inset

.)
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MaxCiteNames
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
integer
\end_layout

\end_inset

] An integer that determines the maximal number of names displayed in an author-year citation before the citation switches to 
\begin_inset Quotes eld
\end_inset

FirstAuthor et al.
\begin_inset Quotes erd
\end_inset

.
 Primarily used in cite engine files (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Cite-Engine-Files"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ModifyInsetLayout
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<type>
\end_layout

\end_inset

] Modifies the layout of an inset.
 If the layout does not exist,
 this section is ignored.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\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
ModifyStyle
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<style>
\end_layout

\end_inset

] Modifies the properties of the given paragraph style.
 If the style does not exist,
 this section is ignored.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\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
NoCounter
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<counter>
\end_layout

\end_inset

] Deletes an existing counter,
 usually one defined in an included file.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NoFloat
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<float>
\end_layout

\end_inset

] Deletes an existing float.
 This is particularly useful when you want to suppress a float that has been defined in an input file.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NoStyle
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<style>
\end_layout

\end_inset

] Deletes an existing style.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
OutlinerName
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<type>
\end_layout

\end_inset

] [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<string>
\end_layout

\end_inset

] Define a new table of contents with type 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<type>
\end_layout

\end_inset

 and name 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<string>
\end_layout

\end_inset

.
 See also the AddToToc commands.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
OutputFormat
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<format>
\end_layout

\end_inset

] The file format (as defined in the \SpecialChar LyX
 preferences) produced by this document class.
 It is mainly useful when 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
OutputType
\end_layout

\end_inset

 is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
literate
\end_layout

\end_inset

 and one wants to define a new type of literate document.
 The format is reset to 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
latex
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 when the corresponding 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
OutputType
\end_layout

\end_inset

 parameter is encountered.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
OutputType
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
lat
\emph default
ex
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
literate
\end_layout

\end_inset

] Specifies what sort of output documents using this class will produce.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PackageOptions
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] Specifies options,
 given in the second string,
 for the package named by the first string.
 For example,
 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PackageOptions natbib square
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 will cause 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
natbib
\end_layout

\end_inset

 to be loaded with the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
square
\end_layout

\end_inset

 option.
 (For \SpecialChar TeX
perts,
 this causes \SpecialChar LyX
 to output:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
PassOptionsToPackage{natbib}{square}
\end_layout

\end_inset

 prior to loading 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
natbib
\end_layout

\end_inset

.)
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PageSize
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
custom
\emph default
,
 letter,
 legal,
 executive,
 a0,
 a1,
 a2,
 a3,
 a4,
 a5,
 a6,
 b0,
 b1,
 b2,
 b3,
 b4,
 b5,
 b6,
 c0,
 c1,
 c2,
 c3,
 c4,
 c5,
 c6,
 b0j,
 b1j,
 b2j,
 b3j,
 b4j,
 b5j,
 b6j
\end_layout

\end_inset

] The default page size.
 This is used by some converters.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PageStyle
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
plain
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
empty
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
headings
\end_layout

\end_inset

] The default pagestyle.
 Can be changed in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings
\end_layout

\end_inset

 dialog.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Preamble
\end_layout

\end_inset

 Sets the preamble for the \SpecialChar LaTeX
 document.
 Note that this will completely override any prior 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Preamble
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AddToPreamble
\end_layout

\end_inset

 declarations.
 (Use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AddToPreamble
\end_layout

\end_inset

 if you just want to add material to the preamble.) Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndPreamble
\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
ProvideInsetLayout
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<type>
\end_layout

\end_inset

] Defines the layout of an inset if it does not already exist.
 If the layout does exist,
 this section is ignored.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\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
Provides
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Whether the class already provides the feature 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

.
 A feature is in general the name of a package (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
amsmath
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
makeidx
\end_layout

\end_inset

) or a macro (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
url
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
boldsymbol
\end_layout

\end_inset

).
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "chap:List-of-functions"
nolink "false"

\end_inset

 for the list of features.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ProvidesModule
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] Indicates that this layout provides the functionality of the module mentioned,
 which should be specified by the filename without the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.module
\end_layout

\end_inset

 extension.
 This will typically be used if the layout includes the module directly,
 rather than using the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DefaultModule
\end_layout

\end_inset

 tag to indicate that it ought to be used.
 It could also be used in a module that provided an alternate implementation of the same functionality.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ProvideStyle
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<style>
\end_layout

\end_inset

] Creates a new paragraph style if it does not already exist.
 If the style does exist,
 this section is ignored.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\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
Requires
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] Whether the class requires the feature 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

.
 Multiple features must be separated by commas.
 Note that you can only request supported features.
 (See 
\begin_inset CommandInset ref
LatexCommand ref
reference "chap:List-of-functions"
nolink "false"

\end_inset

 for the list of features.).
 If you require a package with specific options,
 you can additionally use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PackageOptions
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
RightMargin
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] A string that indicates the width of the right margin on the screen,
 for example,
 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MMMMM
\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
SecNumDepth
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
int=3
\end_layout

\end_inset

] Sets which divisions get numbered.
 Corresponds to the
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
secnumdepth
\end_layout

\end_inset

 counter in \SpecialChar LaTeX
.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Sides
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
1
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
2
\end_layout

\end_inset

] Whether the class-default should be printing on one or both sides of the paper.
 Can be changed in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings
\end_layout

\end_inset

 dialog.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Style
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<name>
\end_layout

\end_inset

] This sequence defines a paragraph style.
 If the style does not yet exist,
 it is created;
 if it does exist,
 its parameters are modified.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
\begin_inset Newline newline
\end_inset

See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Paragraph-Styles"
nolink "false"

\end_inset

 for details on paragraph styles.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TableStyle
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<name>
\end_layout

\end_inset

] defines the default table style that is used when inserting a table.
 The following styles are available:
\end_layout

\begin_deeper
\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Formal_with_Footline
\end_layout

\end_inset

:
 formal (
\begin_inset Quotes eld
\end_inset

booktabs
\begin_inset Quotes erd
\end_inset

) style with horizontal lines only,
 using a bold top and bottom line,
 the first and last row are additionally separated from the table body with a thin middle line.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Formal_without_Footline
\end_layout

\end_inset

:
 same as the above,
 but the last row is not separated with a middle line from the body.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Simple_Grid
\end_layout

\end_inset

:
 Simple table lines.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Grid_with_Head
\end_layout

\end_inset

:
 Like 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Simple_Grid
\end_layout

\end_inset

,
 but with the header row offset with a second horizontal line.
 This is also the default style of \SpecialChar LyX
.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
No_Borders
\end_layout

\end_inset

:
 Table without lines.
\end_layout

\end_deeper
\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TitleLatexName
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string="maketitle"
\end_layout

\end_inset

] The name of the command or environment to be used with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TitleLatexType
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TitleLatexType
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
CommandAfter
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Environment
\end_layout

\end_inset

] Indicates what kind of markup is used to define the title of a document.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CommandAfter
\end_layout

\end_inset

 means that the macro with name 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TitleLatexName
\end_layout

\end_inset

 will be inserted after the last layout which has 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InTitle
\begin_inset space ~
\end_inset

1
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Environment
\end_layout

\end_inset

 corresponds to the case where all layouts which have 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InTitle
\begin_inset space ~
\end_inset

1
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 should be enclosed into the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TitleLatexName
\end_layout

\end_inset

 environment.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TocDepth
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
int=3
\end_layout

\end_inset

] Sets which divisions are included in the table of contents.
 Corresponds to the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
tocdepth
\end_layout

\end_inset

 counter in \SpecialChar LaTeX
.
\end_layout

\begin_layout Subsection
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ClassOptions
\end_layout

\end_inset

 section
\begin_inset CommandInset label
LatexCommand label
name "subsec:ClassOptions"

\end_inset


\end_layout

\begin_layout Standard
The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ClassOptions
\end_layout

\end_inset

 section can contain the following entries:
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
FontSize
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string="10|11|12"
\end_layout

\end_inset

] The list of available font sizes for the document's main font,
 separated by 
\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

.
 Any number is possible.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
FontSizeFormat
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] The format for the font size option.
 Default:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$spt
\end_layout

\end_inset

.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$s
\end_layout

\end_inset

 is a placeholder for the font size.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PageSize
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string="letter|\SpecialChar allowbreak
legal|\SpecialChar allowbreak
executive|\SpecialChar allowbreak
a0|\SpecialChar allowbreak
a1|\SpecialChar allowbreak
a2|\SpecialChar allowbreak
a3|\SpecialChar allowbreak
a4|\SpecialChar allowbreak
a5|\SpecialChar allowbreak
a6|\SpecialChar allowbreak
b0|\SpecialChar allowbreak
b1|\SpecialChar allowbreak
b2|\SpecialChar allowbreak
b3|\SpecialChar allowbreak
b4|\SpecialChar allowbreak
b5|\SpecialChar allowbreak
b6|\SpecialChar allowbreak
c0|\SpecialChar allowbreak
c1|\SpecialChar allowbreak
c2|\SpecialChar allowbreak
c3|\SpecialChar allowbreak
c4|\SpecialChar allowbreak
c5|\SpecialChar allowbreak
c6|\SpecialChar allowbreak
b0j|\SpecialChar allowbreak
b1j|\SpecialChar allowbreak
b2j|\SpecialChar allowbreak
b3j|\SpecialChar allowbreak
b4j|\SpecialChar allowbreak
b5j|\SpecialChar allowbreak
b6j"
\end_layout

\end_inset

] The list of available page sizes,
 separated by 
\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

.
 Currently,
 only the listed sizes are supported.
 Other sizes might be entered as custom class option.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PageSizeFormat
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] The format for the page size option.
 Default:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$spaper
\end_layout

\end_inset

.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$s
\end_layout

\end_inset

 is a placeholder for the paper size.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PageStyle
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string="empty|plain|headings|fancy"
\end_layout

\end_inset

] The list of available page sty\SpecialChar softhyphen
les,
 separated by 
\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

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Other
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string=""
\end_layout

\end_inset

] Some document class options,
 separated by a comma,
 that will be added to the optional part of the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
documentclass
\end_layout

\end_inset

 command.
\end_layout

\begin_layout Standard
The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ClassOptions
\end_layout

\end_inset

 section must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Subsection
Paragraph styles
\begin_inset CommandInset label
LatexCommand label
name "subsec:Paragraph-Styles"

\end_inset


\end_layout

\begin_layout Standard
A paragraph style description looks like this:
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Note that this will either define a new style or modify an existing one.
\end_layout

\end_inset


\end_layout

\begin_layout LyX-Code
Style 
\family roman
\emph on
name
\end_layout

\begin_layout LyX-Code
 ...
\end_layout

\begin_layout LyX-Code
End
\end_layout

\begin_layout Standard
where the following commands are allowed:
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AddToToc
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=""] This paragraph will appear in the table of contents of the given type.
 An empty string disables.
 See also the OutlinerName and the IsTocCaption commands.
 Default:
 disabled.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Align
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
block
\emph default
,
 left,
 right,
 center
\end_layout

\end_inset

] Paragraph alignment.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AlignPossible
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
block
\emph default
,
 left,
 right,
 center
\end_layout

\end_inset

] A comma separated list of permitted alignments.
 (Some \SpecialChar LaTeX
 styles prohibit certain alignments,
 since those wouldn't make sense.
 For example a right-aligned or centered enumeration isn't possible.)
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Argument
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
int
\end_layout

\end_inset

] Defines argument number <int> of a command\SpecialChar breakableslash
environment associated with the current style.
 The definition must end with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndArgument
\end_layout

\end_inset

.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Arguments"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 for more information.
 
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AutoNests
\end_layout

\end_inset

 Includes a comma-separated list of layouts that should be nested in and after the current layout.
 Only makes sense for nestable layouts (such as environments).
 Must be ended by 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndAutoNests
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 See also 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
IsAutoNestedBy
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
BabelPreamble
\end_layout

\end_inset

 Note that this will completely override any prior 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
BabelPreamble
\end_layout

\end_inset

 declaration for this style.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndBabelPreamble
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:I18n"
nolink "false"

\end_inset

 for details on its use.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
BottomSep
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
float=0
\end_layout

\end_inset

]
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Note that a `float' here is a real number,
 such as:
 1.5.
\end_layout

\end_inset

 The vertical space with which the last of a chain of paragraphs with this style is separated from the following paragraph.
 If the next paragraph has another style,
 the separations are not simply added,
 but the maximum is taken.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Category
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] The category for this style.
 This is used to group related styles in the style combobox on the toolbar.
 Any string can be used,
 but you may want to use existing categories with your own styles.
 
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CopyStyle
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] Copies all the features of an existing style into the current one.
 Note that this copies the style as it is defined at that point.
 Later changes to it will not affect styles into which it has been copied.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DependsOn
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<name>
\end_layout

\end_inset

] The name of a style whose preamble should be output 
\emph on
before
\emph default
 this one.
 This allows to ensure some ordering of the preamble snippets when macros definitions depend on one another.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Note that,
 besides that functionality,
 there is no way to ensure any ordering of preambles.
 The ordering that you see in a given version of \SpecialChar LyX
 may change without warning in later versions.
\end_layout

\end_inset


\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookGenerateTitle
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
bool=false
\end_layout

\end_inset

] Generates a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
title
\end_layout

\end_inset

 tag after the wrapper tag.
 This parameter should only be used with
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookWrapperTag
\end_layout

\end_inset

,
 otherwise the title will be output
\emph on
 before
\emph default
 the contents of the environment.
 The generated title is the same as the LyXHTML label:
 a combination of the environment type and its number.
 A major use is when DocBook has no close mapping for LaTeX environments and users must fallback to using a generic container such as
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
figure
\end_layout

\end_inset

,
 which requires a title although there is none in LaTeX.
 This feature is heavily used for theorem-like environments.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndLabelType
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
No_Label
\emph default
,
 Box,
 Filled_Box,
 Static
\end_layout

\end_inset

] The type of label that stands at the end of the paragraph (or sequence of paragraphs if 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexType
\end_layout

\end_inset

 is
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Environment
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Item_Environment
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
List_Environment
\end_layout

\end_inset

).
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
No_Label
\end_layout

\end_inset

 means 
\begin_inset Quotes eld
\end_inset

nothing
\begin_inset Quotes erd
\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Box
\end_layout

\end_inset

 (resp.
\begin_inset space \space{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Filled_Box
\end_layout

\end_inset

) is a white (resp.
\begin_inset space ~
\end_inset

black) square suitable for end of proof markers,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Static
\end_layout

\end_inset

 is an explicit text string.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndLabelString
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string=""
\end_layout

\end_inset

] The string used for a label with a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Static
\end_layout

\end_inset


\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndLabelType
\end_layout

\end_inset

.
 
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Font
\end_layout

\end_inset

 The font used for both the text body 
\emph on
and
\emph default
 the label.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Font-description"
nolink "false"

\end_inset

.
 Note that defining this font automatically defines the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelFont
\end_layout

\end_inset

 to the same value.
 So you should define this one first if you also want to define 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelFont
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ForceLocal
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
int=0
\end_layout

\end_inset

] Used for backporting new styles to stable \SpecialChar LyX
 versions.
 The first stable version that supports this tag is \SpecialChar LyX
 2.1.0.
 The argument is a number which may either be 0,
 -1 or any value greater than zero.
 If the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ForceLocal
\end_layout

\end_inset

 flag of a style is greater than zero,
 it will always be written to the document header.
 If a .lyx file is read,
 the style definitions from the document header are added to the document class.
 Therefore even older \SpecialChar LyX
 versions can handle the style.
 The argument of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ForceLocal
\end_layout

\end_inset

 is a version number:
 if the style is read,
 and the version number is less than the version number of the already existing style in the document class,
 the new style is ignored.
 If the version number is greater,
 the new style replaces the existing style.
 A value of -1 means an infinite version number,
 i.
\begin_inset space \thinspace{}
\end_inset

e.
\begin_inset space \space{}
\end_inset

the style is always used.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
FreeSpacing
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Usually \SpecialChar LyX
 does not allow you to insert more than one space between words,
 since a space is considered as the separation between two words,
 not a character or symbol of its own.
 This is a very fine thing but sometimes annoying,
 for example,
 when typing program code or plain \SpecialChar LaTeX
 code.
 For this reason,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
FreeSpacing
\end_layout

\end_inset

 can be enabled.
 \SpecialChar LyX
 will create non-breaking spaces for the additional blanks when 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Passthru 1
\end_layout

\end_inset

 is not specified.
 Note that 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
FreeSpacing
\end_layout

\end_inset

 implies 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
KeepEmpty
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTML*
\end_layout

\end_inset

 These tags are used with XHTML output.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Paragraph-Style-XHTML"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InPreamble
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] If 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

,
 marks the style as to be included in the document preamble and not in the document body.
 This is useful for document classes that want such information as the title and author to appear in the preamble.
 Note that this works only for styles for which the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexType
\end_layout

\end_inset

 is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Command
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Paragraph
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InTitle
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] If 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

,
 marks the style as being part of a title block (see also the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TitleLatexType
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TitleLatexName
\end_layout

\end_inset

 global entries).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
IsAutoNestedBy
\end_layout

\end_inset

 Includes a comma-separated list of layouts after which this one should be nested.
 Only makes sense with regard to nestable layouts (such as environments).
 Must be ended by 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndIsAutoNestedBy
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 See also 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AutoNests
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
IsTocCaption
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] If this is set to 1 and AddToToc is enabled,
 the paragraph adds a summary of its contents in its item in the table of contents.
 Otherwise,
 only the label,
 if it exists,
 appears.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ItemCommand
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string="item"
\end_layout

\end_inset

] The \SpecialChar LaTeX
 command sequence declaring an item in a list.
 The command is to be defined without the preceding backslash (the default is 
\begin_inset Quotes eld
\end_inset

item
\begin_inset Quotes erd
\end_inset

,
 resulting in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
item
\end_layout

\end_inset

 in the \SpecialChar LaTeX
 output).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ItemSep
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
float=0
\end_layout

\end_inset

] This provides extra space between paragraphs that have the same style.
 If you put other styles into an environment,
 each is separated with the environment's 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ParSep
\end_layout

\end_inset

.
 But the whole items of the environment are additionally separated with this 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ItemSep
\end_layout

\end_inset

.
 Note that this is a
\emph on
 multiplier.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
KeepEmpty
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Usually \SpecialChar LyX
 does not allow you to leave a paragraph empty,
 since it would lead to empty \SpecialChar LaTeX
 output.
 There are some cases where this could be desirable however:
 in a letter template,
 the required fields can be provided as empty fields,
 so that people do not forget them;
 in some special classes,
 a style can be used as some kind of break,
 which does not contain actual text.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelBottomsep
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
float=0
\end_layout

\end_inset

] The vertical space between the label and the text body.
 Only used for labels that are above the text body (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Top_Environment
\end_layout

\end_inset

 and
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Centered_Top_Environment
\end_layout

\end_inset

).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelCounter
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string=""
\end_layout

\end_inset

] The name of the counter for automatic numbering.
 In order to have the counter appear with your label,
 you will need to reference it in the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\family typewriter
LabelString
\end_layout

\end_inset

.
 This will work with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelType
\end_layout

\end_inset

s,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Static
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Above
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Centered
\end_layout

\end_inset

,
 at least.
\begin_inset Newline newline
\end_inset

This 
\emph on
may
\emph default
 also be given if 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelType
\end_layout

\end_inset

 is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Enumerate
\end_layout

\end_inset

,
 though this case is a bit complicated.
 Suppose you declare 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelCounter myenum
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 Then the actual counters used are 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
myenumi
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
myenumii
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
myenumiii
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
myenumiv
\end_layout

\end_inset

,
 much as in \SpecialChar LaTeX
.
 These counters must all be declared separately.
\begin_inset Newline newline
\end_inset

See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Counters"
nolink "false"

\end_inset

 for details on counters.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelFont
\end_layout

\end_inset

 The font used for the label.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Font-description"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelIndent
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string=""
\end_layout

\end_inset

] Text that indicates how far a label should be indented.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelSep
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string=""
\end_layout

\end_inset

] Text that indicates the amount of horizontal space between the label and the text body.
 Only used for labels that are not above the text body.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelString
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string=""
\end_layout

\end_inset

] The string used for the label.
 When 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelCounter
\end_layout

\end_inset

 is set,
 this string can be contain the special formatting commands described in 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Counters"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelStringAppendix
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string=""
\end_layout

\end_inset

] This is used inside the appendix instead of
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelString
\end_layout

\end_inset

.
 Note that every 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelString
\end_layout

\end_inset

 statement resets
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelStringAppendix
\end_layout

\end_inset

 too.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelType
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
No_Label
\emph default
,
 Manual,
 Static,
 Above,
 
\begin_inset Newline newline
\end_inset

Centered,
 Sensitive,
 Enumerate,
\begin_inset Newline newline
\end_inset

Itemize,
 Bibliography
\end_layout

\end_inset

]
\end_layout

\begin_deeper
\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Manual
\end_layout

\end_inset

 means the label is the very first word (up to the first real blank).
 Use non-breaking spaces if you want more than one word as the label.
 
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Static
\end_layout

\end_inset

 means the label is simply what is declared as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelString
\end_layout

\end_inset

.
 This will be displayed 
\begin_inset Quotes eld
\end_inset

inline
\begin_inset Quotes erd
\end_inset

,
 at the beginning of the paragraph.
 If the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexType
\end_layout

\end_inset

 is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Environment
\end_layout

\end_inset

,
 then it will be displayed only in the first paragraph of any sequence of paragraphs with the same 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Style
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Above
\end_layout

\end_inset


\begin_inset space ~
\end_inset

and
\begin_inset space ~
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Centered
\end_layout

\end_inset

 are special cases of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Static
\end_layout

\end_inset

.
 The label will be printed above the paragraph either at the beginning of the line or centered.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Sensitive
\end_layout

\end_inset

 is a special case for the caption-labels 
\begin_inset Quotes eld
\end_inset

Figure
\begin_inset Quotes erd
\end_inset

 and 
\begin_inset Quotes eld
\end_inset

Table
\begin_inset Quotes erd
\end_inset

.
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Sensitive
\end_layout

\end_inset

 means the (hardcoded) label string depends on the kind of float:
 It is hardcoded to be `FloatType N',
 where N is the value of the counter associated with the float.
 For the case that a caption is inserted outside of a float the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelString
\end_layout

\end_inset

 will appear as 
\begin_inset Quotes eld
\end_inset

Senseless!
\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Enumerate
\end_layout

\end_inset

 produces the usual sort of enumeration labels.
 The number type needs to be set in the 
\family sans
Counter
\family default
,
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Counters"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Itemize
\end_layout

\end_inset

 produces various bullets at the different levels.
 The bullet types displayed can be set via 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Document\SpecialChar menuseparator
Settings\SpecialChar menuseparator
Bullets
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Bibliography
\end_layout

\end_inset

 should be used only with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexType BibEnvironment
\end_layout

\end_inset

.
\end_layout

\end_deeper
\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LangPreamble
\end_layout

\end_inset

 Note that this will completely override any prior 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LangPreamble
\end_layout

\end_inset

 declaration for this style.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndLangPreamble
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:I18n"
nolink "false"

\end_inset

 for details on its use.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexName
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<name>
\end_layout

\end_inset

] The name of the corresponding \SpecialChar LaTeX
 stuff.
 Either the environment or command name.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexParam
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<parameter>
\end_layout

\end_inset

] An optional parameter for the corresponding 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexName
\end_layout

\end_inset

 stuff.
 This parameter cannot be changed from within \SpecialChar LyX
 (use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Argument
\end_layout

\end_inset

 for customizable parameters).
 This will be output as is after all \SpecialChar LaTeX
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Argument
\end_layout

\end_inset

s.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexType
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
Paragraph
\emph default
,
 Command,
 Environment,
 Item_Environment,
\begin_inset Newline newline
\end_inset

List_Environment,
 Bib_Environment
\end_layout

\end_inset

] How the style should be translated into \SpecialChar LaTeX
.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexType
\end_layout

\end_inset

 is perhaps a bit misleading,
 since these rules apply to SGML classes,
 too.
 Visit the SGML class files for specific examples.
\end_layout

\end_inset


\end_layout

\begin_deeper
\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Paragraph
\end_layout

\end_inset

 means nothing special.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Command
\end_layout

\end_inset

 means 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash

\emph on
LatexName
\emph default
{\SpecialChar ldots
}
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Environment
\end_layout

\end_inset

 means 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
begin{
\emph on
LatexName
\emph default
}\SpecialChar ldots

\backslash
end{
\emph on
LatexName
\emph default
}
\end_layout

\end_inset

.
 
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Item_Environment
\end_layout

\end_inset

 is the same as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Environment
\end_layout

\end_inset

,
 except that an 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
item
\end_layout

\end_inset

 is generated for each paragraph of this environment.
 
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
List_Environment
\end_layout

\end_inset

 is the same as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Item_Environment
\end_layout

\end_inset

,
 except that
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelWidthString
\end_layout

\end_inset

 is passed as an argument to the environment.
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelWidthString
\end_layout

\end_inset

 can be defined in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Edit\SpecialChar menuseparator
Paragraph
\begin_inset space ~
\end_inset

settings
\end_layout

\end_inset

 dialog.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Bib_Environment
\end_layout

\end_inset

 is like 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Environment
\end_layout

\end_inset

 but adds the necessary mandatory argument (the longest label) to the begin statement of the bibliography environment:
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
begin{thebibliography}{99}
\end_layout

\end_inset

.
 It is therefore only useful for bibliography environments.
 The default longest label 
\begin_inset Quotes eld
\end_inset

99
\begin_inset Quotes erd
\end_inset

 can be changed by the user in the paragraph settings of a bibliography item.
\end_layout

\begin_layout Standard
Putting the last few things together,
 the \SpecialChar LaTeX
 output will be either:
 
\end_layout

\begin_layout LyX-Code

\backslash
LatexName[LatexParam]{\SpecialChar ldots
}
\end_layout

\begin_layout Standard
or:
 
\end_layout

\begin_layout LyX-Code

\backslash
begin{LatexName}[LatexParam] \SpecialChar ldots
 
\backslash
end{LatexName}.
\end_layout

\begin_layout Standard
depending upon the \SpecialChar LaTeX
 type.
\end_layout

\end_deeper
\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LeftDelim
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] A string that is put at the beginning of the style content.
 A line break in the output can be indicated by 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<br/>
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LeftMargin
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string=""
\end_layout

\end_inset

] If you put styles into environments,
 the different 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LeftMargin
\end_layout

\end_inset

 are not simply added,
 but added with a factor 
\begin_inset Formula $\frac{4}{\mathrm{depth}+4}$
\end_inset

.
 Note that this parameter is also used when 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Margin
\end_layout

\end_inset

 is defined as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Manual
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Dynamic
\end_layout

\end_inset

.
 Then it is added to the manual or dynamic margin.
\begin_inset Newline newline
\end_inset

For example 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MM
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 means that the paragraph is indented with the width of 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MM
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 in the normal font.
 You can get a negative width by prefixing the string with 
\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

.
 This way was chosen so that the look is the same with each used screen font.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Margin
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
Static
\emph default
,
 Manual,
 Dynamic,
 First_Dynamic,
 Right_Address_Box
\end_layout

\end_inset

] 
\begin_inset Newline newline
\end_inset

The kind of margin that the style has on the left side.
\end_layout

\begin_deeper
\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Static
\end_layout

\end_inset

 just means a fixed margin.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Manual
\end_layout

\end_inset

 means that the left margin depends on the string entered in the 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Edit\SpecialChar menuseparator
Paragraph
\begin_inset space ~
\end_inset

Settings
\end_layout

\end_inset

 dialog.
 This is used to typeset nice lists without tabulators.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Dynamic
\end_layout

\end_inset

 means that the margin depends on the size of the label.
 This is used for automatic enumerated headlines.
 It is obvious that the headline 
\begin_inset Quotes eld
\end_inset

5.4.3.2.1 Very long headline
\begin_inset Quotes erd
\end_inset

 must have a wider left margin (as wide as 
\begin_inset Quotes eld
\end_inset

5.4.3.2.1
\begin_inset Quotes erd
\end_inset

 plus the space) than 
\begin_inset Quotes eld
\end_inset

3.2 Very long headline
\begin_inset Quotes erd
\end_inset

,
 even if standard 
\begin_inset Quotes eld
\end_inset

word processors
\begin_inset Quotes erd
\end_inset

 are not able to do this.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
First_Dynamic
\end_layout

\end_inset

 is similar,
 but only the very first row of the paragraph is dynamic,
 while the others are static;
 this is used,
 for example,
 for descriptions.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Right_Address_Box
\end_layout

\end_inset

 means the margin is chosen in a way that the longest row of this paragraph fits to the right margin.
 This is used to typeset an address on the right edge of the page.
\end_layout

\end_deeper
\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NeedProtect
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Whether fragile commands in this style should be 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
protect
\end_layout

\end_inset

'ed.
 (Note:
 This is 
\emph on
not
\emph default
 whether this command should itself be protected.)
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NeedCProtect
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-1
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Value 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

 causes macros that contain this layout to be protected with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
cprotect
\end_layout

\end_inset

 (cf.
 package 
\family sans
cprotect
\family default
) if necessary and thus allows (some) verbatim stuff in macros.
 With the default setting (value 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

),
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
cprotect
\end_layout

\end_inset

 is used if a nested element requires it.
 Value 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-1
\end_layout

\end_inset

 prevents any use of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
cprotect
\end_layout

\end_inset

 within this layout,
 even if required by a nested element.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NeedMBoxProtect
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Whether specific commands in this style (such as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
cite
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
ref
\end_layout

\end_inset

) should be protected in an 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
mbox
\end_layout

\end_inset

.
 This is particularly needed for styles that draw on 
\family sans
ulem
\family default
 or 
\family sans
soul
\family default
 commands which parse their content in complex ways.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Newline
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
1
\end_layout

\end_inset

] Whether newlines are translated into \SpecialChar LaTeX
 newlines (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash

\backslash

\end_layout

\end_inset

) or not.
 The translation can be switched off to allow more comfortable \SpecialChar LaTeX
 editing inside \SpecialChar LyX
.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NextNoIndent
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] If set to true,
 and if 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DefaultStyle
\end_layout

\end_inset

 (usually 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Standard
\end_layout

\end_inset

) paragraphs are being indented,
 then the indentation of such a paragraph following one of this type will be suppressed.
 (So this will not affect the display of non-default paragraphs.)
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ObsoletedBy
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<name>
\end_layout

\end_inset

] Name of a style that has replaced this style.
 This is used to rename a style,
 while keeping backward compatibility.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ParagraphGroup
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Determines whether consecutive paragraphs of the same type are treated as belonging together.
 This has the effect that the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
GuiLabel
\end_layout

\end_inset

 is only printed once before such a group.
 By default,
 this is true for 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LaTeXType
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Environment
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Bib_Environment
\end_layout

\end_inset

 and false for all other types.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ParbreakIsNewline
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Indicates that paragraphs will not be separated by an empty line in \SpecialChar LaTeX
 output,
 but only by a line break;
 together with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PassThru 1
\end_layout

\end_inset

,
 this allows to emulate a plain text editor (like the ERT inset).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ParIndent
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string=""
\end_layout

\end_inset

] The indent of the very first line of a paragraph.
 The
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Parindent
\end_layout

\end_inset

 will be fixed for a certain style.
 The exception is the default style,
 since the indentation for these paragraphs can be prohibited with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NextNoIndent
\end_layout

\end_inset

.
 Also,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Standard
\end_layout

\end_inset

 style paragraphs inside environments use the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Parindent
\end_layout

\end_inset

 of the environment,
 not their native one.
 For example,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Standard
\end_layout

\end_inset

 paragraphs inside an enumeration are not indented.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ParSep
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
float=0
\end_layout

\end_inset

] The vertical space between two paragraphs of this style.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Parskip
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
float=0
\end_layout

\end_inset

] \SpecialChar LyX
 allows the user to choose either 
\begin_inset Quotes eld
\end_inset

indent
\begin_inset Quotes erd
\end_inset

 or 
\begin_inset Quotes eld
\end_inset

skip
\begin_inset Quotes erd
\end_inset

 to separate paragraphs.
 When 
\begin_inset Quotes eld
\end_inset

indent
\begin_inset Quotes erd
\end_inset

 is chosen,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Parskip
\end_layout

\end_inset

 is ignored.
 When 
\begin_inset Quotes eld
\end_inset

skip
\begin_inset Quotes erd
\end_inset

 is chosen,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ParIndent
\end_layout

\end_inset

 is ignored and all paragraphs are separated by the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Parskip
\end_layout

\end_inset

 argument.
 The vertical space is calculated with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Parskip
\begin_inset space ~
\end_inset

* DefaultHeight
\end_layout

\end_inset

 where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DefaultHeight
\end_layout

\end_inset

 is the height of a row with the normal font.
 This way,
 the look stays the same with different screen fonts.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PassThru
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Whether the contents of this paragraph should be output in raw form,
 meaning without special translations that \SpecialChar LaTeX
 would require.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PassThruChars
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

]
\family typewriter
 
\family default
Defines individual characters that should be output in raw form,
 meaning without special translations that \SpecialChar LaTeX
 would require.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Preamble
\end_layout

\end_inset

 Information to be included in the \SpecialChar LaTeX
 preamble when this style is used.
 Used to define macros,
 load packages,
 etc.,
 required by this particular style.
 Must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndPreamble
\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
RefPrefix
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] The prefix to use when creating labels referring to paragraphs of this type.
 This allows the use of formatted references.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Requires 
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] Whether the style requires the feature 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

 (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "chap:List-of-functions"
nolink "false"

\end_inset

 for the list of features).
 If you require a package with specific options,
 you can additionally use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PackageOptions
\end_layout

\end_inset

 as a general text class parameter (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:General-text-class"
nolink "false"

\end_inset

).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ResetArgs
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Resets the \SpecialChar LaTeX
 arguments of this style (as defined via the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Argument
\end_layout

\end_inset

 tag).
 This is useful if you have copied a style via 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CopyStyle
\end_layout

\end_inset

,
 but you do not want to inherit its (required and optional) arguments.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ResumeCounter
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Resumes a counter that is usually reset at each new sequence of layouts.
 This is currently only useful when 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelType
\end_layout

\end_inset

 is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Enumerate
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
RightDelim
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] A string that is put at the end of the layout content.
 A line break in the output can be indicated by 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<br/>
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
RightMargin
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string=""
\end_layout

\end_inset

] Similar to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LeftMargin
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Spacing
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
single
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
onehalf
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
double
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
other
\begin_inset space ~
\end_inset

<value>
\end_layout

\end_inset

] This defines what the default spacing should be in the style.
 The arguments 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
single
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
onehalf
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
double
\end_layout

\end_inset

 correspond respectively to a multiplier value of 1,
 1.25 and 1.667.
 If you specify the argument 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
other
\end_layout

\end_inset

,
 then you must also provide a value argument which will be the actual multiplier value.
 Note that,
 contrary to other parameters,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Spacing
\end_layout

\end_inset

 implies the generation of specific \SpecialChar LaTeX
 code,
 using the \SpecialChar LaTeX
 package 
\family roman

\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
setspace
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Spellcheck
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
1
\end_layout

\end_inset

] Allow spell-checking paragraphs of this style.
 Default is true.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
StepParentCounter
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Steps the parent counter of a given counter at the beginning of a new sequence of layouts.
 This is currently only useful when 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelType
\end_layout

\end_inset

 is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Enumerate
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TextFont
\end_layout

\end_inset

 The font used for the text body .
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Font-description"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TocLevel
\end_layout

\end_inset


\series medium
 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\series medium
int=3
\end_layout

\end_inset

]
\series default
 The level of the style in the table of contents.
 This is used for automatic numbering of section headings.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ToggleIndent
\end_layout

\end_inset

 [
\emph on

\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
default
\end_layout

\end_inset


\emph default
,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
always
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
never
\end_layout

\end_inset

] This tag determines whether the first line indentation of this paragraph can be toggled via the Paragraph settings dialog.
 If 
\emph on

\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph off
default
\end_layout

\end_inset


\emph default
 is set,
 indentation can be toggled if the document settings use 
\begin_inset Quotes eld
\end_inset

indent
\begin_inset Quotes erd
\end_inset

 paragraph style,
 with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
always
\end_layout

\end_inset

,
 indentation can always be toggled,
 notwithstanding the document settings,
 with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
never
\end_layout

\end_inset

,
 indentation can never be toggled.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TopSep
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
float=0
\end_layout

\end_inset

] The vertical space with which the very first of a chain of paragraphs with this style is separated from the previous paragraph.
 If the previous paragraph has another style,
 the separations are not simply added,
 but the maximum is taken.
\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "subsec:I18n"

\end_inset

Internationalization of Paragraph Styles
\end_layout

\begin_layout Standard
\SpecialChar LyX
 has long supported internationalization of layout information,
 but,
 until version 2.0,
 this applied only to the user interface and not to,
 say,
 PDF output.
 Thus,
 French authors were forced to resort to ugly hacks if they wanted `
\lang french
Théorème
\lang english
 1' instead of `Theorem 1'.
 Thanks to Georg Baum,
 that is no longer the case.
\end_layout

\begin_layout Standard
If a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Style
\end_layout

\end_inset

 defines text that is to appear in the typeset document,
 it may use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LangPreamble
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
BabelPreamble
\end_layout

\end_inset

 to support non-English and even multi-language documents correctly.
 The following excerpt (from the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
theorems-ams.inc
\end_layout

\end_inset

 file) shows how this works:
\end_layout

\begin_layout LyX-Code
Preamble
\end_layout

\begin_deeper
\begin_layout LyX-Code
  
\backslash
theoremstyle{remark}
\end_layout

\begin_layout LyX-Code
  
\backslash
newtheorem{claim}[thm]{
\backslash
protect
\backslash
claimname}
\end_layout

\begin_layout LyX-Code
EndPreamble
\end_layout

\begin_layout LyX-Code
LangPreamble
\end_layout

\begin_layout LyX-Code
  
\backslash
providecommand{
\backslash
claimname}{_(Claim)}
\end_layout

\begin_layout LyX-Code
EndLangPreamble
\end_layout

\begin_layout LyX-Code
BabelPreamble
\end_layout

\begin_layout LyX-Code
    
\backslash
addto
\backslash
captions$$lang{
\backslash
renewcommand{
\backslash
claimname}{_(Claim)}}
\end_layout

\begin_layout LyX-Code
EndBabelPreamble
\end_layout

\end_deeper
\begin_layout Standard
In principle,
 any legal \SpecialChar LaTeX
 may appear in the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LangPreamble
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
BabelPreamble
\end_layout

\end_inset

 tags,
 but in practice they will typically look as they do here.
 The key to correct translation of the typeset text is the definition of the \SpecialChar LaTeX
 command 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
claimname
\end_layout

\end_inset

 and its use in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
newtheorem
\end_layout

\end_inset

.
 
\end_layout

\begin_layout Standard
The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LangPreamble
\end_layout

\end_inset

 tag provides for internationalization based upon the overall language of the document.
 The contents of the tag will be included in the preamble,
 just as with the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Preamble
\end_layout

\end_inset

 tag.
 What makes it special is the use of the 
\begin_inset Quotes eld
\end_inset

function
\begin_inset Quotes erd
\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
_()
\end_layout

\end_inset

,
 which will be replaced,
 when \SpecialChar LyX
 produces \SpecialChar LaTeX
 output,
 with the translation of its argument into the document language.
\end_layout

\begin_layout Standard
The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
BabelPreamble
\end_layout

\end_inset

 tag is more complex,
 since it is meant to provide support for multi-language documents and so offers an interface to the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
babel
\end_layout

\end_inset

 package.
 Its contents will be added to the preamble once for each language that appears in the document.
 In this case,
 the argument to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
_()
\end_layout

\end_inset

 will be replaced with its translation into the language in question;
 the expression 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$lang
\end_layout

\end_inset

 is replaced by the language name (as used by the babel package).
\end_layout

\begin_layout Standard
A German document that also included a French section would thus have the following in the preamble:
\end_layout

\begin_layout LyX-Code

\backslash
addto
\backslash
captionsfrench{
\backslash
renewcommand{
\backslash
claimname}{Affirmation}}
\begin_inset Newline newline
\end_inset


\backslash
addto
\backslash
captionsngerman{
\backslash
renewcommand{
\backslash
claimname}{Behauptung}}
\begin_inset Newline newline
\end_inset


\backslash
providecommand{
\backslash
claimname}{Behauptung}
\end_layout

\begin_layout Standard
\SpecialChar LaTeX
 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
babel
\end_layout

\end_inset

 will then conspire to produce the correct text in the output.
\end_layout

\begin_layout Standard
One important point to note here is that the translations are provided by \SpecialChar LyX
 itself,
 through the file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
layouttranslations
\end_layout

\end_inset

.
 This means,
 in effect,
 that 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LangPreamble
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
BabelPreamble
\end_layout

\end_inset

 are really only of use in layout files that are provided with \SpecialChar LyX
,
 since text entered in user-created layout files will not be seen by \SpecialChar LyX
's internationalization routines unless the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
layouttranslations
\end_layout

\end_inset

 file is modified accordingly.
 That said,
 however,
 any layout created with the intention that it will be included with \SpecialChar LyX
 should use these tags where appropriate.
 Please note that the paragraph style translations provided by \SpecialChar LyX
 will never change with a minor update (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

from version 2.1.x to 2.1.y).
 It is however quite likely that a major update (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

from 2.0.x to 2.1.0) will introduce new translations or corrections.
\end_layout

\begin_layout Subsection
Floats
\begin_inset CommandInset label
LatexCommand label
name "subsec:Floats"

\end_inset


\end_layout

\begin_layout Standard
It is necessary to define the floats (
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
figure
\end_layout

\end_inset

,
 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
table
\end_layout

\end_inset

,
 \SpecialChar ldots
) in the text class itself.
 Standard floats are included in the file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
stdfloats.inc
\end_layout

\end_inset

,
 so you may have to do no more than add
\end_layout

\begin_layout LyX-Code
Input stdfloats.inc
\end_layout

\begin_layout Standard
to your layout file.
 If you want to implement a text class that proposes some other float types (like the AGU class bundled with \SpecialChar LyX
),
 the information below will hopefully help you:
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AllowedPlacement
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=!htbpH] Allowed placement options for this float type.
 The value is a string of placement characters.
 Possible characters include:
 
\emph on
h
\emph default
 (
\begin_inset Quotes eld
\end_inset

here if possible
\begin_inset Quotes erd
\end_inset

),
 
\emph on
t
\emph default
 (
\begin_inset Quotes eld
\end_inset

top of page
\begin_inset Quotes erd
\end_inset

),
 
\emph on
b
\emph default
 (
\begin_inset Quotes eld
\end_inset

bottom of page
\begin_inset Quotes erd
\end_inset

),
 
\emph on
p
\emph default
 (
\begin_inset Quotes eld
\end_inset

page of floats
\begin_inset Quotes erd
\end_inset

),
 
\emph on
H
\emph default
 (
\begin_inset Quotes eld
\end_inset

here definitely
\begin_inset Quotes erd
\end_inset

) and 
\emph on
!

\emph default
 (
\begin_inset Quotes eld
\end_inset

ignore LaTeX rules
\begin_inset Quotes erd
\end_inset

).
 The order of the characters in the string does not matter.
 If no placement options are allowed,
 use the string 
\emph on
none
\emph default
.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AllowsSideways
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph off
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\emph on

\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
1
\end_layout

\end_inset


\emph default
] Defines whether the float allows to be rotated via the \SpecialChar LaTeX
-package 
\family typewriter
rotfloat
\family default
 (sidewaysfloat).
 Set to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

 if the float does not support this feature.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AllowsWide
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph off
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\emph on

\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
1
\end_layout

\end_inset


\emph default
] Defines whether the float has a starred variant that spans columns in a two column paragraph.
 Set to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

 if the float does not support this feature.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Extension
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] The file name extension of an auxiliary file for the list of figures (or whatever).
 \SpecialChar LaTeX
 writes the captions to this file.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
GuiName
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] The string that will be used in the menus and also for the caption.
 This is translated to the current language if babel is used.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTML*
\end_layout

\end_inset

 These tags control the XHTML output.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Tags-for-XHTML"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
IsPredefined
\end_layout

\end_inset

 [
\emph on

\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset


\emph default
,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Indicates whether the float is already defined in the document class or if instead the \SpecialChar LaTeX
 package 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
float
\end_layout

\end_inset

 needs to be loaded to define it on-the-fly.
 The default is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

,
 which means:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
float
\end_layout

\end_inset

 is used.
 It should be set to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

 if the float is already defined by the \SpecialChar LaTeX
 document class.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ListCommand
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] The command used to generate a list of floats of this type;
 the leading `
\backslash
' must be omitted.
 This 
\emph on
must
\emph default
 be given if 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UsesFloatPkg
\end_layout

\end_inset

 is false,
 since there is no standard way to generate this command.
 It is ignored if 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UsesFloatPkg
\end_layout

\end_inset

 is true,
 since in that case there is a standard way to define the command.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ListName
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] A title for a list of floats of this kind (list of figures,
 tables,
 or whatever).
 It is used for the screen label within \SpecialChar LyX
,
 it is used by \SpecialChar LaTeX
 for the title and it is used as the title in the XHTML output.
 It will be translated to the document language.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NumberWithin
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] This (optional) argument determines whether floats of this class will be numbered within some sectional unit of the document.
 For example,
 if 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NumberWithin
\end_layout

\end_inset

 is set to 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
chapter
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

,
 the floats will be numbered within chapters.
 
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Placement
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] The default placement for the given class of floats.
 The string should be as in standard \SpecialChar LaTeX
:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
t
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
b
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
p
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
h
\end_layout

\end_inset

 for top,
 bottom,
 page,
 and here,
 respectively.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Note that the order of these letters in the string is irrelevant,
 like in \SpecialChar LaTeX
.
\end_layout

\end_inset

 On top of that there is a new type,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
H
\end_layout

\end_inset

,
 which does not really correspond to a float,
 since it means:
 put it 
\begin_inset Quotes eld
\end_inset

here
\begin_inset Quotes erd
\end_inset

 and nowhere else.
 Note however that the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
H
\end_layout

\end_inset

 specifier is special and,
 because of implementation details,
 cannot be used in non-built in float types.
 If you do not understand what this means,
 just use 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
tbp
\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
PrettyFormat
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] A format for use with formatted references to this counter.
 For example,
 one might want to have references to tables appear as 
\begin_inset Quotes eld
\end_inset

Table 2
\begin_inset Quotes erd
\end_inset

.
 The string may contain 
\begin_inset Quotes eld
\end_inset

##
\begin_inset Quotes erd
\end_inset

 or a counter specification.
 (See the documentation for 
\begin_inset Flex Code
status open

\begin_layout Plain Layout
LabelString
\end_layout

\end_inset

 in 
\begin_inset CommandInset ref
LatexCommand formatted
reference "subsec:Counters"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

.) The former will be replaced by the counter number itself.
 So,
 for sections,
 it would be:
 Section ##,
 or perhaps:
 section 
\backslash
arabic{section} (which might render as:
 section 2.7).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
RefPrefix
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] The prefix to use when creating labels referring to floats of this type.
 This allows the use of formatted references.
 Note that you can remove any 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
RefPrefix
\end_layout

\end_inset

 set by a copied style by using the special value 
\begin_inset Quotes eld
\end_inset

OFF
\begin_inset Quotes erd
\end_inset

,
 which must be all caps.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Requires
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] As with paragraph styles,
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Paragraph-Styles"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Style
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] The style used when defining the float using 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
newfloat
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Type
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] The 
\begin_inset Quotes eld
\end_inset

type
\begin_inset Quotes erd
\end_inset

 of the new class of floats,
 like program or algorithm.
 After the appropriate 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
newfloat
\end_layout

\end_inset

,
 commands such as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
begin{program}
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
end{algorithm*}
\end_layout

\end_inset

 will be available.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UsesFloatPkg
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
1
\end_layout

\end_inset

] Specifies whether this float is defined using the \SpecialChar LaTeX
 package 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
float
\end_layout

\end_inset

,
 either by the class file,
 another package or on-the-fly by \SpecialChar LyX
 itself.
\end_layout

\begin_layout Standard
Note that defining a float with type 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
type
\end_layout

\end_inset

 automatically defines the corresponding counter with name 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
type
\end_layout

\end_inset

.
\end_layout

\begin_layout Subsection
Flex insets and InsetLayout
\begin_inset CommandInset label
LatexCommand label
name "subsec:Flex-insets-and"

\end_inset


\end_layout

\begin_layout Standard
Flex insets come in two different kinds:
 
\end_layout

\begin_layout Itemize
character style (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CharStyle
\end_layout

\end_inset

):
 These define semantic markup corresponding to such \SpecialChar LaTeX
 commands as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
noun
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
code
\end_layout

\end_inset

.
\end_layout

\begin_layout Itemize
user custom (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Custom
\end_layout

\end_inset

):
 These can be used to define custom collapsible insets,
 similar to \SpecialChar TeX
 code,
 footnote,
 and the like.
 An obvious example is an endnote inset,
 which is defined in the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
endnote
\end_layout

\end_inset

 module.
\end_layout

\begin_layout Standard
Flex insets are defined using the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InsetLayout
\end_layout

\end_inset

 tag,
 which shall be explained in a moment.
\end_layout

\begin_layout Standard
The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InsetLayout
\end_layout

\end_inset

 tag also serves another function:
 It can be used to customize the general layout of many different types of insets.
 Currently,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InsetLayout
\end_layout

\end_inset

 can be used to customize the layout parameters for footnotes,
 marginal notes,
 note insets,
 \SpecialChar TeX
 code (ERT) insets,
 branches,
 listings,
 indexes,
 boxes,
 tables,
 algorithms,
 URLs,
 and captions,
 as well as to define Flex insets.
\end_layout

\begin_layout Standard
The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InsetLayout
\end_layout

\end_inset

 definition must begin with a line of the form:
\end_layout

\begin_layout LyX-Code
InsetLayout <type>
\end_layout

\begin_layout Standard
Here 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<Type>
\end_layout

\end_inset

 indicates the inset whose layout is being defined,
 and here there are four cases.
\end_layout

\begin_layout Enumerate
The layout for a pre-existing inset is being modified.
 In this case,
 can be 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<Type>
\end_layout

\end_inset

 any one of the following:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Algorithm
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Branch
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Box
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Box:shaded
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Caption:Standard
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ERT
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Figure
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Foot
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Index
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Info
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Info:menu
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Info:shortcut
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Info:shortcuts
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Listings
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Marginal
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Note:Comment
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Note:Note
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Note:Greyedout
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Table
\end_layout

\end_inset

,
 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
URL
\end_layout

\end_inset

.
\end_layout

\begin_layout Enumerate
The layout for a Flex inset is being defined.
 In this case,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<Type>
\end_layout

\end_inset

 must be of the form 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Flex:<name>
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

,
 where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
name
\end_layout

\end_inset

 may be any valid identifier not used by a pre-existing Flex inset.
 The identifier may include spaces,
 but in that case the whole thing must be wrapped in quotes.
 Note that the definition of a flex inset 
\emph on
must 
\emph default
also include a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXType
\end_layout

\end_inset

 entry,
 declaring which type of inset it defines.
\end_layout

\begin_layout Enumerate
The layout for user specific branch is being defined.
 In this case,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<Type>
\end_layout

\end_inset

 must be of the form 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Branch:<name>
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

,
 where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
name
\end_layout

\end_inset

 may be any valid identifier of branch defined in user's document.
 The identifier may include spaces,
 but in that case the whole thing must be wrapped in quotes.
 The main purpose of this feature is to allow \SpecialChar LaTeX
 wrapping around specific branches as user needs.
\end_layout

\begin_layout Enumerate
The layout of a user (or class) specific caption is being defined.
 In this case,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<Type>
\end_layout

\end_inset

 must be of the form 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Caption:<name>
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

,
 where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
name
\end_layout

\end_inset

 specifies the name of the caption as it appears in the menu.
 Have a look at the standard caption (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Caption:Standard
\end_layout

\end_inset

),
 the specific captions of the KOMA-Script classes (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Caption:Above
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Caption:Below
\end_layout

\end_inset

) or the module 
\family sans
Multilingual
\begin_inset space ~
\end_inset

Captions
\begin_inset Newline linebreak
\end_inset


\family default
(
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Caption:Bicaption
\end_layout

\end_inset

) for applications.
\end_layout

\begin_layout Standard
The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InsetLayout
\end_layout

\end_inset

 definition can contain the following entries:
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AddToToc
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=""] This inset will appear in the table of contents of the given type.
 An empty string disables.
 See also the OutlinerName and the IsTocCaption commands.
 This is only implemented for Flex insets.
 Default:
 disabled.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AllowedInInsets
\end_layout

\end_inset

 Includes a comma-separated list of insets to which this inset can be inserted.
 Must be ended by 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndAllowedInInsets
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 If you you also want the insertion to be allowed in specific arguments of the target insets,
 append the argument name after @ (e.
\begin_inset space \thinspace{}
\end_inset

g.,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
My_Inset@post:1
\end_layout

\end_inset

).
 Note that this currently only supports immediately containing insets (no deeper nesting).
 See also 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AllowedInLayouts
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AllowedInLayouts
\end_layout

\end_inset

 Includes a comma-separated list of layouts within which this inset can be inserted.
 Must be ended by 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndAllowedInLayouts
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 Note that this currently only supports immediately containing layouts (no deeper nesting).
 See also 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AllowedInInsets
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AllowedOccurrences
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
int
\end_layout

\end_inset

] If 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AllowedInInsets
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AllowedInLayouts
\end_layout

\end_inset

 has been defined,
 this can be used to determine how many times the inset can be inserted to a given inset or the paragraph (group).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AllowedOccurrencesPerItem
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] If this is set to true,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AllowedOccurrences
\end_layout

\end_inset

 applies to single paragraphs if we are in a list-type environment (with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
item
\end_layout

\end_inset

s).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Argument
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
int
\end_layout

\end_inset

] Defines argument number of a command\SpecialChar breakableslash
environment associated with the current layout.
 The definition must end with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndArgument
\end_layout

\end_inset

.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Arguments"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 for more information.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
BabelPreamble
\end_layout

\end_inset

 Preamble for changing language commands;
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:I18n"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
BgColor
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<name>
\end_layout

\end_inset

] The color for the inset's background.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "chap:Names-of-colors"
nolink "false"

\end_inset

 for a list of the available color names.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ContentAsLabel
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Whether to use the content of the inset as the label,
 when the inset is closed.
 Default is false.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CopyStyle
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<type>
\end_layout

\end_inset

] As with paragraph styles,
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Paragraph-Styles"
nolink "false"

\end_inset

.
 Note that you need to specify the complete type,
 e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space ~
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CopyStyle Flex:<name>
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CustomPars
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Indicates whether the user may employ the Paragraph Settings dialog to customize the paragraph.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Decoration
\end_layout

\end_inset

 can be 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Classic
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Minimalistic
\end_layout

\end_inset

,
 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Conglomerate
\end_layout

\end_inset

,
 describing the rendering style used for the inset's frame and buttons.
 Footnotes generally use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Classic
\end_layout

\end_inset

,
 ERT insets generally 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Minimalistic
\end_layout

\end_inset

,
 and character styles 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Conglomerate
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Display
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

,
\emph on

\begin_inset space \thinspace{}
\end_inset


\emph default

\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
1
\end_layout

\end_inset

] Only useful if 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexType
\end_layout

\end_inset

 is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Environment
\end_layout

\end_inset

.
 Indicates whether the environment will stand on its own in the output or will appear inline with the surrounding text.
 If set to false,
 it is supposed that the \SpecialChar LaTeX
 environment ignores white space (including one newline character) after the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
begin{
\emph on
LatexName
\emph default
}
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
end{
\emph on
LatexName
\emph default
}
\end_layout

\end_inset

 tags.
 Default is true.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status open

\begin_layout Plain Layout
EditExternal
\end_layout

\end_inset

 [
\emph on
0
\emph default
,1] Allow the contents of the inset to be edited externally (using whatever editor is defined for the document's output format).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\end_layout

\end_inset

 Required at the end of the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InsetLayout
\end_layout

\end_inset

 declarations.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Font
\end_layout

\end_inset

 The font used for both the text body 
\emph on
and
\emph default
 the label.
 See 
\begin_inset CommandInset ref
LatexCommand formatted
reference "subsec:Font-description"
nolink "false"

\end_inset

.
 Note that defining this font automatically defines the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelFont
\end_layout

\end_inset

 to the same value,
 so define this first and define 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelFont
\end_layout

\end_inset

 later if you want them to be different.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
FixedWidthPreambleEncoding
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Force a fixed width encoding for the translated contents of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
BabelPreamble
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LangPreamble
\end_layout

\end_inset

 code generated by this layout.
 This is needed for special \SpecialChar LaTeX
-packages like 
\family typewriter
listings
\family default
 that do not work with variable width encodings such as 
\family sans
utf8
\family default
.
 This setting is ignored if fully Unicode aware \SpecialChar LaTeX
 backends such as Xe\SpecialChar TeX
 or Lua\SpecialChar TeX
 are used.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ForceLocalFontSwitch
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] When using babel,
 always use a local font switch (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
foreignlanguage
\end_layout

\end_inset

),
 never a global one (such as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
selectlanguage
\end_layout

\end_inset

).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ForceLTR
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Force the 
\begin_inset Quotes eld
\end_inset

latex
\begin_inset Quotes erd
\end_inset

 language,
 leading to Left-to-Right (Latin) output,
 e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

in \SpecialChar TeX
 code or URL.
 A kludge.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ForceOwnlines
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Force a line break in the \SpecialChar LaTeX
 output before the inset starts and after the inset ends.
 This assures the inset itself is output on its own lines,
 for parsing purposes.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ForcePlain
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Indicates whether the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PlainLayout
\end_layout

\end_inset

 should be used or,
 instead,
 the user can change the paragraph style used in the inset.
 Default is false.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
FreeSpacing
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] As with paragraph styles,
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Paragraph-Styles"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTML*
\end_layout

\end_inset

 These tags control the XHTML output.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Tags-for-XHTML"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InheritFont
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
1
\end_layout

\end_inset

] The font inside the inset is inherited from the parent for \SpecialChar LaTeX
 export if this parameter is 1,
 as well as on screen.
 Otherwise the document default font is used.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InToc
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Whether to include the contents of this inset in the strings generated for the `Outline' pane for all table of contents,
 regardless of the AddToToc setting.
 One would not,
 for example,
 want the content of a footnote in a section header to be included in the TOC displayed in the outline,
 but one would normally want the content of a character style displayed.
 Default is false:
 not to include.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
IsTocCaption
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] If this is set to 1 and AddToToc is enabled,
 the inset adds a summary of its contents in its item in the table of contents.
 Otherwise,
 only the label appears.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
KeepEmpty
\end_layout

\end_inset

 [
\emph on

\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset


\emph default
,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] As with paragraph styles,
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Paragraph-Styles"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelFont
\end_layout

\end_inset

 The font used for the label.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Font-description"
nolink "false"

\end_inset

.
 Note that this definition can never appear before 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Font
\end_layout

\end_inset

,
 lest it be ineffective.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelString
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] What will be displayed on the button or elsewhere as the inset label.
 Some inset types (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
\SpecialChar TeX
 code
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Branch
\end_layout

\end_inset

) modify this label on the fly.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LangPreamble
\end_layout

\end_inset

 Language dependent preamble;
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:I18n"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexName
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<name>
\end_layout

\end_inset

] The name of the corresponding \SpecialChar LaTeX
 stuff.
 Either the environment or command name.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexParam
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<parameter>
\end_layout

\end_inset

] The optional parameter for the corresponding 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexName
\end_layout

\end_inset

 stuff,
 including possible bracket pairs like 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[]
\end_layout

\end_inset

.
 This parameter cannot be changed from within \SpecialChar LyX
 (use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Argument
\end_layout

\end_inset

 for customizable parameters).
 It will be output as is after all \SpecialChar LaTeX
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Argument
\end_layout

\end_inset

s.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexType
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Command,
 Environment,
 None
\end_layout

\end_inset

] How the style should be translated into \SpecialChar LaTeX
.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexType
\end_layout

\end_inset

 is perhaps a bit misleading,
 since these rules apply to SGML classes too.
 Visit the SGML class files for specific examples.
\end_layout

\end_inset


\end_layout

\begin_deeper
\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
None
\end_layout

\end_inset

 means nothing special
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Command
\end_layout

\end_inset

 means 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash

\emph on
LatexName
\emph default
{\SpecialChar ldots
}
\end_layout

\end_inset


\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Environment
\end_layout

\end_inset

 means 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
begin{
\emph on
LatexName
\emph default
}\SpecialChar ldots

\backslash
end{
\emph on
LatexName
\emph default
}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
Putting the last few things together,
 the \SpecialChar LaTeX
 output will be either:
 
\end_layout

\begin_layout LyX-Code

\backslash
LatexName[LatexParam]{\SpecialChar ldots
}
\end_layout

\begin_layout Standard
or:
 
\end_layout

\begin_layout LyX-Code

\backslash
begin{LatexName}[LatexParam] \SpecialChar ldots
 
\backslash
end{LatexName}
\end_layout

\begin_layout Standard
depending upon the \SpecialChar LaTeX
 type.
\end_layout

\end_deeper
\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LeftDelim
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] A string that is put at the beginning of the layout content.
 A line break in the output can be indicated by 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<br/>
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyxType
\end_layout

\end_inset

 Can be 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
charstyle
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
custom
\end_layout

\end_inset

,
 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
end
\end_layout

\end_inset

 (indicating a dummy definition ending definitions of charstyles,
 etc).
 This entry is required in and is only meaningful for Flex insets.
 Among other things,
 it determines on which menu this inset will appear.
 Setting 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyxType
\end_layout

\end_inset

 to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
charstyle
\end_layout

\end_inset

 will automatically set 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MultiPar
\end_layout

\end_inset

 to false and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ForcePlain
\end_layout

\end_inset

 to true.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MultiPar
\end_layout

\end_inset

 can be set to true,
 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ForcePlain
\end_layout

\end_inset

 to false,
 for 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
charstyle
\end_layout

\end_inset

 insets by setting it 
\emph on
after
\emph default
 you set the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyxType
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MenuString
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[string]
\end_layout

\end_inset

 A dedicated string for the menu.
 You can define an accelerator by appending the respective character to the string,
 divided by 
\begin_inset Quotes eld
\end_inset

|
\begin_inset Quotes erd
\end_inset

 (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
My Inset|M
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

).
 This specification is optional.
 If it is not given the inset name as specified in the type declaration will be used instead for the menu.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MultiPar
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Whether multiple paragraphs are permitted in this inset.
 This will also set 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CustomPars
\end_layout

\end_inset

 to the same value and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ForcePlain
\end_layout

\end_inset

 to the opposite value.
 These can be reset to other values,
 if they are used 
\emph on
after
\emph default
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MultiPar
\end_layout

\end_inset

.
 Default is true.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NeedProtect
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Whether fragile commands in this inset should be 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
protect
\end_layout

\end_inset

'ed.
 (Note:
 This is 
\emph on
not
\emph default
 whether the command should itself be protected.) Default is false.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NeedCProtect
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-1
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Value 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

 causes macros that contain this inset to be protected with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
cprotect
\end_layout

\end_inset

 (cf.
 package 
\family sans
cprotect
\family default
) if necessary and thus allows (some) verbatim stuff in macros.
 Default is false.
 With the default setting (value 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

),
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
cprotect
\end_layout

\end_inset

 is used if a nested element requires it.
 Value 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-1
\end_layout

\end_inset

 prevents any use of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
cprotect
\end_layout

\end_inset

 within this inset,
 even if required by a nested element.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NeedMBoxProtect
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Whether specific commands in this inset (such as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
cite
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
ref
\end_layout

\end_inset

) should be protected in an 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
mbox
\end_layout

\end_inset

.
 This is particularly needed for insets that draw on 
\family sans
ulem
\family default
 or 
\family sans
soul
\family default
 commands which parse their content in complex ways.
 Default is false.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NewlineCmd
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[string]
\end_layout

\end_inset

 Option to define a different command (from the default 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash

\backslash

\end_layout

\end_inset

) to be used for line breaks.
 The initial backslash must not be specified.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NoInsetLayout
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<layout>
\end_layout

\end_inset

] Deletes an existing 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InsetLayout
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ObsoletedBy
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<layout>
\end_layout

\end_inset

] Name of an 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InsetLayout
\end_layout

\end_inset

 that has replaced this 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InsetLayout
\end_layout

\end_inset

.
 This is used to rename an 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InsetLayout
\end_layout

\end_inset

,
 while keeping backward compatibility.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ParbreakIgnored
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] If this is set to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

,
 paragraph breaks will be ignored in the output.
 This might be useful for insets where the content should be alignable on different lines only in the \SpecialChar LyX
 workarea,
 without any effect in the output.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ParbreakIsNewline
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] As with paragraph styles,
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Paragraph-Styles"
nolink "false"

\end_inset

.
 Default is false.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PassThru
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] As with paragraph styles,
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Paragraph-Styles"
nolink "false"

\end_inset

.
 Default is false.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Preamble
\end_layout

\end_inset

 As with paragraph styles,
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Paragraph-Styles"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
RefPrefix
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] The prefix to use when creating labels referring to insets of this type.
 This allows the use of formatted references.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Requires
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] As with paragraph styles,
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Paragraph-Styles"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ResetArgs
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Resets the \SpecialChar LaTeX
 arguments of this layout (as defined via the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Argument
\end_layout

\end_inset

 tag).
 This is useful if you have copied a style via 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CopyStyle
\end_layout

\end_inset

,
 but you do not want to inherit its (required and optional) arguments.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ResetsFont
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] If 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

,
 font changes are redone inside the respective inset (in the output) even if the inset itself is in the context of this font changes (e.
\begin_inset space \thinspace{}
\end_inset

g.,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
textbf{Sourrounding text 
\backslash
myinset{
\backslash
textbf{content}}\SpecialChar ldots
}
\end_layout

\end_inset

 rather than 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
textbf{Sourrounding text 
\backslash
myinset{content}\SpecialChar ldots
}
\end_layout

\end_inset

.
 Setting this makes sense for commands that internally reset font settings (e.
\begin_inset space \thinspace{}
\end_inset

g.,
 footnotes).
 Note that wrongly setting this might lead to unwanted result (e.
\begin_inset space \thinspace{}
\end_inset

g.,
 with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
emph{Sourrounding text 
\backslash
myinset{
\backslash
emph{content}}\SpecialChar ldots
}
\end_layout

\end_inset

,
 content is upright,
 as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
emph
\end_layout

\end_inset

 toggles.
 Default is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

:
 font changes are not redone inside the inset.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
RightDelim
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] A string that is put at the end of the layout content.
 A line break in the output can be indicated by 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<br/>
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Spellcheck
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
1
\end_layout

\end_inset

] Allow spell-checking the contents of this inset.
 Default is true.
\end_layout

\begin_layout Subsection
Arguments
\begin_inset CommandInset label
LatexCommand label
name "subsec:Arguments"

\end_inset


\end_layout

\begin_layout Standard
Both paragraph styles and inset layouts allow for 
\emph on
arguments
\emph default
 as well as the main content.
 This is especially useful for things like section headings and only makes sense with \SpecialChar LaTeX
.
 Each (optional or required) argument of a command or environment—
except for the required argument that is associated with the content—
has a separate definition,
 where the number specifies the order of the arguments.
 The definition must end with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndArgument
\end_layout

\end_inset

.
 So a command with two optional arguments looks like:
\end_layout

\begin_layout Quote

\family typewriter
Argument 1
\end_layout

\begin_layout Quote

\family typewriter
...
\end_layout

\begin_layout Quote

\family typewriter
EndArgument
\end_layout

\begin_layout Quote

\family typewriter
Argument 2
\end_layout

\begin_layout Quote

\family typewriter
...
\end_layout

\begin_layout Quote

\family typewriter
EndArgument
\end_layout

\begin_layout Standard
Inside the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Argument
\end_layout

\end_inset

 definition,
 the following specifications are possible:
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelString
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[string]
\end_layout

\end_inset

 The string that will appear both in the menu (to insert this argument) and on the argument inset button (unless you also specify a separate 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MenuString
\end_layout

\end_inset

).
 For the menu,
 you can define an accelerator by appending the respective character to the string,
 divided by 
\begin_inset Quotes eld
\end_inset

|
\begin_inset Quotes erd
\end_inset

 (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Short Title|S
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

).
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MenuString
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[string]
\end_layout

\end_inset

 A separate string for the menu.
 You can define an accelerator by appending the respective character to the string,
 divided by 
\begin_inset Quotes eld
\end_inset

|
\begin_inset Quotes erd
\end_inset

 (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Short Title|S
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

).
 This specification is optional.
 If it is not given the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelString
\end_layout

\end_inset

 will be used instead for the menu.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Tooltip
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[string]
\end_layout

\end_inset

 A longer explanatory text that appears in the tooltip when hovering over the argument inset.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Mandatory
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] Declare if this is a mandatory (1) or an optional (0) argument.
 Mandatory arguments will be output empty if not given,
 while optional arguments will not be output at all.
 By default,
 mandatory arguments are delimited by 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{...}
\end_layout

\end_inset

,
 while optional arguments are delimited by 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[...]
\end_layout

\end_inset


\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NewlineCmd
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[string]
\end_layout

\end_inset

 Option to define a different command (from the default 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash

\backslash

\end_layout

\end_inset

) to be used for line breaks.
 The initial backslash must not be specified.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Requires
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[int=0]
\end_layout

\end_inset

 defines another argument or arguments (by their number) which this argument requires to be output if it is itself output.
 E.
\begin_inset space \thinspace{}
\end_inset

g.,
 in \SpecialChar LaTeX
 commands,
 optional arguments often require previous optional arguments to be output (at least empty),
 as in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
command[][argument]{text}
\end_layout

\end_inset

.
 This can be achieved by the statement 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Requires 1
\end_layout

\end_inset

 within 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Argument 2
\end_layout

\end_inset

.
 If multiple arguments are required,
 separate them by comma (e.g.,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Requires 1,2
\end_layout

\end_inset

).
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LeftDelim
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[string]
\end_layout

\end_inset

 defines a custom left delimiter (instead of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[
\end_layout

\end_inset

).
 A line break in the output can be indicated by 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<br/>
\end_layout

\end_inset

.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
RightDelim
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[string]
\end_layout

\end_inset

 defines a custom right delimiter (instead of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
}
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
]
\end_layout

\end_inset

).
 A line break in the output can be indicated by 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<br/>
\end_layout

\end_inset

.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DefaultArg
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[string]
\end_layout

\end_inset

 defines an argument that is inserted if and only if no user-specified arguments were given,
 i.
\begin_inset space \thinspace{}
\end_inset

e.
\begin_inset space \space{}
\end_inset

if no argument inset has been inserted (note that also an empty argument inset omits the DefaultArg).
 Multiple arguments need to be separated by comma.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PresetArg
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[string]
\end_layout

\end_inset

 defines an argument that is inserted in any case (alone or in addition to user-specified arguments).
 Multiple arguments need to be separated by comma.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Font
\end_layout

\end_inset

 The font used for the argument content,
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Font-description"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
FreeSpacing
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] As with paragraph styles,
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Paragraph-Styles"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelFont
\end_layout

\end_inset

 The font used for the label;
 see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Font-description"
nolink "false"

\end_inset

.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Decoration
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
Classic
\emph default
,
 Minimalistic,
 Conglomerate
\end_layout

\end_inset

] describes the rendering style used for the inset's frame and buttons.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AutoInsert
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[int=0]
\end_layout

\end_inset

 If this is set to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

,
 this argument is automatically inserted when the respective style is selected.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InsertOnNewline
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[int=0]
\end_layout

\end_inset

 If this is set to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

,
 this argument will be inserted on a new line with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AutoInsert
\end_layout

\end_inset

 (only available within Flex insets).
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InsertCotext
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[int=0]
\end_layout

\end_inset

 If this is set to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

,
 this argument will be inserted with a copy of the co-text (either selected text or the whole paragraph) as content.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PassThru
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
inherited
\emph default
,
 true,
 false
\end_layout

\end_inset

] Whether the contents of this argument should be output in raw form,
 meaning without special translations that \SpecialChar LaTeX
 would require.
 By default,
 the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PassThru
\end_layout

\end_inset

 status is inherited by the inset or paragraph layout the argument belongs to,
 true and false change the status for the given argument only.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PassThruChars
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string of characters
\end_layout

\end_inset

]
\family typewriter
 
\family default
Defines individual characters
\begin_inset Newline linebreak
\end_inset

that should be output in raw form,
 meaning without special translations that \SpecialChar LaTeX
 would require.
 Note that,
 contrary to PassThru,
 this needs to be explicitly defined for arguments.
 That is,
 arguments do not inherit PassThruChars from their parent inset or layout.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
IsTocCaption
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\end_layout

\end_inset

,
\begin_inset space \thinspace{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
1
\end_layout

\end_inset

] If this is set to 1,
 the argument will output its content in the corresponding item in the table of contents.
 See AddToToc.
\end_layout

\begin_layout Standard
By default,
 the text entered in the \SpecialChar LyX
 workarea in the respective layout is the last (mandatory) argument of a command if the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexType
\end_layout

\end_inset

 is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Command
\end_layout

\end_inset

.
 However,
 arguments with the prefix 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
post:
\end_layout

\end_inset

 are output after this workarea argument.
 Note that post-argument numbering restarts at 1,
 so the first argument following the workarea argument is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
post:1
\end_layout

\end_inset

.
 Post-arguments are ignored in any other 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LatexType
\end_layout

\end_inset

 than 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Command
\end_layout

\end_inset

.
\end_layout

\begin_layout Standard
Arguments for list 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
item
\end_layout

\end_inset

s (as in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
item[foo]
\end_layout

\end_inset

) have the prefix 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
item:
\end_layout

\end_inset

 followed by the number (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Argument item:1
\end_layout

\end_inset

).
\end_layout

\begin_layout Standard
Finally,
 there is a special argument type with the prefix 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
listpreamble:
\end_layout

\end_inset

.
 It is not really an argument,
 but uses the argument interface (thus,
 the prefix is also followed by a number,
 e.
\begin_inset space \thinspace{}
\end_inset

g.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Argument listpreamble:1
\end_layout

\end_inset

).
 As the name implies,
 it is targeted at lists such as 
\family sans
Itemize
\family default
,
 
\family sans
Enumerate
\family default
,
 
\family sans
Description
\family default
,
 or 
\family sans
Bibliography
\family default
.
 Its content will be output at the list start,
 before the first 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
item
\end_layout

\end_inset

,
 on an own line (a place that is otherwise not accessible in \SpecialChar LyX
).
 This way,
 users can insert redefinitions (of lengths etc.) to individual lists.
 By default,
 these arguments do not have a delimiter.
\end_layout

\begin_layout Subsection
Counters
\begin_inset CommandInset label
LatexCommand label
name "subsec:Counters"

\end_inset


\end_layout

\begin_layout Standard
It is necessary to define the counters (
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
chapter
\end_layout

\end_inset

,
 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
figure
\end_layout

\end_inset

,
 \SpecialChar ldots
) in the text class itself.
 The standard counters are defined in the file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
stdcounters.inc
\end_layout

\end_inset

,
 so you may have to do no more than add
\end_layout

\begin_layout LyX-Code
Input stdcounters.inc
\end_layout

\begin_layout Standard
to your layout file to get them to work.
 But if you want to define custom counters,
 then you can do so.
 The counter declaration must begin with:
\end_layout

\begin_layout LyX-Code
Counter CounterName
\end_layout

\begin_layout Standard
where of course `
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CounterName
\end_layout

\end_inset

' is replaced by the name of the counter.
 And it must end with 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
End
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 The following parameters can also be used:
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
InitialValue
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
int=1
\end_layout

\end_inset

] Sets the initial value for the counter,
 to which it will be reset whenever that happens.
 Normally,
 one will want the default,
 1.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelString
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] When defined,
 this string defines how the counter is displayed.
 Setting this value sets 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelStringAppendix
\end_layout

\end_inset

 to the same value.
 The following special constructs can be used in the string:
\end_layout

\begin_deeper
\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
thecounter
\end_layout

\end_inset

 will be replaced by the expansion of the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelString
\end_layout

\end_inset

 (or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelStringAppendix
\end_layout

\end_inset

) of the counter 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
counter
\end_layout

\end_inset

.
 
\end_layout

\begin_layout Itemize
counter values can be expressed using \SpecialChar LaTeX
-like macros
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash

\emph on
numbertype
\emph default
{
\emph on
counter
\emph default
}
\end_layout

\end_inset

,
 where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
numbertype
\end_layout

\end_inset

 can be:
\begin_inset Foot
status collapsed

\begin_layout Plain Layout

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
Actually,
 the situation is a bit more complicated:
 any
\family default
\series default
\shape default
\emph default
\bar default
 
\size default
\emph on
\noun default
\color inherit
numbertype
\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
 other than those described below will produce arabic numerals.
 It would not be surprising to see this change in the future.
\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
arabic
\end_layout

\end_inset

:
 1,
 2,
 3,\SpecialChar ldots
;
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
alph
\end_layout

\end_inset

 for lower-case letters:
 a,
 b,
 c,
 \SpecialChar ldots
;
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Alph
\end_layout

\end_inset

 for upper-case letters:
 A,
 B,
 C,
 \SpecialChar ldots
;
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
roman
\end_layout

\end_inset

 for lower-case roman numerals:
 i,
 ii,
 iii,
 \SpecialChar ldots
;
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Roman
\end_layout

\end_inset

 for upper-case roman numerals:
 I,
 II,
 III\SpecialChar ldots
;
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
hebrew
\end_layout

\end_inset

 for hebrew numerals.
\end_layout

\end_deeper
\begin_layout Standard
If LabelString is not defined,
 a default value is constructed as follows:
 if the counter has a parent counter 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
parent
\end_layout

\end_inset

 (defined via 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Within
\end_layout

\end_inset

),
 the string
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
theparent.
\backslash
arabic{counter}
\end_layout

\end_inset

 is used;
 otherwise the string 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
arabic{counter}
\end_layout

\end_inset

 is used.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelStringAppendix
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

= 
\begin_inset Quotes eld
\end_inset


\begin_inset Quotes erd
\end_inset

] Same as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelString
\end_layout

\end_inset

,
 but for use in the Appendix.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status open

\begin_layout Plain Layout
LaTeXName
\end_layout

\end_inset

 [
\begin_inset Flex Code
status open

\begin_layout Plain Layout
string
\end_layout

\end_inset

 = 
\begin_inset Quotes eld
\end_inset


\begin_inset Quotes erd
\end_inset

] The counter name as used in \SpecialChar LaTeX
.
 (e.g.,
 in \SpecialChar LyX
,
 there is a counter named `theorem',
 but it is output to \SpecialChar LaTeX
 as `thm'.)
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
PrettyFormat
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] A format for use with formatted references to this counter.
 For example,
 one might want to have references to section numbers appear as 
\begin_inset Quotes eld
\end_inset

Section 2.4
\begin_inset Quotes erd
\end_inset

.
 The string may contain 
\begin_inset Quotes eld
\end_inset

##
\begin_inset Quotes erd
\end_inset

 or a counter specification as in 
\begin_inset Flex Code
status open

\begin_layout Plain Layout
LabelString
\end_layout

\end_inset

.
 The former will be replaced by the counter number itself.
 So,
 for sections,
 it would be:
 Section ##,
 or perhaps:
 
\begin_inset Flex Code
status open

\begin_layout Plain Layout

\backslash
S
\backslash
arabic{section}
\end_layout

\end_inset

 (which might render as §2.7).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
RefFormat
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] For use with `formatted references',
 specifically when a single counter is used with multiple sorts of styles.
 For example,
 the 
\begin_inset Flex Code
status open

\begin_layout Plain Layout
theorem
\end_layout

\end_inset

 counter is often used for all sorts of theorem-like environments:
 Theorem,
 Lemma,
 etc.
 The first argument gives a prefix used in the labels (e.g.,
 
\begin_inset Quotes eld
\end_inset

thm
\begin_inset Quotes erd
\end_inset

 or 
\begin_inset Quotes eld
\end_inset

lem
\begin_inset Quotes erd
\end_inset

),
 and the second a formatting string,
 as for 
\begin_inset Flex Code
status open

\begin_layout Plain Layout
LabelString
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status open

\begin_layout Plain Layout
PrettyFormat
\end_layout

\end_inset

.
 If this is not given,
 then 
\begin_inset Flex Code
status open

\begin_layout Plain Layout
PrettyFormat
\end_layout

\end_inset

 is used.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Within
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] If this is set to the name of another counter,
 the present counter will be reset every time the other one is increased.
 For example,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
subsection
\end_layout

\end_inset

 is numbered inside 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
section
\end_layout

\end_inset

.
\end_layout

\begin_layout Subsection
Font description
\begin_inset CommandInset label
LatexCommand label
name "subsec:Font-description"

\end_inset


\end_layout

\begin_layout Standard
A font description looks like this:
\end_layout

\begin_layout LyX-Code
Font 
\family roman
\emph on
or
\family default
\emph default
 LabelFont
\emph on
 
\family roman
or
\family default
\emph default
 DefaultFont
\end_layout

\begin_layout LyX-Code
 ...
\end_layout

\begin_layout LyX-Code
EndFont
\end_layout

\begin_layout Standard
The following commands are available:
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Color
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] See appendix
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "chap:Names-of-colors"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 for valid arguments.
\end_layout

\begin_layout Description
\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

\emph on
Roman
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Sans
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Typewriter
\end_layout

\end_inset

]
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Misc
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] Valid arguments are:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
emph
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
noun
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
strikeout
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
underbar
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
uuline
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
uwave
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
no_emph
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
no_noun
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
no_strikeout
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
no_bar
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
no_uuline
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
no_uwave
\end_layout

\end_inset

.
 Each of these turns on or off the corresponding attribute.
 For example,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
emph
\end_layout

\end_inset

 turns on emphasis,
 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
no_emph
\end_layout

\end_inset

 turns it off.
 
\begin_inset Newline newline
\end_inset

If the latter seems puzzling,
 remember that the font settings for the present context are generally inherited from the surrounding context.
 So 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
no_emph
\end_layout

\end_inset

 would turn off the emphasis that was anyway in effect,
 say,
 in a theorem environment.
\end_layout

\begin_layout Description
\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

\emph on
Medium
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Bold
\end_layout

\end_inset

] 
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Shape
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
Up
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Italic
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
SmallCaps
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Slanted
\end_layout

\end_inset

] 
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Size
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
tiny
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
small
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
normal
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
large
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
larger
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
largest
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
huge
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
giant
\end_layout

\end_inset

]
\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "subsec:Citation-engine-description"

\end_inset

Cite engine description
\end_layout

\begin_layout Standard
The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CiteEngine
\end_layout

\end_inset

 blocks,
 as used mainly in cite engine files (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Cite-Engine-Files"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

),
 define the citation commands provided by a specific 
\begin_inset Quotes eld
\end_inset

cite engine
\begin_inset Quotes erd
\end_inset

.
 A cite engine,
 in \SpecialChar LyX
 terms,
 is way specific way to format citations,
 using numbers,
 author names and/or years.
 Currently,
 \SpecialChar LyX
 supports three such engine types,
 namely:
\end_layout

\begin_layout Enumerate
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
default
\end_layout

\end_inset

:
 the default Bib\SpecialChar TeX
 way to format citations,
 a simple numeric style (e.
\begin_inset space \thinspace{}
\end_inset

g.,
 
\begin_inset Quotes eld
\end_inset

[1]
\begin_inset Quotes erd
\end_inset

)
\end_layout

\begin_layout Enumerate
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
authoryear
\end_layout

\end_inset

:
 Harvard-styled citations using author names and publication year (e.
\begin_inset space \thinspace{}
\end_inset

g.,
 
\begin_inset Quotes eld
\end_inset

Smith and Miller (2017b)
\begin_inset Quotes erd
\end_inset

)
\end_layout

\begin_layout Enumerate
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
numerical
\end_layout

\end_inset

:
 extended numerical citations that also allow for author or title next to the number (e.
\begin_inset space \thinspace{}
\end_inset

g.,
 
\begin_inset Quotes eld
\end_inset

Smith and Miller [1]
\begin_inset Quotes erd
\end_inset

)
\end_layout

\begin_layout Standard
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CiteEngine
\end_layout

\end_inset

 blocks look like this:
\end_layout

\begin_layout LyX-Code
CiteEngine default
\end_layout

\begin_layout LyX-Code
 cite
\end_layout

\begin_layout LyX-Code
 Citep*[][]
\end_layout

\begin_layout LyX-Code
 citeyearpar[][]=parencite*
\end_layout

\begin_layout LyX-Code
 ...
\end_layout

\begin_layout LyX-Code
End
\end_layout

\begin_layout Standard
The tag following 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CiteEngine
\end_layout

\end_inset

 denotes the engine.
 The individual lines respectively define a cite command or cite command paradigm supported by this engine.
 The line can be as simple as a cite command that is used both to name the respective \SpecialChar LyX
 command and the \SpecialChar LaTeX
 output or more complex in order to differentiate things.
 The full syntax is:
\end_layout

\begin_layout LyX-Code
LyXName|alias$*<!_stardesc!_stardesctooltip>[][]=latexcmd
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXName
\end_layout

\end_inset

:
 The name as used in the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
*.lyx
\end_layout

\end_inset

 file.
\end_layout

\begin_deeper
\begin_layout Standard
For portability reasons,
 we try to use the same name for same-formatted commands in different cite packages (thus many names stem from natbib,
 and thus we need to differentiate a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
latexcmd
\end_layout

\end_inset

 sometimes,
 if the \SpecialChar LaTeX
 command names differ).
\end_layout

\end_deeper
\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
alias
\end_layout

\end_inset

:
 a (comma-separated) list of commands that fall back to the given 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXName
\end_layout

\end_inset

 in the current engine.
 This eases the switch of citation packages and engines.
 The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
alias
\end_layout

\end_inset

 can be compared to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ObsoletedBy
\end_layout

\end_inset

 in layout definitions.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
latexcmd
\end_layout

\end_inset

:
 The actual \SpecialChar LaTeX
 command that is output.
 
\end_layout

\begin_layout Standard
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Alias
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
latexcmd
\end_layout

\end_inset

 are optional.
 If no 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
latexcmd
\end_layout

\end_inset

 is given,
 the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXName
\end_layout

\end_inset

 will be output to \SpecialChar LaTeX
.
\end_layout

\begin_layout Standard
Note further:
\end_layout

\begin_layout Itemize
Capitalization indicates that the command also has a capitalized form (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
Latexcmd
\end_layout

\end_inset

 vs.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
latexcmd
\end_layout

\end_inset

).
 These usually enforce up-casing of name prefixes (
\emph on
von Goethe
\emph default
 
\begin_inset Formula $\Rightarrow$
\end_inset

 
\emph on
Von Goethe
\emph default
).
\end_layout

\begin_layout Itemize
Brackets 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[]
\end_layout

\end_inset

 indicate the number of optional arguments (there can be 0–2).
\end_layout

\begin_layout Itemize
A star 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
*
\end_layout

\end_inset

 indicates there is a starred version of the command (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
latexcmd*
\end_layout

\end_inset

 vs.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
latexcmd
\end_layout

\end_inset

).
 
\end_layout

\begin_deeper
\begin_layout Standard
By default,
 the starred version means:
 Output all authors even if it should be shortened with 
\begin_inset Quotes eld
\end_inset

et al.
\begin_inset Quotes erd
\end_inset

 due to the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MaxCiteNames
\end_layout

\end_inset

 threshold.
\end_layout

\begin_layout Standard
If the star has a different meaning for a given command,
 it can be specified in angle brackets:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<!_stardesc!_stardesctooltip>
\end_layout

\end_inset

.
 Maximal two translatable macro keywords,
 marked by the prefix 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
!_
\end_layout

\end_inset

,
 can be given.
 The first points to the string that replaces the 
\begin_inset Quotes eld
\end_inset

Full aut&hor list
\begin_inset Quotes erd
\end_inset

 checkbox label in the citation dialog,
 the second one to an optional tool tip for this checkbox.
 
\end_layout

\begin_layout Standard
Note that these two macros have to be defined in a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CiteFormat
\end_layout

\end_inset

 (see next section),
 dropping the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
!
\end_layout

\end_inset

 from the prefix,
 like this:
 
\end_layout

\begin_layout LyX-Code
_stardesc Sta&rred command label
\end_layout

\begin_layout LyX-Code
_stardesctooltip Tooltip for the starred command checkbox.
\end_layout

\end_deeper
\begin_layout Itemize
A dollar sign 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$
\end_layout

\end_inset

 indicates that this command features 
\begin_inset Quotes eld
\end_inset

qualified citation lists
\begin_inset Quotes erd
\end_inset

.
 This is a 
\family sans
Biblatex
\family default
-specific feature for multi-reference citations where an individual pre- and postnote can be given to each reference in the list.
 Please refer to the 
\family sans
Biblatex
\family default
 manual for details.
\end_layout

\begin_layout Standard
If you want to add a cite command to a cite engine (e.
\begin_inset space \thinspace{}
\end_inset

g.,
 add a specific command provided by a class),
 you can use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AddToCiteEngine <engine type> \SpecialChar ldots
 End
\end_layout

\end_inset

.
 Note that only cite commands that do not exist yet are added.
\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "subsec:Citation-format-description"

\end_inset

Cite format description
\end_layout

\begin_layout Standard
The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CiteFormat
\end_layout

\end_inset

 blocks are used to describe how bibliographic information should be displayed,
 both within \SpecialChar LyX
 itself (in the citation dialog and in tooltips,
 for example) and in XHTML output.
 Such a block might look like this:
\end_layout

\begin_layout LyX-Code
CiteFormat
\end_layout

\begin_layout LyX-Code
 article ...
\end_layout

\begin_layout LyX-Code
 book ...
\end_layout

\begin_layout LyX-Code
End
\end_layout

\begin_layout Standard
or
\end_layout

\begin_layout LyX-Code
CiteFormat
\end_layout

\begin_layout LyX-Code
 cite ...
\end_layout

\begin_layout LyX-Code
 citet*[][] ...
\end_layout

\begin_layout LyX-Code
End
\end_layout

\begin_layout Standard
In the first case,
 the individual lines define how the bibliographic information associated with an article or book,
 respectively,
 is to be displayed,
 and such a definition can be given for any 
\begin_inset Quotes els
\end_inset

entry type
\begin_inset Quotes ers
\end_inset

 that might be present in a Bib\SpecialChar TeX
 file.
 \SpecialChar LyX
 defines a default format in the source code that will be used if no specific definition has been given.
 \SpecialChar LyX
 predefines several formats in the file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
stdciteformats.inc
\end_layout

\end_inset

,
 which is included in most of \SpecialChar LyX
's document classes.
\end_layout

\begin_layout Standard
In the second case,
 the lines define how a specific citation command (in the example 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
cite
\end_layout

\end_inset

,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
citet
\end_layout

\end_inset

) is to be displayed on the citation inset label,
 in the citation dialog,
 menu or XHTML output.
 \SpecialChar LyX
 defines such formats for the citation style variants it supports via 
\family sans
Document\SpecialChar menuseparator
Setting\SpecialChar menuseparator
Bibliography\SpecialChar ldots

\family default
 in specific 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
*.citeengine
\end_layout

\end_inset

 files that are shipped with \SpecialChar LyX
 (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Cite-Engine-Files"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

).
\end_layout

\begin_layout Standard
The definitions use a simple language that allows Bib\SpecialChar TeX
 keys to be replaced with their values.
 Keys should be enclosed in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%
\end_layout

\end_inset

 signs,
 e.g.:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%author%
\end_layout

\end_inset

.
 So a simple definition might look like this:
\end_layout

\begin_layout LyX-Code
misc %author%,
 
\begin_inset Quotes eld
\end_inset

%title%
\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Standard
This would print the author,
 followed by a comma,
 followed by the title,
 in quotes,
 followed by a period.
\end_layout

\begin_layout Standard
Of course,
 sometimes you may want to print a key only if it exists.
 This can be done by using a conditional construction,
 such as:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{%volume%[[vol.
\begin_inset space ~
\end_inset

%volume%]]}
\end_layout

\end_inset

.
 This says:
 If the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
volume
\end_layout

\end_inset

 key exists,
 then print 
\begin_inset Quotes eld
\end_inset

vol.
\begin_inset space ~
\end_inset


\begin_inset Quotes erd
\end_inset

 followed by the volume key.
 It is also possible to have an else clause in the conditional,
 such as:
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{%author%[[%author%]][[%editor%,
 ed.]]}
\end_layout

\end_inset

.
\begin_inset Newline newline
\end_inset

Here,
 the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
author
\end_layout

\end_inset

 key is printed if it exists;
 otherwise,
 the editor key is printed,
 followed by 
\begin_inset Quotes eld
\end_inset

,
\begin_inset space ~
\end_inset

ed.
\begin_inset Quotes erd
\end_inset

 Note that the key is again enclosed in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%
\end_layout

\end_inset

 signs;
 the entire conditional is enclosed in braces;
 and the if and else clauses are enclosed in double brackets,
 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[[
\end_layout

\end_inset


\begin_inset Quotes eld
\end_inset

 and 
\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

.
 There must be no space between any of these.
\end_layout

\begin_layout Standard
Next to the entry keys,
 there are some special keys that can be used for these conditionals:
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{%dialog%[[true]][[false]]}
\end_layout

\end_inset

:
 process the 
\begin_inset Quotes eld
\end_inset

true
\begin_inset Quotes erd
\end_inset

 part for dialogs and menus,
 the 
\begin_inset Quotes eld
\end_inset

false
\begin_inset Quotes erd
\end_inset

 part for other contexts (workarea,
 export)
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{%export%[[true]][[false]]}
\end_layout

\end_inset

:
 process the 
\begin_inset Quotes eld
\end_inset

true
\begin_inset Quotes erd
\end_inset

 part for export and menus,
 the 
\begin_inset Quotes eld
\end_inset

false
\begin_inset Quotes erd
\end_inset

 part for other contexts (workarea,
 dialog)
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{%next%[[true]]}
\end_layout

\end_inset

:
 process the 
\begin_inset Quotes eld
\end_inset

true
\begin_inset Quotes erd
\end_inset

 part if another item follows (e.
\begin_inset space \thinspace{}
\end_inset

g.,
 in a citation with multiple keys)
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{%second%[[true]][[false]]}
\end_layout

\end_inset

:
 process the 
\begin_inset Quotes eld
\end_inset

true
\begin_inset Quotes erd
\end_inset

 if this is the second of multiple items,
 else the 
\begin_inset Quotes eld
\end_inset

false
\begin_inset Quotes erd
\end_inset

 part
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{%ifstar%[[true]][[false]]}
\end_layout

\end_inset

:
 process the 
\begin_inset Quotes eld
\end_inset

true
\begin_inset Quotes erd
\end_inset

 part for starred citation commands (such as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
cite*
\end_layout

\end_inset

),
 the false part for unstarred
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{%ifentrytype:<type>%[[true]][[false]]}
\end_layout

\end_inset

:
 process the 
\begin_inset Quotes eld
\end_inset

true
\begin_inset Quotes erd
\end_inset

 if the current entry type matches 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<type>
\end_layout

\end_inset

,
 else the false part (e.g.,
 in a citation definition:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{%ifentrytype:book%[[this is a book]][[this is no book]]}
\end_layout

\end_inset

)
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{%ifmultiple:<authortype>%[[true]][[false]]}
\end_layout

\end_inset

:
 process the 
\begin_inset Quotes eld
\end_inset

true
\begin_inset Quotes erd
\end_inset

 if the current author type (author,
 editor etc.) has multiple authors,
 else the false part (e.g.,
 in a bibliography definition:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{%ifmultiple:editor%[[eds.]][[ed.]]}
\end_layout

\end_inset

)
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{%ifqualified%[[true]][[false]]}
\end_layout

\end_inset

:
 process the 
\begin_inset Quotes eld
\end_inset

true
\begin_inset Quotes erd
\end_inset

 part if the current citation is a qualified citation list (a specific 
\family sans
Biblatex
\family default
 format for multi-reference citations),
 the false part if this is not the case.
\end_layout

\begin_layout Standard
We said that 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%author%
\end_layout

\end_inset

 prints the author key as it is recorded in the bibliography file.
 This might not be what you want,
 since it will result in a string such as 
\begin_inset Quotes eld
\end_inset

Miller,
 Peter and Smith,
 Mary and White,
 Jane
\begin_inset Quotes erd
\end_inset

 (since 
\begin_inset Quotes eld
\end_inset

and
\begin_inset Quotes erd
\end_inset

 is used by Bib\SpecialChar TeX
 to delimit authors).
 \SpecialChar LyX
 therefore provides some methods to get properly formatted name lists (which will also get translated).
 The following keys are provided:
\end_layout

\begin_layout Enumerate
For name lists with pre- and surname,
 suitable for the main authors/editors of a bibliography item.
 The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<nametype>
\end_layout

\end_inset

 part denotes the kind of list that is requested (e.g.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<nametype:author>
\end_layout

\end_inset

):
\end_layout

\begin_deeper
\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%abbrvnames:<nametype>%
\end_layout

\end_inset

:
 Provides a name list which is abbreviated (with 
\begin_inset Quotes eld
\end_inset

et al.
\begin_inset Quotes erd
\end_inset

) when 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MaxCiteNames
\end_layout

\end_inset

 is reached.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%fullnames:<nametype>%
\end_layout

\end_inset

:
 Provides a full name list (never abbreviated with 
\begin_inset Quotes eld
\end_inset

et al.
\begin_inset Quotes erd
\end_inset

).
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%forceabbrvnames:<nametype>%
\end_layout

\end_inset

:
 Provides a name list which is always abbreviated (with 
\begin_inset Quotes eld
\end_inset

et al.
\begin_inset Quotes erd
\end_inset

) irrespective of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MaxCiteNames
\end_layout

\end_inset

.
\end_layout

\end_deeper
\begin_layout Enumerate
Alternative name lists with pre- and surname,
 if the order of pre- and surname inside the bibliography item differs (as in:
 
\begin_inset Quotes eld
\end_inset

Miller,
 John:
 Some text,
 in:
 Mary Smith,
 ed.:
 A volume
\begin_inset Quotes erd
\end_inset

):
\end_layout

\begin_deeper
\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%abbrvbynames:<nametype>%
\end_layout

\end_inset

:
 Provides a name list which is abbreviated (with 
\begin_inset Quotes eld
\end_inset

et al.
\begin_inset Quotes erd
\end_inset

) when 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MaxCiteNames
\end_layout

\end_inset

 is reached.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%fullbynames:<nametype>%
\end_layout

\end_inset

:
 Provides a full name list (never abbreviated with 
\begin_inset Quotes eld
\end_inset

et al.
\begin_inset Quotes erd
\end_inset

).
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%forceabbrvbynames:<nametype>%
\end_layout

\end_inset

:
 Provides a name list which is always abbreviated (with 
\begin_inset Quotes eld
\end_inset

et al.
\begin_inset Quotes erd
\end_inset

) irrespective of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MaxCiteNames
\end_layout

\end_inset

.
\end_layout

\end_deeper
\begin_layout Enumerate
And finally name lists which consist of family names only,
 as used in author-year citation labels.
 These do not take a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<nametype>
\end_layout

\end_inset

 part,
 but always return either an author list or,
 if this does not exist,
 an editor list (as common in author-year labels):
\end_layout

\begin_deeper
\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%abbrvciteauthor%
\end_layout

\end_inset

:
 Provides a name list which is abbreviated (with 
\begin_inset Quotes eld
\end_inset

et al.
\begin_inset Quotes erd
\end_inset

) when 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MaxCiteNames
\end_layout

\end_inset

 is reached.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%fullciteauthor%
\end_layout

\end_inset

:
 Provides a full name list (never abbreviated with 
\begin_inset Quotes eld
\end_inset

et al.
\begin_inset Quotes erd
\end_inset

).
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%forceabbrvciteauthor%
\end_layout

\end_inset

:
 Provides a name list which is always abbreviated (with 
\begin_inset Quotes eld
\end_inset

et al.
\begin_inset Quotes erd
\end_inset

) irrespective of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
MaxCiteNames
\end_layout

\end_inset

.
\end_layout

\end_deeper
\begin_layout Standard
The order of pre- and surname in the former two lists can be adjusted by these macros:
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
!firstnameform %surname%,
 %prename%
\end_layout

\end_inset

 (first author in lists of type 1)
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
!othernameform %surname%,
 %prename%
\end_layout

\end_inset

 (other authors in lists of type 1)
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
!firstbynameform %prename% %surname%
\end_layout

\end_inset

 (first author in lists of type 2)
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
!otherbynameform %prename% %surname%
\end_layout

\end_inset

 (other authors in lists of type 2)
\end_layout

\begin_layout Standard
This allows you to configure namings like 
\begin_inset Quotes eld
\end_inset

Miller,
 Peter and Mary Smith:
 \SpecialChar ldots
,
 in:
 John Doe and Pat Green,
 eds.:\SpecialChar ldots

\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Standard
There is one other piece of syntax available in definitions,
 which looks like this:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
{!<i>!}
\end_layout

\end_inset

.
 This defines a piece of formatting information that is to be used when creating 
\begin_inset Quotes eld
\end_inset

rich text
\begin_inset Quotes erd
\end_inset

.
 Obviously,
 we do not want to output HTML tags when writing plain text,
 so they should be wrapped in 
\begin_inset Quotes eld
\end_inset

{!
\begin_inset Quotes erd
\end_inset

 and 
\begin_inset Quotes eld
\end_inset

!}
\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Standard
Two special sorts of definitions are also possible in a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
CiteFormat
\end_layout

\end_inset

 block.
 An example of the first would be:
\end_layout

\begin_layout LyX-Code
!quotetitle 
\begin_inset Quotes eld
\end_inset

%title%
\begin_inset Quotes erd
\end_inset


\end_layout

\begin_layout Standard
This is an abbreviation,
 or macro,
 and it can be used by treating it as if it were a key:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%!quotetitle%
\end_layout

\end_inset

.
 \SpecialChar LyX
 will treat 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%!quotetitle%
\end_layout

\end_inset

 exactly as it would treat its definition.
 So,
 let us issue the obvious 
\emph on
warning
\emph default
.
 Do not do this:
\end_layout

\begin_layout LyX-Code
!funfun %funfun%
\end_layout

\begin_layout Standard
or anything like it.
 \SpecialChar LyX
 shouldn't go into an infinite loop,
 but it may go into a long one before it gives up.
\end_layout

\begin_layout Standard
The second sort of special definition might look like this:
\end_layout

\begin_layout LyX-Code
B_pptext pp.
\end_layout

\begin_layout Standard
This defines a translatable piece of text,
 which allows relevant parts of the bibliography or citation to be translated.
 It can be included in a definition by treating it as a key:
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%B_pptext%
\end_layout

\end_inset

.
 Note that there are two different translation paths:
 All definitions starting with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
B_
\end_layout

\end_inset

,
 such as in the example above,
 will be translated to the currently active buffer language (so the translation will match the generated document).
 All definitions starting with underscore only will be translated to the GUI language.
 This is the proper translation for strings that only occur in the dialogs or on buttons,
 such as this one:
\end_layout

\begin_layout LyX-Code
_addtobib Add to bibliography only.
\end_layout

\begin_layout Standard
Several of these translatable strings are predefined in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
stdciteformats.inc
\end_layout

\end_inset

 and the diverse 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
*.citeengine
\end_layout

\end_inset

 files.
 Note that these are not macros,
 in the sense just defined.
 They will not be expanded.
\end_layout

\begin_layout Standard
So here then is an example that uses several of these features:
\begin_inset VSpace defskip
\end_inset


\end_layout

\begin_layout Standard
\noindent

\family sans
!authoredit {%author%[[%author%,
 ]][[{%editor%[[%editor%,
 %B_edtext%,
 ]]}]]}
\end_layout

\begin_layout Standard
\begin_inset VSpace defskip
\end_inset

This defines a macro that prints the author,
 followed by a comma,
 if the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
author
\end_layout

\end_inset

 key is defined,
 or else prints the name of the editor,
 followed by the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
B_edtext
\end_layout

\end_inset

 or its translation (it is by default 
\begin_inset Quotes eld
\end_inset

ed.
\begin_inset Quotes erd
\end_inset

),
 if the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
editor
\end_layout

\end_inset

 key is defined.
 Note that this is in fact defined in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
stdciteformats.inc
\end_layout

\end_inset

,
 so you can use it in your own definitions,
 or re-definitions,
 if you load that file first.
\end_layout

\begin_layout Section
\begin_inset CommandInset label
LatexCommand label
name "sec:Tags-for-XHTML"

\end_inset

Tags for XHTML output
\end_layout

\begin_layout Standard
As with \SpecialChar LaTeX
 or DocBook,
 the format of \SpecialChar LyX
's XHTML output is also controlled by layout information.
 In general,
 \SpecialChar LyX
 provides sensible defaults and,
 as mentioned earlier,
 it will even construct default CSS style rules from the other layout tags.
 For example,
 \SpecialChar LyX
 will attempt to use the information provided in the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Font
\end_layout

\end_inset

 declaration for the Chapter style to write CSS that will appropriately format chapter headings.
\end_layout

\begin_layout Standard
In many cases,
 then,
 you may not have to do anything at all to get acceptable XHTML output for your own environments,
 custom insets,
 and so forth.
 But in some cases you will,
 and so \SpecialChar LyX
 provides a number of layout tags that can be used to customize the XHTML and CSS that are generated.
\end_layout

\begin_layout Standard
Note that there are two tags,
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTMLPreamble
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AddToHTMLPreamble
\end_layout

\end_inset

 that may appear outside style and inset declarations.
 See 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:General-text-class"
nolink "false"

\end_inset

 for details on these.
\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "subsec:Paragraph-Style-XHTML"

\end_inset

Paragraph styles
\end_layout

\begin_layout Standard
The sort of XHTML \SpecialChar LyX
 outputs for a paragraph depends upon whether we are dealing with a normal paragraph,
 a command,
 or an environment,
 where this is itself determined by the contents of the corresponding 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
\SpecialChar LaTeX
Type
\end_layout

\end_inset

 tag.
 
\end_layout

\begin_layout Standard
For a command or normal paragraph,
 the output XHTML has the following form:
\end_layout

\begin_layout LyX-Code

\family sans
<tag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

>
\end_layout

\begin_layout LyX-Code

\family sans
<labeltag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

>Label</labeltag>
\end_layout

\begin_layout LyX-Code

\family sans
Contents of the paragraph.
\end_layout

\begin_layout LyX-Code

\family sans
</tag>
\end_layout

\begin_layout Standard
The label tags are of course omitted if the paragraph does not have a label.
\end_layout

\begin_layout Standard
For an environment that is not some sort of list,
 the XHTML takes this form:
\end_layout

\begin_layout LyX-Code

\family sans
<tag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

>
\end_layout

\begin_layout LyX-Code

\family sans
<itemtag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

><labeltag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

>Environment Label</labeltag>First paragraph.</itemtag>
\end_layout

\begin_layout LyX-Code

\family sans
<itemtag>Second paragraph.</itemtag>
\end_layout

\begin_layout LyX-Code

\family sans
</tag>
\end_layout

\begin_layout Standard
Note that the label is output only for the first paragraph,
 as it should be for a theorem,
 for example.
 
\end_layout

\begin_layout Standard
For a list,
 we have one of these forms:
\end_layout

\begin_layout LyX-Code

\family sans
<tag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

>
\end_layout

\begin_layout LyX-Code

\family sans
<itemtag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

><labeltag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

>List Label</labeltag>First item.</itemtag>
\end_layout

\begin_layout LyX-Code

\family sans
<itemtag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

><labeltag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

>List Label</labeltag>Second item.</itemtag>
\end_layout

\begin_layout LyX-Code

\family sans
</tag>
\end_layout

\begin_layout LyX-Code

\end_layout

\begin_layout LyX-Code

\family sans
<tag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

>
\end_layout

\begin_layout LyX-Code

\family sans
<labeltag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

>List Label</labeltag><itemtag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

>First item.</itemtag>
\end_layout

\begin_layout LyX-Code

\family sans
<labeltag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

>List Label</labeltag><itemtag attr=
\begin_inset Quotes erd
\end_inset

value
\begin_inset Quotes erd
\end_inset

>Second item.</itemtag>
\end_layout

\begin_layout LyX-Code

\family sans
</tag>
\end_layout

\begin_layout Standard
Note the different orders of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
labeltag
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
itemtag
\end_layout

\end_inset

.
 Which order we get depends upon the setting of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTMLLabelFirst
\end_layout

\end_inset

:
 If 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTMLLabelFirst
\end_layout

\end_inset

 is false (the default),
 you get the first of these,
 with the label within the item;
 if true,
 you get the second,
 with the label outside the item.
\end_layout

\begin_layout Standard
The specific tags and attributes output for each paragraph type can be controlled by means of the layout tags we are about to describe.
 As mentioned earlier,
 however,
 \SpecialChar LyX
 uses sensible defaults for many of these,
 so you often may not need to do very much to get good XHTML output.
 Think of the available tags as there so you can tweak things to your liking.
\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=`mydiv'
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 By default,
 \SpecialChar LyX
 will output 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
class=`layoutname'
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

,
 where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
layoutname
\end_layout

\end_inset

 is the \SpecialChar LyX
 name of the layout,
 made lowercase,
 for example:
 chapter.
 This should 
\emph on
not
\emph default
 contain any style information.
 Use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTMLStyle
\end_layout

\end_inset

 for that purpose.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTMLClass
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] The CSS class to use for this paragraph.
 Note that,
 if the paragarph is of enumerate or itemize type,
 then the default will be 
\begin_inset Quotes eld
\end_inset

lyxenum
\begin_inset Quotes erd
\end_inset

 or 
\begin_inset Quotes eld
\end_inset

lyxitem
\begin_inset Quotes erd
\end_inset

,
 plus 
\begin_inset Quotes eld
\end_inset

i
\begin_inset Quotes erd
\end_inset

,
 
\begin_inset Quotes eld
\end_inset

ii
\begin_inset Quotes erd
\end_inset

,
 
\begin_inset Quotes eld
\end_inset

iii
\begin_inset Quotes erd
\end_inset

,
 or 
\begin_inset Quotes eld
\end_inset

iv
\begin_inset Quotes erd
\end_inset

,
 depending upon the depth.
 That can be over-ridden here.
 However,
 the suffix will not be added in that case.
 I.e.,
 the CSS class will always be exactly what it is declared to be here.
\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 \SpecialChar 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 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTMLInToc
\end_layout

\end_inset

 [
\begin_inset Flex Code
status open

\begin_layout Plain Layout
0,
\emph on
1
\end_layout

\end_inset

] Whether to include this paragraph (usually,
 a section or something of the sort) in the TOC.
 By default,
 true,
 so it should be set to false e.g.
\begin_inset space ~
\end_inset

for starred sections.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTMLItem
\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 individual paragraphs of environments,
 replacing 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
itemtag
\end_layout

\end_inset

 in the examples above.
 Defaults to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
div
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTMLItemAttr
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] Attributes for the item tag.
 Defaults to
\begin_inset Newline newline
\end_inset


\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
class=`layoutname_item'
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 This should 
\emph on
not
\emph default
 contain any style information.
 Use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTMLStyle
\end_layout

\end_inset

 for that purpose.
\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

] The tag to be used for paragraph and item labels,
 replacing 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
labeltag
\end_layout

\end_inset

 in the examples above.
 Defaults to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
span
\end_layout

\end_inset

,
 unless 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LabelType
\end_layout

\end_inset

 is either 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Top_Environment
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Centered_Top_Environment
\end_layout

\end_inset

,
 in which case it defaults to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
div
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTMLLabelAttr
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] Attributes for the label tag.
 Defaults to
\begin_inset Newline newline
\end_inset


\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
class=`layoutname_label'
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 This should 
\emph on
not
\emph default
 contain any style information.
 Use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTMLStyle
\end_layout

\end_inset

 for that purpose.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTMLLabelFirst
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\emph default
,1
\end_layout

\end_inset

] Meaningful only for list-like environments,
 this tag controls whether the label tag is output before or inside the item tag.
 This is used,
 for example,
 in the description environment,
 where we want `
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<dt>\SpecialChar ldots
</dt><dd>\SpecialChar ldots
</dd>
\end_layout

\end_inset

.
 Default is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

:
 The label tag is output inside the item tag.
\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.
 Must end with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
EndHTMLStyle
\end_layout

\end_inset

.
\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.
 Defaults to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
div
\end_layout

\end_inset

.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
HTMLTitle
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\emph on
0
\emph default
,1
\end_layout

\end_inset

] Marks this style as the one to be used to generate the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<title>
\end_layout

\end_inset

 tag for the XHTML file.
 By default,
 it is false.
 The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
stdtitle.inc
\end_layout

\end_inset

 file sets it to true for the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
title
\end_layout

\end_inset

 environment.
 
\end_layout

\begin_layout Subsection
InsetLayout XHTML
\end_layout

\begin_layout Standard
The XHTML output of insets can also be controlled by information in layout files.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
At present,
 this is true only for 
\begin_inset Quotes eld
\end_inset

text
\begin_inset Quotes erd
\end_inset

 insets (insets you can type into) and is not true for 
\begin_inset Quotes eld
\end_inset

command
\begin_inset Quotes erd
\end_inset

 insets (insets that are associated with dialog boxes).
\end_layout

\end_inset

 Here,
 too,
 \SpecialChar LyX
 tries to provide sensible defaults,
 and it constructs default CSS style rules.
 But everything can be customized.
\end_layout

\begin_layout Standard
The XHTML \SpecialChar 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,
 \SpecialChar 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 \SpecialChar 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 \SpecialChar 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 Newline newline
\end_inset


\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,
 \SpecialChar 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 \SpecialChar LyX
's name for this type of float,
 as determined by the float declaration (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Floats"
nolink "false"

\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 "subsec:Citation-format-description"
nolink "false"

\end_inset

 for the details.
\end_layout

\begin_layout Subsection
\SpecialChar LyX
-generated CSS
\end_layout

\begin_layout Standard
We have several times mentioned that \SpecialChar 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 \SpecialChar LyX
 uses and how.
\end_layout

\begin_layout Standard
At present,
 \SpecialChar 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 "subsec:Font-description"
nolink "false"

\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 \SpecialChar 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 Section
\begin_inset CommandInset label
LatexCommand label
name "sec:Tags-for-DocBook"

\end_inset

Tags for DocBook output
\end_layout

\begin_layout Standard
As with \SpecialChar LaTeX
 or XHTML,
 the format of \SpecialChar LyX
's DocBook output is also controlled by layout information.
 In general,
 \SpecialChar LyX
 provides sensible defaults;
 however,
 much of the styling is lost during the conversion,
 as DocBook is strictly semantic and does not allow formatting.
 When possible,
 information from \SpecialChar LyX
 will be rendered in 
\family typewriter
role
\family default
 attributes.
\end_layout

\begin_layout Standard
In many cases,
 then,
 you may not have to do anything at all to get acceptable DocBook output for your own environments,
 custom insets,
 and so forth.
 But in some cases you will,
 and so \SpecialChar LyX
 provides a number of layout tags that can be used to customize the DocBook that is generated.
\end_layout

\begin_layout Standard
Labels are rarely output,
 as they are redundant in DocBook:
 this information is carried by the tags themselves,
 and whether labels appear in the final documents (after processing of DocBook files) is controlled by the stylesheets.
 However,
 sometimes,
 labels are not redundant content,
 such as definition lists:
 in this case,
 the term being defined will be the label.
\end_layout

\begin_layout Subsection
\begin_inset CommandInset label
LatexCommand label
name "subsec:Paragraph-Style-DocBook"

\end_inset

Paragraph styles
\end_layout

\begin_layout Standard
The sort of DocBook \SpecialChar LyX
 outputs for a paragraph depends upon whether we are dealing with a normal paragraph,
 a command,
 or an environment,
 where this is itself determined by the contents of the corresponding 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
\SpecialChar LaTeX
Type
\end_layout

\end_inset

 tag.
\end_layout

\begin_layout Standard
For a command or normal paragraph,
 the output DocBook has the following form:
\end_layout

\begin_layout LyX-Code
<tag attr>
\end_layout

\begin_layout LyX-Code
Contents of the paragraph.
\end_layout

\begin_layout LyX-Code
</tag>
\end_layout

\begin_layout Standard
For an environment that is not some sort of list,
 the generated DocBook takes this form:
\end_layout

\begin_layout LyX-Code
<tag attr>
\end_layout

\begin_layout LyX-Code
<itemtag>First paragraph.</itemtag>
\end_layout

\begin_layout LyX-Code
<itemtag>Second paragraph.</itemtag>
\end_layout

\begin_layout LyX-Code
</tag>
\end_layout

\begin_layout Standard
For a list,
 the resulting DocBook takes this form:
\end_layout

\begin_layout LyX-Code
<tag attr>
\end_layout

\begin_layout LyX-Code
<itemtag attr>First item.</itemtag>
\end_layout

\begin_layout LyX-Code
<itemtag attr>Second item.</itemtag>
\end_layout

\begin_layout LyX-Code
</tag>
\end_layout

\begin_layout Standard
The specific tags and roles output for each paragraph type can be controlled by means of the layout tags we are about to describe.
 Please note that,
 due to the very nature of DocBook,
 no sensible defaults really exist,
 and the values must always be carefully chosen.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookAttr
\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,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
attr
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 in the example above.
 This information can be used in further processing of the DocBook files.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookTag
\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 inset,
 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 the name of the float and always needs to be changed,
 as DocBook provides no generic tag.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookTagType
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
block,
 paragraph,
 inline
\end_layout

\end_inset

] The new-line policy for this tag,
 see Section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:DocBook-New-line-policy"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 for the details.
\end_layout

\begin_layout Subsection
New-line policy
\begin_inset CommandInset label
LatexCommand label
name "subsec:DocBook-New-line-policy"

\end_inset


\end_layout

\begin_layout Standard
For all tags,
 there are three possible policies for outputting new lines (given in the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBook*TagType
\end_layout

\end_inset

 attribute):
\end_layout

\begin_layout Itemize
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
block
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

:
 the opening and closing tags are on their own lines (i.e.
 a line feed after and before the opening and the closing tags).
 Typical elements are floats.
 For instance:
\end_layout

\begin_layout LyX-Code
Content before
\end_layout

\begin_layout LyX-Code
<blocktag>
\end_layout

\begin_layout LyX-Code
  Contents of the block.
\end_layout

\begin_layout LyX-Code
</blocktag>
\end_layout

\begin_layout LyX-Code
Content after
\end_layout

\begin_layout Itemize
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
paragraph
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

:
 the opening and closing tags are on the same,
 new line;
 a line feed is output before the opening tag and after the closing tag.
 Typical elements are paragraphs and list items.
 For instance:
\end_layout

\begin_layout LyX-Code
Content before
\end_layout

\begin_layout LyX-Code
<paratag>Contents of the paragraph.</paratag>
\end_layout

\begin_layout LyX-Code
Content after
\end_layout

\begin_layout Itemize
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
inline
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

:
 the opening and closing tags are on the same line as the rest of the content.
 No line feeds are output.
 Typical elements are fonts.
 For instance:
\end_layout

\begin_layout LyX-Code
Content before<inlinetag>Contents of the paragraph.</inlinetag>Content after
\end_layout

\begin_layout Standard
The default value is always 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
block
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Subsection
InsetLayout DocBook
\end_layout

\begin_layout Standard
The DocBook output of insets can also be controlled by information in layout files.
\end_layout

\begin_layout Standard
The DocBook \SpecialChar LyX
 outputs for an inset has the following form:
\end_layout

\begin_layout LyX-Code
<wrappertag wrapperattr>
\end_layout

\begin_layout LyX-Code
  <tag attr>
\end_layout

\begin_layout LyX-Code
    <innertag innerattr>
\end_layout

\begin_layout LyX-Code
      Contents of the inset.
\end_layout

\begin_layout LyX-Code
    </innertag>
\end_layout

\begin_layout LyX-Code
  </tag>
\end_layout

\begin_layout LyX-Code
</wrappertag>
\end_layout

\begin_layout Standard
For an itemising inset,
 it rather looks like this:
\end_layout

\begin_layout LyX-Code
<wrappertag wrapperattr>
\end_layout

\begin_layout LyX-Code
  <tag attr>
\end_layout

\begin_layout LyX-Code
    <innertag innerattr>
\end_layout

\begin_layout LyX-Code
      <itemwrappertag itemwrapperattr>
\end_layout

\begin_layout LyX-Code
        <itemlabeltag itemattr>
\end_layout

\begin_layout LyX-Code
          Label of the first item.
\end_layout

\begin_layout LyX-Code
        </itemtag>
\end_layout

\begin_layout LyX-Code
        <itemtag itemattr>
\end_layout

\begin_layout LyX-Code
          <itemtag itemattr>
\end_layout

\begin_layout LyX-Code
            Contents of the first item.
\end_layout

\begin_layout LyX-Code
          </itemtag>
\end_layout

\begin_layout LyX-Code
        </itemtag>
\end_layout

\begin_layout LyX-Code
      </itemwrappertag>
\end_layout

\begin_layout LyX-Code
      <itemwrappertag itemwrapperattr>
\end_layout

\begin_layout LyX-Code
        <itemlabeltag itemattr>
\end_layout

\begin_layout LyX-Code
          Label of the second item.
\end_layout

\begin_layout LyX-Code
        </itemtag>
\end_layout

\begin_layout LyX-Code
        <itemtag itemattr>
\end_layout

\begin_layout LyX-Code
          <itemtag itemattr>
\end_layout

\begin_layout LyX-Code
            Contents of the second item.
\end_layout

\begin_layout LyX-Code
          </itemtag>
\end_layout

\begin_layout LyX-Code
        </itemtag>
\end_layout

\begin_layout LyX-Code
      </itemwrappertag>
\end_layout

\begin_layout LyX-Code
      ...
\end_layout

\begin_layout LyX-Code
    </innertag>
\end_layout

\begin_layout LyX-Code
  </tag>
\end_layout

\begin_layout LyX-Code
</wrappertag>
\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 themselves be output as paragraphs formatted according to the styles used for those paragraphs (standard,
 quote,
 and the like).
 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
DocBookAttr
\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,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
attr
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 in the example above.
 This information can be used in further processing of the DocBook files.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookInInfo
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
never,
 always,
 maybe
\end_layout

\end_inset

] Specifies whether this tag goes into the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<info>
\end_layout

\end_inset

 tag at the beginning of the parent layout.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
never
\end_layout

\end_inset

 indicates that the tag never goes into 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<info>
\end_layout

\end_inset

 (this is default value,
 and corresponds to usual content).
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
always
\end_layout

\end_inset

 indicates that the tag always goes into 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<info>
\end_layout

\end_inset

 (this corresponds to usual metadata):
 if there is no 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<info>
\end_layout

\end_inset

 tag for the parent,
 one 
\series bold
will
\series default
 be generated.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
maybe
\end_layout

\end_inset

 indicates that the tag may go into 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<info>
\end_layout

\end_inset

 (this is only the case for titles):
 if there is no 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<info>
\end_layout

\end_inset

 tag for the parent,
 
\series bold
none
\series default
 will be generated,
 the corresponding tag will be output directly as content.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookItemAttr
\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 item tag,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
itemattr
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 in the example above.
 This information can be used in further processing of the DocBook files.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookItemInnerAttr
\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 item inner tag,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
iteminnerattr
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 in the example above.
 This information can be used in further processing of the DocBook files.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookItemInnerTag
\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 item inner tag within the inset,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
iteminnertag
\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
NONE
\end_layout

\end_inset

,
 indicating that there is no item inner tag:
 content is directly output without it for each itemised element.
 This parameter only makes sense when itemising layouts are used,
 such as lists.
 The most likely value is 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
para
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
\begin_inset Newline newline
\end_inset

When a list item is split using a new line,
 the item inner tag will be repeated for each part of the paragraph,
 parts being separated by new lines.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookItemInnerTagType
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
block,
 paragraph,
 inline
\end_layout

\end_inset

] The new-line policy for this tag,
 see Section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:DocBook-New-line-policy"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 for the details.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookItemLabelAttr
\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 item label tag,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
itemlabelattr
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 in the example above.
 This information can be used in further processing of the DocBook files.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookItemLabelTag
\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 item label tag within the inset,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
itemlabeltag
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 in the example above.
 This parameter only makes sense when itemising layouts are used with a notion of labels,
 such as definition lists.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookItemLabelTagType
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
block,
 paragraph,
 inline
\end_layout

\end_inset

] The new-line policy for this tag,
 see Section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:DocBook-New-line-policy"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 for the details.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookItemTag
\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 item tag within the inset,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
itemtag
\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
NONE
\end_layout

\end_inset

,
 indicating that there is no item tag.
 This parameter only makes sense when itemising layouts are used,
 such as lists.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookItemTagType
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
block,
 paragraph,
 inline
\end_layout

\end_inset

] The new-line policy for this tag,
 see Section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:DocBook-New-line-policy"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 for the details.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookItemWrapperAttr
\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 item wrapper tag,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
itemwrapperattr
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 in the example above.
 This information can be used in further processing of the DocBook files.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookItemWrapperTag
\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 item wrapper tag within the inset,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
itemwrappertag
\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
NONE
\end_layout

\end_inset

,
 indicating that there is no item wrapper tag:
 tag and content are directly output without it for each itemised element.
 This parameter only makes sense when itemising layouts are used,
 such as lists.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookItemWrapperTagType
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
block,
 paragraph,
 inline
\end_layout

\end_inset

] The new-line policy for this tag,
 see Section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:DocBook-New-line-policy"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 for the details.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookInnerAttr
\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 inner tag,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
innerattr
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 in the example above.
 This information can be used in further processing of the DocBook files.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookInnerTag
\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 inner tag within the inset,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
innertag
\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
NONE
\end_layout

\end_inset

,
 indicating that there is no inner tag:
 content is directly output without it.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookInnerTagType
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
block,
 paragraph,
 inline
\end_layout

\end_inset

] The new-line policy for this tag,
 see Section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:DocBook-New-line-policy"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 for the details.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookSectionTag
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
string
\end_layout

\end_inset

] Specifies the tag that corresponds to this kind of section.
 This parameter only makes sense for sectioning elements (part,
 chapter,
 section,
 etc.).
 The default value is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
section
\end_layout

\end_inset

,
 and is only overridden when DocBook uses something else for sectioning (typically,
 parts and chapters of a book).
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookTag
\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 inset,
 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 the name of the float and always needs to be changed,
 as DocBook provides no generic inset tag.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookTagType
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
block,
 paragraph,
 inline
\end_layout

\end_inset

] The new-line policy for this tag,
 see Section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:DocBook-New-line-policy"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 for the details.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookWrapperAttr
\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 outer wrapper tag,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
wrapperattr
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 in the example above.
 This information can be used in further processing of the DocBook files.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookWrapperTag
\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 wrapper tag around the inset,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
wrappertag
\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
NONE
\end_layout

\end_inset

,
 indicating that there is no wrapper tag:
 tag and content are directly output without it.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookWrapperTagType
\end_layout

\end_inset

 [
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
block,
 paragraph,
 inline
\end_layout

\end_inset

] The new-line policy for this tag,
 see Section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:DocBook-New-line-policy"
plural "false"
caps "false"
noprefix "false"
nolink "false"

\end_inset

 for the details.
\end_layout

\begin_layout Subsection
Float DocBook
\end_layout

\begin_layout Standard
The DocBook output for floats too can be controlled by layout information.
 The output has the following form:
\end_layout

\begin_layout LyX-Code
<tag attr>
\end_layout

\begin_layout LyX-Code
  Contents of the float as DocBook.
\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 a title.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookAttr
\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,
 replacing 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
attr
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 in the example above.
 This information can be used in further processing of the DocBook files.
\end_layout

\begin_layout Description
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DocBookTag
\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 the name of the float and always needs to be changed,
 as DocBook provides no generic float tag.
\end_layout

\begin_layout Subsection
Bibliography formatting
\end_layout

\begin_layout Standard
Included bibliographies cannot be formatted:
 all fields are always output in the database-like DocBook format (equivalent to a BibTeX file),
 using the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
biblioentry
\end_layout

\end_inset

 tag.
\end_layout

\begin_layout Standard
When the bibliographic entries are manually inserted into the \SpecialChar LyX
 document as Bibliography Items,
 the user deals with formatting themself:
 there is no attempt of parsing what the user wrote,
 the string is directly used (with the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
bibliomixed
\end_layout

\end_inset

 tag).
\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"
thickness "0.4pt"
separation "3pt"
shadowsize "4pt"
framecolor "black"
backgroundcolor "none"
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 \SpecialChar 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 \SpecialChar LyX
 should interface with a certain kind of material.
 As bundled,
 \SpecialChar 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 Noun
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 \SpecialChar 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 \SpecialChar 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-winning 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 parametrized on the different export formats that \SpecialChar 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 \SpecialChar 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 files
\end_layout

\begin_layout Standard
It is relatively easy to add custom external template definitions to \SpecialChar 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"
nolink "false"

\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
*.xtemplate
\end_layout

\end_inset

 files that are stored in the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyXDir/lib/xtemplates/
\end_layout

\end_inset

 directory.
 Each template is defined in a file of its own.
 You can place your own templates in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UserDir/xtemplates/
\end_layout

\end_inset

 or copy existing templates to that directory in order to modify them.
\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 "[XFig:
 $$FName]"
\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
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 \SpecialChar 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 \SpecialChar LyX
 (see 
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Formats"
nolink "false"

\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.
 \SpecialChar 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|XHTML
\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 \SpecialChar 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 \SpecialChar 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 \SpecialChar 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 \SpecialChar 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 \SpecialChar 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 \SpecialChar LyX
 (see the 
\begin_inset Flex Noun
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 \SpecialChar 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 \SpecialChar 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
\change_inserted -712698321 1712390130
.
 If compiling with \SpecialChar LyX
,
 this is the path to the file in the temporary directory
\change_unchanged
.
\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
$$pngOrjpg
\end_layout

\end_inset

 This will be the string 
\begin_inset Quotes eld
\end_inset

jpg
\begin_inset Quotes erd
\end_inset

 if the file is in JPEG format,
 otherwise it will be the string 
\begin_inset Quotes eld
\end_inset

png
\begin_inset Quotes erd
\end_inset

.
 This is useful to avoid uneeded conversions for output formats that support both PNG and JPEG fomats.
 The predefined RasterImage template uses this macro for the pdf\SpecialChar TeX
 output format.
\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 \SpecialChar 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 \SpecialChar LyX
 document).
\change_inserted -712698321 1712389740

\end_layout

\begin_layout Description

\change_inserted -712698321 1712390181
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\change_inserted -712698321 1712389749
$$OrigAbsName
\change_unchanged

\end_layout

\end_inset

 The file name with absolute path to the original directory (not the temporary directory).
\change_unchanged

\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 \SpecialChar 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 \SpecialChar 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 \SpecialChar 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,
 respectively.
 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
\SpecialChar LaTeX
 treats relative file names differently than \SpecialChar LyX
 and other programs in nested included files.
 For \SpecialChar LyX
,
 a relative file name is always relative to the document that contains the file name.
 For \SpecialChar 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 \SpecialChar LaTeX
.
 Fortunately \SpecialChar 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 \SpecialChar 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 \SpecialChar 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 \SpecialChar 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 \SpecialChar LyX
 distribution,
 although we do encourage people to submit new templates in the open source tradition.
 But \SpecialChar 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 \SpecialChar 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 \SpecialChar 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
rsphrase
\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
setspace
\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
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
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
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
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
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
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
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
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
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
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
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
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
refstyle
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
tcolorbox
\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
rotating
\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
rotfloat
\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 below are the standard colors and those that you can adjust in the \SpecialChar LyX
 preferences.
\end_layout

\begin_layout Section
Color functions
\end_layout

\begin_layout Standard
The following are no real colors,
 but rather act on color definitions:
\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
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 Section
Static colors
\end_layout

\begin_layout Standard
These are fixed colors that cannot be customized.
 Please do 
\emph on
not
\emph default
 use these colors in layout definitions,
 since they will not work well with some color themes (such as dark themes):
\end_layout

\begin_layout Description
black
\end_layout

\begin_layout Description
white
\end_layout

\begin_layout Description
blue
\end_layout

\begin_layout Description
brown
\end_layout

\begin_layout Description
cyan
\end_layout

\begin_layout Description
darkgray
\end_layout

\begin_layout Description
gray
\end_layout

\begin_layout Description
green
\end_layout

\begin_layout Description
lightgray
\end_layout

\begin_layout Description
lime
\end_layout

\begin_layout Description
magenta
\end_layout

\begin_layout Description
olive
\end_layout

\begin_layout Description
orange
\end_layout

\begin_layout Description
pink
\end_layout

\begin_layout Description
purple
\end_layout

\begin_layout Description
red
\end_layout

\begin_layout Description
teal
\end_layout

\begin_layout Description
violet
\end_layout

\begin_layout Description
yellow
\end_layout

\begin_layout Section
Dynamic colors
\end_layout

\begin_layout Standard
These are the colors allocated to specific elements in 
\begin_inset Info
type  "menu"
arg   "dialog-show prefs"
\end_inset

:
\end_layout

\begin_layout Description
added_space Added space 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
bookmark Bookmark indicator 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 button background
\end_layout

\begin_layout Description
buttonframe Color for inset button frames
\end_layout

\begin_layout Description
buttonhoverbg Color used for button background under focus
\end_layout

\begin_layout Description
buttonhoverbg_broken Color used for broken inset button under focus
\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
changedtextcomparison Changed text color document comparison (workarea)
\end_layout

\begin_layout Description
collapsible Collapsible insets text color
\end_layout

\begin_layout Description
collapsibleframe Collapsible insets framecolor
\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
command_broken Text color for broken (reference) insets
\end_layout

\begin_layout Description
commandbg_broken Background color for broken insets
\end_layout

\begin_layout Description
commandframe_broken Frame color for broken insets
\end_layout

\begin_layout Description
comment Label 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 (for adjusting the brightness)
\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 \SpecialChar LaTeX
 error box
\end_layout

\begin_layout Description
footlabel Label color for footnotes
\end_layout

\begin_layout Description
foreground Foreground color
\end_layout

\begin_layout Description
graphicsbg Graphics inset background color
\end_layout

\begin_layout Description
greyedoutbg Background color of greyedout inset
\end_layout

\begin_layout Description
greyedoutlabel Label color for greyedout insets
\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
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 \SpecialChar 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
note Label color for notes
\end_layout

\begin_layout Description
notebg Background color of 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
scroll Color that indicates when a row can be scrolled 
\end_layout

\begin_layout Description
selection Background color of selected text
\end_layout

\begin_layout Description
selectionmath Foreground color of selected text in math insets
\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
textlabel1 Color 1 of layout and custom inset labels
\end_layout

\begin_layout Description
textlabel2 Color 2 of layout and custom inset labels
\end_layout

\begin_layout Description
textlabel3 Color 3 of layout and custom inset labels
\end_layout

\begin_layout Description
urllabel Label color for URL insets
\end_layout

\begin_layout Description
urltext Color for URL inset text
\end_layout

\end_body
\end_document
