-#LyX 1.6.0svn created this file. For more info see http://www.lyx.org/
-\lyxformat 344
+#LyX 2.0.0svn created this file. For more info see http://www.lyx.org/
+\lyxformat 353
\begin_document
\begin_header
\textclass scrbook
% redefine the \LyX macro for PDF bookmarks
\def\LyX{\texorpdfstring{%
L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\@}
- {LyX }}
+ {LyX}}
% used for multi-column text
\usepackage{multicol}
\font_sans default
\font_typewriter default
\font_default_family default
+\use_xetex false
\font_sc false
\font_osf false
\font_sf_scale 100
\font_tt_scale 100
\graphics default
+\default_output_format default
\paperfontsize 12
\spacing single
\use_hyperref true
\use_esint 0
\cite_engine basic
\use_bibtopic false
+\use_indices false
\paperorientation portrait
+\backgroundcolor #ffffff
\branch OutDated
\selected 0
\color #f5fae7
\output_changes false
\author ""
\author ""
+\author ""
+\author ""
+\author ""
\end_header
\begin_body
\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 Heck <rgheck@comcast.net>.
\end_layout
\end_inset
-
+
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+Version 2.0.x
\end_layout
\begin_layout Standard
\end_inset
+\end_layout
+
+\begin_layout Standard
+\begin_inset Note Note
+status open
+
+\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
In it, we discuss issues like keyboard shortcuts, screen previewing options,
printer options, sending commands to LyX via the LyX Server, internationalizati
on, installing new LaTeX classes and 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
+ 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
-status collapsed
+status open
\begin_layout Standard
Information from previous versions of this document that now seems to be
status collapsed
\begin_layout Plain Layout
-
-\bar under
-H
-\bar default
-elp\SpecialChar \menuseparator
+Help\SpecialChar \menuseparator
About
\begin_inset space ~
\end_inset
-Ly
-\bar under
-X
+LyX
\end_layout
\end_inset
\end_inset
and its sub-directories contain a number of files and that can be used
- to customise LyX's behaviour.
+ to customize LyX's behavior.
You can change many of these files from within LyX itself through the
\begin_inset Flex CharStyle:MenuItem
status collapsed
\begin_layout Plain Layout
-
-\bar under
-T
-\bar default
-ools\SpecialChar \menuseparator
-
-\bar under
-P
-\bar default
-references
+Tools\SpecialChar \menuseparator
+Preferences
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-
-\bar under
-H
-\bar default
-elp\SpecialChar \menuseparator
-L
-\bar under
-a
-\bar default
-TeX
+Help\SpecialChar \menuseparator
+LaTeX
\begin_inset space ~
\end_inset
\end_inset
deserves special attention, as noted above.
- If there exists an internationalized version of the help-document with
-
+ The internationalized help docs are in subdirectories
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-$LANG_
+doc/xx
\end_layout
\end_inset
- prepended to the name, that will be used first.
- See Chapter
+ where
+\begin_inset Quotes eld
+\end_inset
+
+xx
+\begin_inset Quotes erd
+\end_inset
+
+ is the ISO language code.
+ See chapter
\begin_inset space ~
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
-reference "chap:i18n"
+reference "cha:Internationalizing-LyX"
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
-reference "chap:textclass"
+reference "cha:Installing-New-Document"
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:templates"
+reference "sec:Creating-Templates"
\end_inset
status collapsed
\begin_layout Plain Layout
-
-\bar under
-H
-\bar default
-elp\SpecialChar \menuseparator
+Help\SpecialChar \menuseparator
About
\begin_inset space ~
\end_inset
\end_inset
this contains tables describing how different character encodings can be
- mapped to unicode
+ mapped to Unicode
\end_layout
\begin_layout Labeling
status collapsed
\begin_layout Plain Layout
-
-\bar under
-H
-\bar default
-elp\SpecialChar \menuseparator
+Help\SpecialChar \menuseparator
About
\begin_inset space ~
\end_inset
status collapsed
\begin_layout Plain Layout
-
-\bar under
-T
-\bar default
-ools\SpecialChar \menuseparator
-
-\bar under
-P
-\bar default
-references
+Tools\SpecialChar \menuseparator
+Preferences
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-
-\bar under
-T
-\bar default
-ools\SpecialChar \menuseparator
-
-\bar under
-R
-\bar default
-econfigure
+Tools\SpecialChar \menuseparator
+Reconfigure
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-
-\bar under
-D
-\bar default
-ocument\SpecialChar \menuseparator
-
-\bar under
-S
-\bar default
-ettings
+Document\SpecialChar \menuseparator
+Settings
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-
-\bar under
-H
-\bar default
-elp
+Help
\end_layout
\end_inset
\end_inset
- subirectory, however, since it contains a file written by the configuration
+ subdirectory, however, since it contains a file written by the configuration
script (also accessible through
\begin_inset Flex CharStyle:MenuItem
status collapsed
\begin_layout Plain Layout
-
-\bar under
-T
-\bar default
-ools\SpecialChar \menuseparator
-
-\bar under
-R
-\bar default
-econfigure
+Tools\SpecialChar \menuseparator
+Reconfigure
\end_layout
\end_inset
\end_layout
\begin_layout Section
-Using the dialog for the first time
-\end_layout
-
-\begin_layout Standard
-The
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-UserDir/preferences
-\end_layout
-
-\end_inset
-
- file will contain only changes that you have made to the default behavior,
- some of which is hard-coded into LyX and some of which is contained in
- the system file
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-LyXDir/lyxrc.defaults
-\end_layout
-
-\end_inset
-
-.
- Note that in both files lines beginning with a
-\begin_inset Quotes eld
-\end_inset
-
-#
-\begin_inset Quotes erd
-\end_inset
-
- are just comments and are not interpreted.
- However, only system administrators should edit
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-LyXDir/lyxrc.defaults
-\end_layout
-
-\end_inset
-
-.
- Users should use the
-\begin_inset Flex CharStyle:MenuItem
-status collapsed
-
-\begin_layout Plain Layout
-Tools\SpecialChar \menuseparator
-Preferences
-\end_layout
+Formats
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:Formats"
\end_inset
- dialog to create and modify their own
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-UserDir/preferences
-\end_layout
-
-\end_inset
- file.
\end_layout
\begin_layout Standard
-We hope that the
+The first step is to define your file formats if they are not already defined.
+ To do so, open the
\begin_inset Flex CharStyle:MenuItem
status collapsed
\end_inset
- dialog will be largely self-explanatory.
- Most things in the dialog have associated `tool tips': hover your mouse
- pointer over something for more information.
- Before we highlight a few of the more important commands below, however,
- a word of warning: Applying some of your changes (e.g., screen fonts) will
- have an instant effect.
- Others (e.g.
- changing the bind file) will not.
- If nothing appears to have changed, just
-\begin_inset Flex CharStyle:MenuItem
-status collapsed
-
-\begin_layout Plain Layout
-Save
-\end_layout
-
-\end_inset
-
- the changes and restart LyX.
-\end_layout
-
-\begin_layout Section
-File Handling
-\end_layout
-
-\begin_layout Standard
-LyX has a powerful mechanism to convert to and from any file format using
- external programs.
-
-\end_layout
-
-\begin_layout Subsection
-\begin_inset CommandInset label
-LatexCommand label
-name "sub:Formats"
-
-\end_inset
-
-Formats
-\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
+ dialog.
+ Under
\begin_inset Flex CharStyle:MenuItem
status collapsed
\begin_layout Plain Layout
-Tools\SpecialChar \menuseparator
-Preferences\SpecialChar \menuseparator
File Handling\SpecialChar \menuseparator
-File Formats
+File formats
\end_layout
\end_inset
- dialog.
- Press the
+ press the
\begin_inset Flex CharStyle:MenuItem
status collapsed
\end_inset
- is used to identify the format interally.
+ is used to identify the format internally.
You will also need to enter a file extension.
These are all required.
The optional
\end_inset
option tells LyX that a format is suitable for document export.
- If this is is set and if a suitable conversion route exists (see
+ If this is is set and if a suitable conversion route exists (see sec.
+\begin_inset space \thinspace{}
+\end_inset
+
+
\begin_inset CommandInset ref
LatexCommand ref
-reference "sub:Converters"
+reference "sec:Converters"
\end_inset
.
\end_layout
-\begin_layout Subsection
+\begin_layout Section
Copiers
\end_layout
status collapsed
\begin_layout Plain Layout
-For example, the file may refer to other files---images, for example---using
+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
g.
-\begin_inset space ~
+\begin_inset space \space{}
\end_inset
\end_inset
-Save that in your local LyX directory---say,
+Save that in your local LyX directory—say,
\begin_inset Flex CharStyle:Code
status collapsed
\end_inset
----and make it executable, if you need to do so on your platform.
+—and make it executable, if you need to do so on your platform.
Then, in the
\begin_inset Flex CharStyle:MenuItem
status collapsed
\begin_layout Plain Layout
Tools\SpecialChar \menuseparator
-Preferences:Copiers
+Preferences
+\end_layout
+
+\end_inset
+
+ dialog, select under
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+File Handling\SpecialChar \menuseparator
+File formats
\end_layout
\end_inset
- dialog, select the
+ the
\begin_inset Flex CharStyle:MenuItem
status collapsed
\end_inset
- format---or one of the other pdf formats---and enter
+ format—or one of the other pdf formats—and enter
\begin_inset Flex CharStyle:Code
status collapsed
\end_layout
-\begin_layout Subsection
+\begin_layout Section
+Converters
\begin_inset CommandInset label
LatexCommand label
-name "sub:Converters"
+name "sec:Converters"
\end_inset
-Converters
+
\end_layout
\begin_layout Standard
-You can define your own Converters to, uhh, convert files between different
- formats.
+You can define your own Converters to convert files between different formats.
This is done in the
\begin_inset Flex CharStyle:MenuItem
status collapsed
\end_inset
- and
-\begin_inset space \thinspace{}
-\end_inset
-
-
+ and
\begin_inset Flex CharStyle:MenuItem
status collapsed
\end_inset
- The base filename of the input file (i.e., without the extension)
+ The base filename of the input file (i.
+\begin_inset space \thinspace{}
+\end_inset
+
+g., without the extension)
\end_layout
\begin_layout Labeling
The path to the input file
\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle: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 chain
+ of converters is called).
+\end_layout
+
\begin_layout Standard
In the
\begin_inset Flex CharStyle:MenuItem
\begin_layout Standard
You do not have to define converters between all the formats between which
you want to convert.
- For example, you will note that there is no `LyX to PostScript®' converter,
- but LyX will export PostScript®.
+ For example, you will note that there is no `LyX to PostScript' converter,
+ but LyX will export PostScript.
It does so by first creating a LaTeX file (no converter needs to be defined
for this) which is then converted to DVI using the `LaTeX to DVI' converter,
- and finally converting the resulting DVI file to PostScript®.
+ and finally converting the resulting DVI file to PostScript.
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
\end_inset
-; via (DVI and) PostScript®, using
+; via (DVI and) PostScript, using
\begin_inset Flex CharStyle:MenuItem
status collapsed
formats', as described in section
\begin_inset CommandInset ref
LatexCommand ref
-reference "sub:Formats"
+reference "sec:Formats"
\end_inset
Internationalizing LyX
\begin_inset CommandInset label
LatexCommand label
-name "chap:i18n"
+name "cha:Internationalizing-LyX"
\end_inset
\end_inset
- (e.g.
-
-\begin_inset Flex CharStyle:Code
-status collapsed
-
+ (e.
+\begin_inset space \thinspace{}
+\end_inset
+
+g.
+\begin_inset space \space{}
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
\begin_layout Plain Layout
/usr/local/share/locale/xx/LC_MESSAGES/lyx.mo
\end_layout
\end_layout
\begin_layout Subsubsection
-Ambigous messages
+Ambiguous messages
\end_layout
\begin_layout Standard
\end_inset
- does not handle such ambigous translations.
+ does not handle such ambiguous translations.
Therefore you have to add some context information to the message: Instead
of
\begin_inset Flex CharStyle:Code
\end_inset
- Now the two occurences of
+ Now the two occurrences of
\begin_inset Flex CharStyle:Code
status collapsed
status collapsed
\begin_layout Plain Layout
-
-\bar under
-H
-\bar default
-elp
+Help
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-LyXDir/doc/xx_DocName.lyx
+LyXDir/doc/xx/DocName.lyx
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-
-\bar under
-H
-\bar default
-elp\SpecialChar \menuseparator
+Help\SpecialChar \menuseparator
\bar under
I
status collapsed
\begin_layout Plain Layout
-UserDir/doc/
+UserDir/doc/xx/
\end_layout
\end_inset
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
\emph default
\family roman
-followed by the other, unallowed key, as output.
+followed by the other, not allowed key, as output.
\family default
Note that a
status collapsed
\begin_layout Plain Layout
-
-\bar under
-E
-\bar default
-dit\SpecialChar \menuseparator
-
-\bar under
-P
-\bar default
-references
+Edit\SpecialChar \menuseparator
+Preferences
\end_layout
\end_inset
\end_layout
\begin_layout Chapter
-Installing New Document Classes, Layouts, and Templates
+Installing New Document Classes, Layouts, and Templates
\begin_inset CommandInset label
LatexCommand label
-name "chap:textclass"
+name "cha:Installing-New-Document"
\end_inset
can be used somewhat interchangeably, but it is better to refer to the
file as the layout, and the thing living in LyX's memory as the text class.
A template file is simply a LyX document that contains a set of predefined
- entries for a given document class---entries that are generally required
+ entries for a given document class—entries that are generally required
for that class.
Templates are especially useful for things like journal manuscripts that
are to be submitted electronically.
\end_inset
- variables; e.g.
+ variables; e.
+\begin_inset space \thinspace{}
+\end_inset
+
+g.
\begin_inset Newline newline
\end_inset
\end_inset
) and then restart LyX.
- You should then see your new package---for example
+ You should then see your new package—for example
\begin_inset Flex CharStyle:MenuItem
status collapsed
\end_inset
----under
+—under
\begin_inset Flex CharStyle:MenuItem
status collapsed
\end_inset
.
- If the argument has a datatype like
+ If the argument has a data type like
\begin_inset Quotes eld
\end_inset
\begin_layout Subsection
Layout modules
+\begin_inset CommandInset label
+LatexCommand label
+name "sub:Layout-modules"
+
+\end_inset
+
+
\end_layout
\begin_layout Standard
\emph default
.
Modules are to LaTeX packages much as layouts are to LaTeX classes, and
- some modules---such as the Endnotes module---provide support for just such
+ some modules—such as the endnotes module—provide support for just such
a package.
- In a sense, layout modules are similar to included files---files like
+ In a sense, layout modules are similar to included files—files like
\begin_inset Flex CharStyle:Code
status collapsed
\end_inset
----in that modules are not specific to a given document layout but may be
+—in that modules are not specific to a given document layout but may be
used with many different layouts.
The difference is that using a layout module does not require editing the
layout file.
\end_layout
\begin_layout Standard
-The argument in square brackets is optional: It declares any LaTeX packages
- on which the module depends.
- The mandatory argument, in curly brackets, is the name of the module, as
+The mandatory argument, in curly brackets, is the name of the module, as
it should appear in
\begin_inset Flex CharStyle:MenuItem
status collapsed
\end_inset
.
-
+ The argument in square brackets is optional: It declares any LaTeX packages
+ on which the module depends.
+ Please note that only packages about which LyX knows should be listed in
+ the square brackets.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+The list of such packages is documented only in the source code.
+\end_layout
+
+\end_inset
+
+ LyX will not check for arbitrary packages.
\end_layout
\begin_layout Standard
\begin_layout LyX-Code
#You will need to add
\backslash
-theendnotes in ERT where you
+theendnotes in TeX code where you
\end_layout
\begin_layout LyX-Code
\begin_layout Standard
If your new document class is provided as a style file that is used in conjuncti
-on with an existing, supported document class---for the sake of the example,
+on with an existing, supported document class—for the sake of the example,
we'll assume that the style file is called
\begin_inset Flex CharStyle:MenuItem
status collapsed
\end_inset
-, which is a standard class---start by copying the existing class's layout
+, which is a standard class—start by copying the existing class's layout
file into your local directory:
\end_layout
status collapsed
\begin_layout Plain Layout
-
-\bar under
-T
-\bar default
-ools\SpecialChar \menuseparator
-
-\bar under
-R
-\bar default
-econfigure
+Tools\SpecialChar \menuseparator
+Reconfigure
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-
-\bar under
-D
-\bar default
-ocument\SpecialChar \menuseparator
-
-\bar under
-S
-\bar default
-ettings
+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---
+ class will work differently from how they worked in the base class—
\begin_inset Flex CharStyle:Code
status collapsed
\end_inset
- in this example---so you can fiddle around with the settings for the different
+ in this example—so you can fiddle around with the settings for the different
sections if you wish.
\end_layout
status collapsed
\begin_layout Plain Layout
-
-\bar under
-D
-\bar default
-ocument\SpecialChar \menuseparator
-
-\bar under
-S
-\bar default
-ettings
+Document\SpecialChar \menuseparator
+Settings
\end_layout
\end_inset
\begin_layout Standard
The class need only be specified if the name of the LaTeX class file and
- the name of the layout file are different; if the name of the classfile
+ the name of the layout file are different; if the name of the class file
is not specified, then LyX will simply assume that it is the same as the
name of the layout file.
\end_layout
status collapsed
\begin_layout Plain Layout
-
-\bar under
-T
-\bar default
-ools\SpecialChar \menuseparator
-
-\bar under
-R
-\bar default
-econfigure
+Tools\SpecialChar \menuseparator
+Reconfigure
\end_layout
\end_inset
\end_inset
.
- There is no default binding for this function---though, of course, you
- can bind it to a key yourself.
+ There is no default binding for this function—though, of course, you can
+ bind it to a key yourself.
If you want to use this function, then, you should simply enter it in the
mini-buffer.
] This tag was introduced with LyX 1.4.0 (layout files of LyX 1.3.x and earlier
don't have an explicit file format).
- The file format that is documented here is format 8.
+ The file format that is documented here is format 14.
\end_layout
\begin_layout Subsection
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:classoptions"
+reference "sub:ClassOptions"
\end_inset
status collapsed
\begin_layout Plain Layout
-
-\bar under
-D
-\bar default
-ocument\SpecialChar \menuseparator
-
-\bar under
-S
-\bar default
-ettings
+Document\SpecialChar \menuseparator
+Settings
\end_layout
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:counter"
+reference "sub:Counters"
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:fonts"
+reference "sub:Font-description"
\end_inset
\begin_inset Flex CharStyle:Code
status collapsed
+\begin_layout Plain Layout
+DefaultModule
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string]
+\end_layout
+
+\end_inset
+
+ Specifies a module to be included by default with this document class,
+ which should be specified by filename without the
+\begin_inset Flex CharStyle: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 CharStyle:Code
+status collapsed
+
\begin_layout Plain Layout
DefaultStyle
\end_layout
\begin_inset Flex CharStyle:Code
status collapsed
+\begin_layout Plain Layout
+ExcludesModule
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] Indicates that the module in question—which should be specified by filename
+ without the
+\begin_inset Flex CharStyle: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 CharStyle: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 "sub:Layout-modules"
+
+\end_inset
+
+).
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
\begin_layout Plain Layout
Float
\end_layout
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:floats"
+reference "sub:Floats"
\end_inset
This section (re-)defines the layout of an inset.
It can be applied to an existing inset of to a new, user-defined inset,
- e.g., a new character style.
+ e.
+\begin_inset space \thinspace{}
+\end_inset
+
+g.
+\begin_inset space \space{}
+\end_inset
+
+a new character style.
See Section
\begin_inset space ~
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:charstyle"
+reference "sub:Flex-insets-and"
\end_inset
status collapsed
\begin_layout Plain Layout
-
-\bar under
-D
-\bar default
-ocument\SpecialChar \menuseparator
-
-\bar under
-S
-\bar default
-ettings
+Document\SpecialChar \menuseparator
+Settings
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-Premable
+Preamble
\end_layout
\end_inset
,\SpecialChar \ldots{}
); the complete list of supported features is unfortunately not documented
- outside the LyX source code---but see
+ outside the LyX source code—but see
\begin_inset Flex CharStyle:Code
status collapsed
status collapsed
\begin_layout Plain Layout
+Help\SpecialChar \menuseparator
+LaTeX Configuration
+\end_layout
-\bar under
-H
-\bar default
-elp\SpecialChar \menuseparator
+\end_inset
-\bar under
-L
-\bar default
-aTeX Configuration
+ also gives an overview of the supported packages.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+ProvidesModule
\end_layout
\end_inset
- also gives an overview of the supported packages.
+ [
+\begin_inset Flex CharStyle: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 CharStyle: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 CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+DefaultModule
+\end_layout
+
+\end_inset
+
+ tag to indicate that it ought to be used.
+ It could be used in a module that provided an alternate implementation
+ of the same functionality.
\end_layout
\begin_layout Description
\end_inset
-] Whether the class requires the feature
+] Whether the class requires the feature
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
- string
+string
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-
-\bar under
-D
-\bar default
-ocument\SpecialChar \menuseparator
-
-\bar under
-S
-\bar default
-ettings
+Document\SpecialChar \menuseparator
+Settings
\end_layout
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:style"
+reference "sub:Paragraph-Styles"
\end_inset
\begin_layout Description
\begin_inset Flex CharStyle:Code
-status open
+status collapsed
\begin_layout Plain Layout
TocDepth
counter in LaTeX.
\end_layout
-\begin_layout Description
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-UseModule
-\end_layout
-
-\end_inset
-
- [
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-string]
-\end_layout
-
-\end_inset
-
- Specifies a module to be included by default with this document class.
- 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 Subsection
\begin_inset Flex CharStyle:Code
status collapsed
\end_inset
section
-\end_layout
-
-\begin_layout Standard
\begin_inset CommandInset label
LatexCommand label
-name "sec:classoptions"
+name "sub:ClassOptions"
\end_inset
+
+\end_layout
+
+\begin_layout Standard
The
\begin_inset Flex CharStyle:Code
status collapsed
\end_inset
Used to set the DTD line with XML-based output classes.
- E.g.: PUBLIC
+ E.
+\begin_inset space \thinspace{}
+\end_inset
+
+g.: PUBLIC
\begin_inset Quotes eld
\end_inset
\begin_layout Subsection
Paragraph Styles
-\end_layout
-
-\begin_layout Standard
\begin_inset CommandInset label
LatexCommand label
-name "sec:style"
+name "sub:Paragraph-Styles"
\end_inset
+
+\end_layout
+
+\begin_layout Standard
A paragraph style description looks like this:
\begin_inset Foot
status collapsed
.
\end_layout
-\begin_layout Description
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Fill_Top
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+0
+\emph default
+,1
+\end_layout
+
+\end_inset
+
+] With this parameter the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Fill
+\end_layout
+
+\end_inset
+
+ value of the
+\begin_inset Quotes eld
+\end_inset
+
+Vertical space above
+\begin_inset Quotes erd
+\end_inset
+
+ list of the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Edit\SpecialChar \menuseparator
+Paragraph
+\begin_inset space ~
+\end_inset
+
+Settings
+\end_layout
+
+\end_inset
+
+ dialog can be set when initializing a paragraph with this style.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+Note from Jean-Marc:
+\emph default
+ I'm not sure that this setting has much use, and it should probably be
+ removed in later versions.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle: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 section
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:Font-description"
+
+\end_inset
+
+.
+ Note that defining this font automatically defines the
+\begin_inset Flex CharStyle: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 CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelFont
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+FreeSpacing
+\end_layout
+
+\end_inset
+
+
+\begin_inset CommandInset label
+LatexCommand label
+name "des:FreeSpacing"
+
+\end_inset
+
+[
+\emph on
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+0
+\end_layout
+
+\end_inset
+
+
+\emph default
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+1
+\end_layout
+
+\end_inset
+
+] Usually LyX doesn't 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 LaTeX code.
+ For this reason,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+FreeSpacing
+\end_layout
+
+\end_inset
+
+ can be enabled.
+ Note that LyX will create protected blanks for the additional blanks when
+ in another mode than LaTeX-mode.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+BabelPreamble
+\end_layout
+
+\end_inset
+
+ Language dependent information to be included in the LaTeX preamble when
+ this style is used.
+ Note that this will completely override any prior
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+BabelPreamble
+\end_layout
+
+\end_inset
+
+ declarations.
+ Must end with
+\begin_inset Quotes eld
+\end_inset
+
+
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-Fill_Top
+EndBabelPreamble
\end_layout
\end_inset
- [
-\begin_inset Flex CharStyle:Code
-status collapsed
-\begin_layout Plain Layout
+\begin_inset Quotes erd
+\end_inset
-\emph on
-0
-\emph default
-,1
+.
+ The contents of this tag will occur once in the LaTeX preamble for each
+ language used by the document.
+ Each time, the following substitutions are made:
\end_layout
-\end_inset
-
-] With this parameter the
-\begin_inset Flex CharStyle:MenuItem
+\begin_deeper
+\begin_layout Itemize
+\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-Fill
+$$lang
\end_layout
\end_inset
- value of the
+ is replaced by the language name (as used by the babel package).
+\end_layout
+
+\begin_layout Itemize
+The
\begin_inset Quotes eld
\end_inset
-Vertical space above
+Function
\begin_inset Quotes erd
\end_inset
- list of the
-\begin_inset Flex CharStyle:MenuItem
+
+\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
+_()
+\end_layout
-\bar under
-E
-\bar default
-dit\SpecialChar \menuseparator
-
-\bar under
-P
-\bar default
-aragraph
-\begin_inset space ~
\end_inset
-Settings
+ replaces its argument by the translation of the argument to the current
+ language.
\end_layout
-\end_inset
+\begin_layout Standard
+This preamble snippet will only be used if the document contains more than
+ one language and the babel package is used.
+\end_layout
- dialog can be set when initializing a paragraph with this style.
-\begin_inset Foot
+\end_deeper
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-
-\emph on
-Note from Jean-Marc:
-\emph default
- I'm not sure that this setting has much use, and it should probably be
- removed in later versions.
+LangPreamble
\end_layout
\end_inset
-
-\end_layout
-
-\begin_layout Description
+ Like
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-Font
+BabelPreamble
\end_layout
\end_inset
- The font used for both the text body
-\emph on
-and
-\emph default
- the label.
- See section
-\begin_inset space ~
+, but this preamble snippet occurs independently from the babel package,
+ and only for the document language.
+ Must end with
+\begin_inset Quotes eld
\end_inset
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "sec:fonts"
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+EndLangPreamble
+\end_layout
+
+\end_inset
+
+\begin_inset Quotes erd
\end_inset
.
- Note that defining this font automatically defines the
+\end_layout
+
+\begin_deeper
+\begin_layout Standard
+If the style defines text that appears in the typeset document, it may use
+
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-LabelFont
+LangPreamble
\end_layout
\end_inset
- to the same value.
- So you should define this one first if you also want to define
+ and
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-LabelFont
+BabelPreamble
\end_layout
\end_inset
-.
-\end_layout
-
-\begin_layout Description
+ to support non-english and even multilanguage documents correctly.
+ The following excerpt (from the
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-FreeSpacing
+theorems-ams.inc
\end_layout
\end_inset
-
-\begin_inset CommandInset label
-LatexCommand label
-name "des:FreeSpacing"
+ file) shows how this works:
+\end_layout
-\end_inset
+\begin_layout LyX-Code
+Preamble
+\end_layout
-[
-\emph on
+\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
+
+\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
+
+\begin_layout Standard
+The key to correct translation of the user visible text is the definition
+ of the command
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-\emph on
-0
+\backslash
+claimname
\end_layout
\end_inset
-
-\emph default
-,
+ in the language preamble.
+ This command holds the name of the theorem that will appear in the output.
+ The
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-1
+BabelPreamble
\end_layout
\end_inset
-] Usually LyX doesn't 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 LaTeX code.
- For this reason,
+ then uses the commands offered by the babel package to redefine
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-FreeSpacing
+
+\backslash
+claimname
\end_layout
\end_inset
- can be enabled.
- Note that LyX will create protected blanks for the additional blanks when
- in another mode than LaTeX-mode.
+ for each used language in multilanguage documents.
\end_layout
+\end_deeper
\begin_layout Description
\begin_inset Flex CharStyle:Code
status collapsed
The name of the counter for automatic numbering (see Section
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:counter"
+reference "sub:Counters"
\end_inset
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:fonts"
+reference "sub:Font-description"
\end_inset
in Section
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:counter"
+reference "sub:Counters"
\end_inset
Section
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:counter"
+reference "sub:Counters"
\end_inset
See Section
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:counter"
+reference "sub:Counters"
\end_inset
\end_layout
\begin_layout Standard
-depending upon the LaTex type.
+depending upon the LaTeX type.
\end_layout
\begin_layout Description
status collapsed
\begin_layout Plain Layout
-
-\bar under
-E
-\bar default
-dit\SpecialChar \menuseparator
-
-\bar under
-P
-\bar default
-aragraph
+Edit\SpecialChar \menuseparator
+Paragraph
\begin_inset space ~
\end_inset
\end_inset
-Information to be included in the LaTeX preamable when this style is used.
+Information to be included in the LaTeX preamble when this style is used.
Used to define macros, load packages, etc., required by this particular
style.
Must end with
See section
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:fonts"
+reference "sub:Font-description"
\end_inset
\begin_layout Subsection
Floats
-\end_layout
-
-\begin_layout Standard
\begin_inset CommandInset label
LatexCommand label
-name "sec:floats"
+name "sub:Floats"
\end_inset
+
+\end_layout
+
+\begin_layout Standard
Since version 1.3.0 of LyX, it is has been both possible and necessary to
define the floats (
\begin_inset Flex CharStyle:MenuItem
\end_inset
specifier is special and, because of implementation details, cannot be
- used in non-builtin float types.
+ used in non-built in float types.
If you do not understand what this means, just use
\begin_inset Quotes eld
\end_inset
\end_layout
\begin_layout Subsection
-Inset layouts and Flex insets
-\end_layout
-
-\begin_layout Standard
+Flex insets and InsetLayout
\begin_inset CommandInset label
LatexCommand label
-name "sec:charstyle"
+name "sub:Flex-insets-and"
\end_inset
-LyX has supported character styles since version 1.4.0; since version 1.6.0
- these are called Flex insets.
-
+
\end_layout
\begin_layout Standard
-Furthermore, it is possible to define the general layout of many different
- types of insets.
- Currently, InsetLayout can be used to customize the layout parameters for
- footnotes, marginal notes, note insets, ERT insets, branches, listings,
- indexes, boxes, tables, algorithms, URLs, and optional arguments, as well
- as Flex insets.
+LyX has supported character styles since version 1.4.0; as of version 1.6.0,
+ these are called Flex insets.
\end_layout
\end_inset
-): These can be used to define custom collapsable insets, similar to ERT,
- footnote, and the like.
+): These can be used to define custom collapsible insets, similar to TeX
+ code, footnote, and the like.
+ An obvious example is an endnote inset, which is defined in the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+endnote
+\end_layout
+
+\end_inset
+
+ module.
\end_layout
\begin_layout Itemize
\end_layout
\begin_layout Standard
-The
+Flex insets are defined using the
\begin_inset Flex CharStyle:Code
status collapsed
\end_inset
- definition starting line is of the form
+ tag, which shall be explained in a moment.
\end_layout
-\begin_layout LyX-Code
-InsetLayout <Type> <Name>
+\begin_layout Standard
+The
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+InsetLayout
\end_layout
-\begin_layout Standard
-where
+\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 CharStyle:Code
status collapsed
\begin_layout Plain Layout
-<Type>
+InsetLayout
\end_layout
\end_inset
- can be
+ can be used to customize the layout parameters for footnotes, marginal
+ notes, note insets, TeX code (ERT) insets, branches, listings, indexes,
+ boxes, tables, algorithms, URLs, and optional arguments, as well as to
+ define Flex insets.
+\end_layout
+
+\begin_layout Standard
+The
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-Algorithm
+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 CharStyle:Code
status collapsed
\begin_layout Plain Layout
-Branch
+<Type>
\end_layout
\end_inset
-,
+ indicates the inset whose layout is being defined, and here there are two
+ cases.
+\end_layout
+
+\begin_layout Enumerate
+The layout for a pre-existing inset is being modified.
+ In this case, can be
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-Box
+<Type>
\end_layout
\end_inset
-,
+ any one of the following:
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-ERT
+Algorithm
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-Figure
+Branch
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-Foot
+Box
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-Index
+Box:shaded
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-Listings
+ERT
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-Marginal
+Figure
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-Note:Comment
+Foot
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-Note:Note
+Index
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-Note:GreyedOut
+Info
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-OptArg
+Info:menu
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-Table
+Info:shortcut
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-URL
+Info:shortcuts
\end_layout
\end_inset
-, or
+,
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-Flex
+Listings
\end_layout
\end_inset
-.
- If
+,
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-<Type>
+Marginal
\end_layout
\end_inset
- is
+,
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-Flex
+Note:Comment
\end_layout
\end_inset
-, then
+,
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-<Name>
+Note:Note
\end_layout
\end_inset
- should have the form
+,
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-SubType:StyleName
+Note:GreyedOut
\end_layout
\end_inset
-, where
+,
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-SubType
+OptArg
\end_layout
\end_inset
- is either
+,
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-CharStyle
+Table
\end_layout
\end_inset
-,
+, or
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-Custom
+URL
\end_layout
\end_inset
-, or
+.
+
+\end_layout
+
+\begin_layout Enumerate
+The layout for a Flex inset is being defined.
+ In this case,
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-Element
+<Type>
\end_layout
\end_inset
-, and
+ can be any valid identifier not used by a pre-existing inset.
+ Note that the definition of a flex inset must
+\emph on
+ als
+\emph default
+o include a
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Plain Layout
-StyleName
+LyXType
\end_layout
\end_inset
- is any valid identifier.
-
+ entry.
\end_layout
\begin_layout Standard
-The following
+The
\begin_inset Flex CharStyle:Code
status collapsed
\end_inset
- section can contain the following entries:
+ definition can contain the following entries:
\end_layout
\begin_layout Description
\end_inset
The color for the inset's background.
- These valid colors are defined in
+ The valid colors are defined in
\begin_inset Flex CharStyle:Code
status collapsed
\end_inset
-; ERT insets generally use
+, ERT insets generally
\begin_inset Flex CharStyle:Code
status collapsed
\end_inset
-; and character styles use
+, and character styles
\begin_inset Flex CharStyle:Code
status collapsed
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:fonts"
+reference "sub:Font-description"
\end_inset
\begin_layout Description
\begin_inset Flex CharStyle:Code
-status open
+status collapsed
\begin_layout Plain Layout
ForceLTR
\end_inset
- [[FIXME]]
+ 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 TeX code or URL.
+ A kludge.
\end_layout
\begin_layout Description
\begin_inset Flex CharStyle:Code
status collapsed
+\begin_layout Plain Layout
+InToc
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+0
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle: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.
+ 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 CharStyle:Code
+status collapsed
+
\begin_layout Plain Layout
KeepEmpty
\end_layout
\begin_inset CommandInset ref
LatexCommand ref
-reference "sec:fonts"
+reference "sub:Font-description"
\end_inset
\end_inset
What will be displayed on the button or elsewhere as the inset label.
- Some inset types (ERT and Branch) modify this label on the fly.
+ Some inset types (TeX code and Branch) modify this label on the fly.
\end_layout
\begin_layout Description
\end_inset
-,
+, or
\begin_inset Flex CharStyle:Code
status collapsed
\end_inset
- (indicating a dummy definition ending definitions of charstyles etc.).
- This entry is only meaningful for Flex (user definable) insets.
+ (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.
\end_layout
\begin_layout Description
\emph on
not
\emph default
- whether this command should itself be protected.)
+ whether the command should itself be protected.)
\end_layout
\begin_layout Description
\begin_layout Subsection
Counters
-\end_layout
-
-\begin_layout Standard
\begin_inset CommandInset label
LatexCommand label
-name "sec:counter"
+name "sub:Counters"
\end_inset
+
+\end_layout
+
+\begin_layout Standard
Since version 1.3.0 of LyX, it is both possible and necessary to define the
counters (
\begin_inset Flex CharStyle:MenuItem
\emph off
\bar no
\noun off
- other than those descibed below will produce arabic numerals.
+ 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
] If this is set to the name of another counter, the present counter will
- be reset everytime the other one is increased.
+ be reset every time the other one is increased.
For example,
\begin_inset Flex CharStyle:Code
status collapsed
\begin_layout Subsection
Font description
-\end_layout
-
-\begin_layout Standard
\begin_inset CommandInset label
LatexCommand label
-name "sec:fonts"
+name "sub:Font-description"
\end_inset
+
+\end_layout
+
+\begin_layout Standard
A font description looks like this:
\end_layout
\end_inset
-] Valid argument sare:
+] Valid argument are:
\begin_inset Flex CharStyle:Code
status collapsed
Creating Templates
\begin_inset CommandInset label
LatexCommand label
-name "sec:templates"
+name "sec:Creating-Templates"
\end_inset
status collapsed
\begin_layout Plain Layout
-
-\bar under
-T
-\family sans
-\bar default
-ools
-\family default
-\SpecialChar \menuseparator
-
-\bar under
-P
-\bar default
-references\SpecialChar \menuseparator
+Tools\SpecialChar \menuseparator
+Preferences\SpecialChar \menuseparator
Paths
\end_layout
\end_inset
.
- This template is loaded everytime you create a new document with
-\begin_inset Flex CharStyle:MenuItem
-status collapsed
-
-\begin_layout Plain Layout
-
-\bar under
-F
-\bar default
-ile
-\end_layout
-
-\end_inset
-
-\SpecialChar \menuseparator
-
+ This template is loaded every time you create a new document with
\begin_inset Flex CharStyle:MenuItem
status collapsed
\begin_layout Plain Layout
-
-\bar under
-N
-\bar default
-ew
+File\SpecialChar \menuseparator
+New
\end_layout
\end_inset
status collapsed
\begin_layout Plain Layout
-Sa
-\bar under
-v
-\bar default
-e as Document Defaults
+Save as Document Defaults
\end_layout
\end_inset
\end_inset
extension.
- Within XFig, you create and change your figure, and when you are done,
+ Within Xfig, you create and change your figure, and when you are done,
you save the
\begin_inset Flex CharStyle:Code
status collapsed
Furthermore, it provides us with the flexibility that is needed to support
multiple export formats.
For instance, in the case of a plain text file, it is not exactly an award-winn
-ing idea to include the figure as raw PostScript®.
+ing idea to include the figure as raw PostScript.
Instead, you'd either prefer to just include a reference to the figure
- or try to invoke some graphics to Ascii converter to make the final result
+ 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 parameter
-ized on the different export formats that LyX supports.
+ The external material management allows you to do this, because it is parametri
+zed on the different export formats that LyX supports.
\end_layout
\begin_layout Standard
Besides supporting the production of different products according to the
exported format, it supports tight integration with editing and viewing
applications.
- In the case of an XFig figure, you are able to invoke Xfig on the original
+ In the case of an Xfig figure, you are able to invoke Xfig on the original
file with a single click from within the external material dialog in LyX,
- and also preview the produced PostScript file with ghostview with another
+ 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.
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.g.
-\begin_inset space ~
+ 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
This must be the name of a format that is known to LyX (see section
\begin_inset CommandInset ref
LatexCommand ref
-reference "sub:Formats"
+reference "sec:Formats"
\end_inset
\begin_layout Standard
All path macros contain a trailing directory separator, so you can construct
- e.g.
- the absolute filename with
+ e.
+\begin_inset space \thinspace{}
+\end_inset
+
+g.
+\begin_inset space \space{}
+\end_inset
+
+the absolute filename with
\begin_inset Flex CharStyle:Code
status collapsed
\end_layout
\begin_layout Standard
-There are special cases where this rule does not work and e.g.
-\begin_inset space ~
+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.
files needs the relative name in order to rewrite the file content.
\end_layout
-\begin_layout Section
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:Security-discussion"
-
-\end_inset
-
-Security discussion
-\end_layout
-
-\begin_layout Standard
-\begin_inset Box Shadowbox
-position "t"
-hor_pos "c"
-has_inner_box 1
-inner_pos "t"
-use_parbox 0
-width "100col%"
-special "none"
-height "1in"
-height_special "totalheight"
-status open
-
-\begin_layout Plain Layout
-WARNING: This section is definitely outdated.
-\end_layout
-
-\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 definately want to avoid.
-\end_layout
-
-\begin_layout Standard
-However, since the external program commands are specified in the template
- configuration file only, there are no security issues if LyX is properly
- configured with safe templates only.
- This is so because the external programs are invoked with the
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-execvp
-\end_layout
-
-\end_inset
-
--system call rather than the
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-system
-\end_layout
-
-\end_inset
-
- system-call, so it's not possible to execute arbitrary commands from the
- filename or parameter section via the shell.
-\end_layout
-
-\begin_layout Standard
-This also implies that you are restricted in what command strings you can
- use in the external material templates.
- In particular, pipes and redirection are not readily available.
- This has to be so if LyX should remain safe.
- If you want to use some of the shell features, you should write a safe
- script to do this in a controlled manner, and then invoke the script from
- the command string.
- In the
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-lib/scripts
-\end_layout
-
-\end_inset
-
- directory of the LyX installation, you can find a safe wrapper script
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-general_command_wrapper.py
-\end_layout
-
-\end_inset
-
- that supports redirection of input and output.
- That can serve as an example for how to write safe template scripts.
- For a more advanced example that uses
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-fork
-\end_layout
-
-\end_inset
-
- and friends, take a look at the
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-pic2ascii.py
-\end_layout
-
-\end_inset
-
- converter script.
-\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 CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-execvp
-\end_layout
-
-\end_inset
-
- system call in a controlled manner.
- Of course, for use in a controlled environment, it can be tempting to just
- fall back to use ordinary shell scripts.
- If you do so, be aware that you
-\emph on
-will
-\emph default
- provide an easily exploitable security hole in your system.
- Of course it stands to reason that such unsafe templates will never be
- included in the standard LyX distribution, although we do encourage people
- to submit new templates in the open source tradition.
- But LyX as shipped from the official distribution channels will never have
- unsafe templates.
-\end_layout
-
-\begin_layout Standard
-Including external material provides a lot of power, and you have to be
- careful not to introduce security hazards with this power.
- A subtle error in a single line in an innocent looking script can open
- the door to huge security problems.
- So if you do not fully understand the issues, we recommend that you consult
- a knowledgable security professional or the LyX development team if you
- have any questions about whether a given template is safe or not.
- And do this before you use it in an uncontrolled environment.
-\end_layout
-
\end_body
\end_document