#LyX 1.4.4 created this file. For more info see http://www.lyx.org/
\lyxformat 245
\begin_document
\begin_header
\textclass book
\begin_preamble
\usepackage{multicol}
\IfFileExists{isolatin.def}
{\usepackage[isolatin]{inputenc}}
{\usepackage[latin1]{inputenc}}
\end_preamble
\language english
\inputencoding default
\fontscheme default
\graphics none
\paperfontsize default
\spacing single
\papersize default
\use_geometry false
\use_amsmath 0
\cite_engine basic
\use_bibtopic false
\paperorientation portrait
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\defskip medskip
\quotes_language english
\papercolumns 1
\papersides 2
\paperpagestyle headings
\tracking_changes false
\output_changes true
\end_header

\begin_body

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

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

\begin_layout Standard
\noindent
Principal maintainer of this file is 
\noun on
Mike Ressler
\noun default
.
 If you have comments or error corrections, please send them to the LyX
 Documentation mailing list, <lyx-docs@lists.lyx.org>.
\end_layout

\end_inset

 
\end_layout

\begin_layout Standard
\begin_inset LatexCommand \tableofcontents{}

\end_inset


\end_layout

\begin_layout Chapter
Introduction
\end_layout

\begin_layout Standard
This manual covers the customization features present in LyX.
 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
 for some of the more obscure ones.
\end_layout

\begin_layout Chapter
LyX configuration files
\end_layout

\begin_layout Standard
\begin_inset LatexCommand \label{chap:config}

\end_inset

This chapter aims to help you to find your way through the LyX configuration
 files.
 Before continuing to read this chapter, you should find out where your
 LyX library directory is by using 
\family sans
\bar under
H
\bar default
elp\SpecialChar \menuseparator
About\InsetSpace ~
Ly
\bar under
X
\family default
\bar default
.
 This directory is the place where LyX places its system-wide configuration
 files, and we will simply name it 
\family typewriter
LyXDir
\family default
 in the remainder of this document.
 
\end_layout

\begin_layout Section
What's in 
\family typewriter
LyXDir
\family default
?
\end_layout

\begin_layout Standard

\family typewriter
LyXDir
\family default
 and its sub-directories contain a number of files and that can be used
 to customise LyX's behaviour.
 You can change many of these files from within LyX itself through the 
\family sans
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
P
\bar default
references
\family default
 dialog.
 Most customization that you might want to do to LyX is possible through
 this dialog.
 However, many other inner aspects of LyX can be customized by modifying
 the files in 
\family typewriter
LyXDir
\family default
.
 They fall in different categories, described in the following subsections.
\end_layout

\begin_layout Subsection
Automatically generated files
\end_layout

\begin_layout Standard
These files are generated when you configure LyX.
 They contain various default values that are guessed by inspection.
 In general, it is not a good idea to modify them, since they might be overwritt
en at any time.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
\series medium
lyxrc.defaults
\family default
\series default
 contains defaults for various commands.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
\series medium
packages.lst
\family default
\series default
 contains the list of packages that have been recognized by LyX.
 It is currently unused by the LyX program itself, but the information extracted
, and more, is made available with 
\family sans
\bar under
H
\bar default
elp\SpecialChar \menuseparator
L
\bar under
a
\bar default
TeX\InsetSpace ~
Configuration
\family default
.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
\series medium
textclass.lst
\family default
\series default
 is the list of text classes that have been found in your 
\family typewriter
layout/
\family default
 directory, along with the associated LaTeX document class and their description.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
doc/LaTeXConfig.lyx
\family default
 is automatically generated during configuration from the file 
\family typewriter
LaTeXConfig.lyx.in
\family default
.
\end_layout

\begin_layout Subsection
Directories
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
\series medium
bind/
\family default
\series default
 this directory contains files with the extension 
\family typewriter
.bind
\family default
 that define the keybindings used in LyX (see section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:bindings}

\end_inset

).
 If there exists an internationalized version of the bind file named 
\family typewriter
$LANG_xxx.bind
\family default
, that will be used first.
 See Chapter\InsetSpace ~

\begin_inset LatexCommand \ref{chap:i18n}

\end_inset

, and section 
\begin_inset LatexCommand \ref{sec:bindings}

\end_inset

for details.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
\series medium
clipart/
\family default
\series default
 contains graphics files that can be included in documents.
 
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
\series medium
doc/
\family default
\series default
 contains LyX documentation files (including the one you are currently reading).
 The file 
\family typewriter
LaTeXConfig.lyx
\family default
 deserves special attention, as noted above.
 If there exists an internationalized version of the help-document with
 
\family typewriter
$LANG_
\family default
 prepended to the name, that will be used first.
 See Chapter\InsetSpace ~

\begin_inset LatexCommand \ref{chap:i18n}

\end_inset

 for details.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
\series medium
examples/
\family default
\series default
 contains example files that explain how to use some features.
 In the file browser, press the 
\family sans
Examples
\family default
 button to get there.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
images/
\family default
 contains image files that are used by the 
\family sans
Document
\family default
 dialog.
 In addition, it also contains the individual icons used in the toolbar
 and the banners that can be shown when LyX is launched.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
\series medium
kbd/
\family default
\series default
 contains keyboard keymapping files.
 See Chapter\InsetSpace ~

\begin_inset LatexCommand \ref{sec:keymap}

\end_inset

 for details.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
\series medium
layouts/
\family default
\series default
 contains the text class files described in Chapter\InsetSpace ~

\begin_inset LatexCommand \ref{chap:textclass}

\end_inset

.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
scripts/
\family default
 contains some files that demonstrate the capabilities of the 
\family sans
External\InsetSpace ~
Template
\family default
 feature.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
templates/ 
\family default
contains the standard LyX template files described in Chapter\InsetSpace ~

\begin_inset LatexCommand \ref{sec:templates}

\end_inset

.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
tex/
\family default
 contains some LaTeX cls files distributed with LyX.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
ui/
\family default
 contains files with the extension 
\family typewriter
.ui
\family default
 that define the user interface to LyX.
 That is, the files define which items appear in which menus and the items
 appearing on the toolbar.
 See Chapter\InsetSpace ~

\begin_inset LatexCommand \ref{sec:ui}

\end_inset

 for details.
\end_layout

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

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

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
\series medium
CREDITS
\family default
\series default
 this file contains the list of LyX developers.
 The contents are displayed with the menu entry 
\family sans
\bar under
H
\bar default
elp\SpecialChar \menuseparator
About\InsetSpace ~
LyX
\family default
.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
\series medium
chkconfig.ltx
\family default
\series default
 this is a LaTeX script used during the configuration process.
 Do not run directly.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
\series medium
configure
\family default
\series default
 this is the script that is used to re-configure 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 List
\labelwidthstring 00.00.0000

\family typewriter
encodings
\family default
 this contains tables describing how different character encodings can be
 mapped to unicode
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
external_templates
\family default
 this file contains the templates available to the new 
\family sans
External\InsetSpace ~
Template
\family default
 feature.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
languages
\family default
 this file contains a list of all the languages currently supported by LyX.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
lyxrc.example
\family default
 Deprecated and definitely obfuscated.
 This is the old style preferences file.
 It will probably disappear in the near future.
\end_layout

\begin_layout Section
Your local configuration directory
\end_layout

\begin_layout Standard
Even if you are using LyX as an unprivileged user, you might want to change
 LyX configuration for your own use.
 The 
\family typewriter
UserDir
\family default
 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 
\family sans
\bar under
H
\bar default
elp\SpecialChar \menuseparator
About\InsetSpace ~
LyX
\family default
.
 This directory is used as a mirror of 
\family typewriter
LyXDir
\family default
, which means that every file in 
\family typewriter
UserDir
\family default
 is a replacement for the corresponding file in 
\family typewriter
LyXDir
\family default
.
 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 
\family sans
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
P
\bar default
references
\family default
 dialog are saved to a file 
\family typewriter
preferences
\family default
 in 
\family typewriter
UserDir
\family default
.
\end_layout

\begin_layout Itemize
When you reconfigure using 
\family sans
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
R
\bar default
econfigure
\family default
, LyX runs 
\family typewriter
configure
\family default
 and the resulting files are written in your local configuration directory
 (see section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:autodetected}

\end_inset

 to have a list of the 
\family typewriter
preferences
\family default
 settings affected by this section).
 This means that any additional text class file that you might have added
 in 
\family typewriter
UserDir/layouts
\family default
 will be added to the list of classes in the 
\family sans
\bar under
L
\bar default
ayout\SpecialChar \menuseparator

\bar under
D
\bar default
ocument
\family default
 dialog.
\end_layout

\begin_layout Itemize
Similarly, if you have installed some LaTeX document classes in your home
 directory, that LaTeX can find with your 
\family typewriter
TEXINPUTS
\family default
 path, they will show up in your list of text classes.
\begin_inset Foot
status collapsed

\begin_layout Standard
as long as LyX or yourself have a 
\family typewriter
.layout
\family default
 file for it, of course.
\end_layout

\end_inset


\end_layout

\begin_layout Itemize
If you get some updated documentation from LyX ftp site and cannot install
 it because you do not have sysadmin rights on your system, you can just
 copy the files in 
\family typewriter
UserDir/doc/
\family default
 and the items in the 
\family sans
\bar under
H
\bar default
elp
\family default
 menu will open them!
\end_layout

\begin_layout Section
Running 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 be 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 LyX with the command line switch 
\family typewriter
-userdir 
\family default
\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 LyX without this switch as described above).
 If this directory does not exist, LyX offers to create it for you, just
 like it does for the default directory on the first time you run the program.
 You can modify the configuration options in this additional 
\family typewriter
Userdir
\family default
 exactly as you would for the default directory.
 These directories are completely independent (but read on).
 Note that setting the environment variable 
\family typewriter
LYX_USERDIR_13x
\family default
 to some value has exactly the same effect
\family typewriter
.
\end_layout

\begin_layout Standard
Having several configurations also requires more maintenance: if you want
 to add a new layout to 
\family typewriter
Userdir/layouts
\family default
 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 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 
\family typewriter
\series medium
doc/
\family default
\series default
 subirectory, however, since it contains a file written by the configuration
 script (also accessible through 
\family sans
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
R
\bar default
econfigure 
\begin_inset LatexCommand \ref{sec:autodetected}

\end_inset

)
\family default
 which is configuration-specific.
\end_layout

\begin_layout Chapter
The 
\family sans
\bar under
P
\bar default
references
\family default
 dialog
\end_layout

\begin_layout Section
Using the dialog for the first time
\end_layout

\begin_layout Standard
The 
\family typewriter
UserDir/preferences
\family default
 file will contain only changes that you have made to the default behaviour,
 some of which is hard-coded into LyX and some of which is contained in
 the system file 
\family typewriter
LyXDir/lyxrc.defaults
\family default
.
 Note that in both files lines beginning with a 
\begin_inset Quotes eld
\end_inset


\family typewriter
#
\family default

\begin_inset Quotes erd
\end_inset

 are just comments and not interpreted.
 However, only system administrators should edit 
\family typewriter
LyXDir/lyxrc
\family default
.
 Users should use the
\family sans
 
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
P
\bar default
references
\family default
 dialog to create and modify their own 
\family typewriter
UserDir/preferences
\family default
 file.
\end_layout

\begin_layout Standard
We hope that the 
\family sans
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
P
\bar default
references
\family default
 dialog will be largely self-explanatory.
 Almost all the commands have an associated comment, so you shouldn't have
 too much trouble modifying it to taste.
 Before we highlight a few of the more important commands below, however,
 a word of warning: 
\family sans
Apply
\family default
ing 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 
\family sans
Save
\family default
 the changes and restart LyX.
\end_layout

\begin_layout Section
On-screen fonts
\end_layout

\begin_layout Standard
The font used to display your documents on the LyX screen is very important,
 since you'll be reading all your documents with this font.
 Therefore it is important that the font is as readable and good-looking
 as possible.
 The LyX team tried to provide the best possible default font for you, but
 since practically all X11 systems are different, it's likely that the default
 fonts will be sub-optimal on your system.
 Fortunately, you can do something about this.
 Before we explain how to do this, you should learn a bit more about fonts
 so that you are better prepared for choosing your fonts, because it is
 a trade-off that is specific to your preferences and the capabilities of
 your system.
\end_layout

\begin_layout Standard
Notice that this section only deals with the fonts on the 
\emph on
screen
\emph default
 inside the LyX window.
 The fonts that appear on the 
\emph on
paper
\emph default
 
\emph on
output
\emph default
 are independent from these fonts, and are determined by the document class.
 Read the 
\emph on
User's Guide
\emph default
 to learn how to change the font of the printed version of your document.
\end_layout

\begin_layout Standard
Basically, screen fonts come in two different kinds: scalable outline fonts
 and non-scalable bitmap fonts.
 This distinction seems a bit arbitrary, since non-scalable fonts are actually
 scalable in most modern font renderers.
 The difference lies in the 
\emph on
quality
\emph default
 of the scaling, and the 
\emph on
speed
\emph default
 of display.
 The most important decision is thus whether you should use non-scalable
 bitmap fonts or scalable outline fonts.
\end_layout

\begin_layout Standard
The scalable fonts are built from 
\emph on
outlines
\emph default
 of the single glyphs (i.e.
 characters) in the font.
 This means that each glyph is defined using mathematical curves that are
 well suited for scaling to any requested size.
 This mathematical definition is interpreted by the font renderer and turned
 into a small picture composed of pixels according to which size and glyph,
 the programmer requests.
 This means that scalable fonts will look pretty good in all sizes.
 Well, almost all sizes.
 Since scalable fonts are defined in an abstract way, it can be hard to
 provide a good rendering at small sizes, where each pixel has to be very
 carefully computed to provide a good image.
 Technically it is possible to do this from the mathematical definition,
 but in order to keep the rendering reasonably fast, tradeoffs have to be
 made, and the result is that scalable fonts can be difficult to read at
 small sizes.
\end_layout

\begin_layout Standard
Bitmap fonts on the other hand, are defined by bitmap graphics from the
 start, so they will look good at all the sizes they are meant for.
 However, they don't scale well, because in order to scale a glyph, each
 pixel is enlarged into several pixels.
 It is the same effect that happens if you try to enlarge a picture in 
\family typewriter
xv
\family default
 or any other picture manipulation program.
 In order to relieve this effect, bitmap fonts are typically provided in
 several fixed sizes typically from around 8 pixels high up to 34 pixels
 or so high in steps according to what is believed to be useful.
 The advantage of bitmap fonts is that no complicated computations are necessary
 to display each glyph, so bitmap fonts are thus faster displayed than scalable
 fonts.
 The disadvantage is that sizes that don't exists as fixed versions have
 to be scaled by doubling pixels, and thus look bad.
\end_layout

\begin_layout Standard
The net result of all this, is that bitmap fonts are generally best for
 the small sizes, where they are available, while scalable fonts are generally
 best for large sizes.
 The logical conclusion would thus be to use bitmap fonts for the small
 sizes, and scalable fonts for the large sizes.
 Unfortunately, this is not a good idea, since bitmap fonts and scalable
 fonts are not designed to be used together, so the overall look of such
 a scheme would be bad.
 The best you can do is thus to try both schemes and decide for yourself
 what suits you.
\end_layout

\begin_layout Standard
By default, LyX uses non-scalable bitmap fonts (when using the XForms frontend).
 For serif fonts, 
\emph on
times
\emph default
 is used, for sans serif fonts, 
\emph on
helvetica
\emph default
 is used, while 
\emph on
courier
\emph default
 is used as the monospaced/typewriter font.
\end_layout

\begin_layout Standard
In the following, we will describe what to do if the text does not look
 good in LyX.
 We'll start with the most important parameters: DPI and font zoom.
\end_layout

\begin_layout Subsection
DPI setting and Font Zoom
\end_layout

\begin_layout Standard
LyX automatically tries to scale the fonts to look as close as the paper
 output size as possible, except for the so-called font zoom factor.
\end_layout

\begin_layout Standard
In order for this to work on all systems, it relies on the screen DPI (dots
 per inch) setting to be correct.
 The DPI setting for your system is autodetected by LyX using the information
 the X server can provide.
 You can check what LyX autodetects the DPI setting to, by running LyX as
 
\family typewriter
lyx -dbg 2
\family default
.
\end_layout

\begin_layout Standard
On many systems, X is not set up correctly, so you should check that it
 is correct by hand.
 Run 
\begin_inset Quotes eld
\end_inset


\family typewriter
xdpyinfo | more
\family default

\begin_inset Quotes erd
\end_inset

 and write down what the DPI is for the resolution you use (this will be
 close to the value LyX detects).
 It is the number mentioned as 
\begin_inset Quotes eld
\end_inset

resolution
\begin_inset Quotes erd
\end_inset

.
 Also write down the number of pixels you have in the width (the first number
 under 
\begin_inset Quotes eld
\end_inset

dimensions
\begin_inset Quotes erd
\end_inset

).
\end_layout

\begin_layout Standard
Then get the good old ruler out of the closet, and measure the width of
 the visible screen-image on your monitor.
 Convert this measurement to inches if you used a centimeter ruler by dividing
 by 2.54.
 Now you can determine the correct DPI setting for your screen by dividing
 the number of pixels in the width by the width of the screen-image on the
 monitor.
 If this number is more than, say, 5 DPI from the detected value, you should
 either fix the X setup, or at least tell LyX that the DPI is different
 than the detected value.
\end_layout

\begin_layout Standard
If you can't fix the X setup (which of course is best since other programs
 than LyX will benefit from this as well), you can tell LyX the correct
 DPI using the 
\family sans
Preferences
\family default
 dialog.
\end_layout

\begin_layout Standard
If the text is too small or too big for your taste, you should fiddle with
 the font zoom setting.
 This setting is used to scale the point size of the text.
 If your DPI setting is correct, and the font zoom setting is set to 100,
 this means that LyX will try to display the text exactly the same size
 as it will appear on the paper-output.
 If you set the zoom factor to 200, the text will try to be 2 times as big
 as on paper.
 Of course, this will only happen if LyX can find a font that has the appropriat
e size, which you can't count on.
 Since LyX is a WYSIWYM system anyways, this limitation isn't much of an
 issue.
\end_layout

\begin_layout Standard
The default font zoom setting is 150, since a monitor is typically wider
 than a piece of paper, but you should try to fiddle with it through the
 
\family sans
Font\InsetSpace ~

\bar under
Z
\bar default
oom
\family default
 setting in the 
\family sans
Preferences
\family default
 dialog to find a size that you like.
 When you've found a setting that seems to work nicely for you (tip: use
 the 
\family sans
\bar under
A
\bar default
pply
\family default
 button to keep the dialog open while you experiment), you can make this
 setting the default by using the 
\family sans
\bar under
S
\bar default
ave
\family default
 button.
\end_layout

\begin_layout Standard
While it is often possible to find a suitable size for the text on the screen,
 this doesn't necessarily mean that the fonts are the best ones available
 on your system.
 In order to help you get the most out of your system, you can use the font
 definition commands to fine-tune the look of the text in greater detail
 than merely size.
\end_layout

\begin_layout Subsection
Font definition commands
\end_layout

\begin_layout Standard
As mentioned, LyX uses non-scalable bitmap fonts by default with the XForms
 frontend.
 For serif fonts, 
\emph on
times
\emph default
 is used, for sans serif fonts, 
\emph on
helvetica
\emph default
 is used, while 
\emph on
courier
\emph default
 is used as the monospaced/typewriter font.
\end_layout

\begin_layout Standard
You can change all of these from within the 
\family sans
Preferences
\family default
 dialog.
 The number of fonts that are available on different systems vary, but the
 program 
\family typewriter
xfontsel
\family default
 should be available everywhere.
 Use that program to find candidate fonts.
 When you've found a font that you like, try to insert the first two elements
 of the name (called 
\begin_inset Quotes eld
\end_inset

fndry
\begin_inset Quotes erd
\end_inset

 and 
\begin_inset Quotes eld
\end_inset

fmly
\begin_inset Quotes erd
\end_inset

 in 
\family typewriter
xfontsel
\family default
) in the appropriate field in the 
\family sans
Preferences
\family default
 dialog and press 
\family sans
\bar under
A
\bar default
pply
\family default
.
 LyX will then reformat your document using the new font, and if you like
 the font, you should 
\family sans
\bar under
S
\bar default
ave
\family default
 it.
 One place to start for a new font is to see if the scalable font 
\begin_inset Quotes eld
\end_inset

utopia
\begin_inset Quotes erd
\end_inset

 is available.
 Tip: You can see whether a font is a bitmap font or a scalable font by
 checking the 
\begin_inset Quotes eld
\end_inset

resx
\begin_inset Quotes erd
\end_inset

 or 
\begin_inset Quotes eld
\end_inset

resy
\begin_inset Quotes erd
\end_inset

 fields in 
\family typewriter
xfontsel
\family default
.
 If the value 0 is available, the font is scalable.
 If the value 0 isn't available, the font is a bitmap font.
\end_layout

\begin_layout Standard
Before you go about scrapping a bitmap font because the larger sizes look
 
\begin_inset Quotes eld
\end_inset

blocky
\begin_inset Quotes erd
\end_inset

, you should toggle the 
\begin_inset Quotes eld
\end_inset

Use scalable fonts
\begin_inset Quotes erd
\end_inset

 button.
 This is only useful if you use bitmap fonts, because only these don't scale
 well.
 If you define this flag, LyX will only use the fixed font sizes that are
 available, and this guarantees that all bitmap fonts look well.
 (You can see which individual font sizes are available with the 
\family typewriter
xlsfonts
\family default
 command.
 Try 
\family typewriter
man xlsfonts
\family default
.) However, the prize is that the difference between the size of the fonts
 on screen and the size of fonts on paper will be larger because LyX will
 have to be satisfied with the closest available size, and not try to scale
 a size to fit.
 Also, you can risk that some logically different sizes, such as 
\family sans
Large
\family default
 and 
\family sans
Larger
\family default
, will be mapped to the same screen font, making it hard for you to see
 the difference on screen.
 We've decided not to use scalable fonts by default because of these artifacts,
 but since LyX is a WYSIWYM system, many people like to use the flag anyways,
 well-knowing that the font size on the screen can't be trusted.
 But remember that this flag only makes a difference when you use bitmap
 fonts.
 Scalable fonts won't be affected for reasons you should understand by now.
\end_layout

\begin_layout Standard
One final note regarding this flag: you should know that there is nothing
 wrong with using bitmap and scalable fonts at the same time for different
 purposes.
 For instance, it's common to use the scalable 
\begin_inset Quotes eld
\end_inset

Utopia
\begin_inset Quotes erd
\end_inset

 for the serif text together with a bitmap version of 
\begin_inset Quotes eld
\end_inset

Helvetica
\begin_inset Quotes erd
\end_inset

.
 And you can safely select the 
\begin_inset Quotes eld
\end_inset

Use scalable fonts
\begin_inset Quotes erd
\end_inset

 button without worries: It will only apply to the Helvetica font.
\end_layout

\begin_layout Standard
Sometimes the artifacts introduced by use of the flag can be relieved by
 using the fine-detail screen font sizes which defines which point sizes
 the different logical font sizes correspond to.
 Run LyX as 
\family typewriter
lyx -dbg 513
\family default
 to see exactly what concrete fonts the logical sizes map to, and try adjusting
 the corresponding entries in the 
\family sans
Preferences
\family default
 dialog until you've managed to hit the nail and get the fonts you want.
 This can be hard to do, because LyX uses the DPI setting and the font zoom
 settings to calculate which exact screen font size to ask the X server
 for, thus obfuscating the mapping.
 If you can't make it by trial-and-error, you can make the process more
 transparent if you set both the DPI setting and font zoom settings to 100---eve
n when this is known to be wrong.
 This will of course make your scalable fonts look weird, so use with care.
\end_layout

\begin_layout Subsection
Font encoding
\end_layout

\begin_layout Standard
By default, LyX will use fonts meant to write Western European text, including
 all kinds of English.
 This is defined through the so-called 
\emph on
font
\emph default
 
\emph on
encoding
\emph default
.
 If you want to use LyX to write for instance Eastern European text, Cyrillic
 or any other language not covered by the ISO-8859-1 font encoding, you
 can define a different one with the encoding setting.
 This requires you to have special fonts installed.
 You can use 
\family typewriter
xfontsel
\family default
 to see whether this is the case: check the 
\begin_inset Quotes eld
\end_inset

rgstry
\begin_inset Quotes erd
\end_inset

 and 
\begin_inset Quotes eld
\end_inset

encdng
\begin_inset Quotes erd
\end_inset

 fields for ISO-8859-X values different from ISO-8859-1, and search for
 one that contains the national characters of your language.
 If you find any, enter this encoding in the dialog.
 If not, go searching the Web for appropriate fonts.
 For the Qt frontend, it's recommended you use an iso646 font set.
\end_layout

\begin_layout Standard
When you've set LyX up to use a different font encoding, you should also
 consider changing the font used by dialog windows in LyX.
 For instance, the 
\family sans
Table\InsetSpace ~
of\InsetSpace ~
Contents
\family default
 dialog will not be understandable unless you tell LyX to use a different
 font for this.
 By default the menu font is set to 
\family typewriter
-*-helvetica-medium-r
\family default
, but often Helvetica is not available in the font encoding you need, so
 the dialog allows this to be changed.
\end_layout

\begin_layout Standard
As you can see, there are quite a few options that can be used to fine tune
 the look of your fonts.
 This should not scare you from fiddling with the settings, because after
 all, you will hopefully be using LyX for many hours in the future.
 And contrary to real WYSIWYG word processors where you are tied to using
 fonts that have to look good both on paper and on screen, LyX gives you
 the possibility of using fonts that are designed to look good on the screen
 while using a different set of fonts to look good on paper.
\end_layout

\begin_layout Section
Bindings
\begin_inset LatexCommand \label{sec:bindings}

\end_inset


\end_layout

\begin_layout Standard
Bindings are used to, well, bind a function to a key.
 Several prepackaged binding files are available: a CUA set of bindings
 (familiar as the typical set of PC and CDE set of keyboard shortcuts),
 an Emacs set of bindings, for those of us who follow the One True Way and
 refuse to lower our standards,
\begin_inset Foot
status collapsed

\begin_layout Standard
I'm kidding here, of course!
\end_layout

\end_inset

 as well as specialty bindings (broadway and hollywood) and other languages
 (French, German, etc.).
\end_layout

\begin_layout Standard
If, however, you'd like to customise the keybindings to your own exacting
 tastes, then copy the best-fit file in 
\family typewriter
LyXDir/bind/
\family default
 to your own 
\family typewriter
UserDir/bind/
\family default
 and modify that.
 Don't forget to load this new file into LyX using the 
\family sans
Preferences
\family default
 dialog.
 (For the moment you'll have to restart LyX for these changes to take effect.)
\end_layout

\begin_layout Standard
LyX supports internationalization of the user interface (see Chapter\InsetSpace ~

\begin_inset LatexCommand \ref{chap:i18n}

\end_inset

).
 If your 
\emph on
locale
\emph default
 is set, with the environment variable 
\family typewriter
$LANG
\family default
, LyX will try to use bindfiles by prepending 
\family typewriter
$LANG_
\family default
 to their name.
 For example, you can put a translated copy of some standard bind file in
 your personal 
\family typewriter
bind/
\family default
 directory, and LyX will use it automatically.
\end_layout

\begin_layout Standard
The syntax of the 
\family typewriter
.bind
\family default
 files is straightforward:
\end_layout

\begin_layout Standard

\family typewriter

\backslash
bind <key combination> <lyx-function>
\end_layout

\begin_layout Standard
Both key combination and lyx-function (including any arguments) must be
 enclosed in "double quotes".
 All the LyX functions are listed in the 
\emph on
Reference Guide
\emph default
.
\end_layout

\begin_layout Section
User Interface
\begin_inset LatexCommand \label{sec:ui}

\end_inset


\end_layout

\begin_layout Standard
The appearance of both the menu and toolbar may both be changed using the
 
\family sans
Preferences
\family default
 dialog.
 Simply change the 
\family typewriter
.ui
\family default
 file in 
\family typewriter
LyXDir/ui/
\family default
.
 For the moment, only one file exists, 
\family typewriter
default.ui
\family default
, but feel free to experiment.
 Just copy the file to the 
\family typewriter
UserDir/ui/
\family default
 directory and play! Note that, for the moment, you'll have to restart LyX
 for these changes to take effect.
\end_layout

\begin_layout Standard
The syntax of the 
\family typewriter
.ui
\family default
 files is straightforward: have a look at 
\family typewriter
default.ui.
 The Menubar
\family default
, 
\family typewriter
Menu
\family default
 and 
\family typewriter
Toolbar
\family default
 entries must be ended with an explicit 
\family typewriter
End
\family default
.
 They may contain 
\family typewriter
Submenu
\family default
s, 
\family typewriter
Item
\family default
s, 
\family typewriter
OptItem
\family default
s, 
\family typewriter
Separator
\family default
s, 
\family typewriter
Icon
\family default
s and in the case of the 
\begin_inset Quotes eld
\end_inset

file
\begin_inset Quotes erd
\end_inset

 menus, a 
\family typewriter
Lastfiles
\family default
 entry.
 One small word of warning.
 
\family typewriter
Submenu
\family default
s may be inserted in a 
\family typewriter
Menubar
\family default
 or 
\family typewriter
Menu
\family default
, but they are defined as 
\family typewriter
Menu
\family default
s, not as 
\family typewriter
Submenu
\family default
s.
\end_layout

\begin_layout Section
Converters, Formats, Viewers, Editors and Copiers
\end_layout

\begin_layout Standard
LyX has a powerful mechanism to convert to and from any file format using
 external programs.
 Define a pair of formats, e.g.

\family typewriter
 LaTeX
\family default
 and 
\family typewriter
PDF
\family default
.
 Now define a converter from one format to the other.
 In our example, two possible mechanisms exist.
\end_layout

\begin_layout Enumerate
A direct conversion, from LaTeX to PDF using pdflatex
\end_layout

\begin_layout Enumerate
A more convoluted route using intermediate formats and converters: LaTeX
 to DVI (using latex) to PostScript® (using dvips) to PDF (using ps2pdf).
\end_layout

\begin_layout Standard
LyX will always choose the shortest possible route, so you must specify
 two different Format names for 
\family typewriter
.pdf
\family default
 files to be able to use either.
 Both are included by default in the 
\family sans
Preferences
\family default
 dialog.
 Have a look and then invent your own!
\end_layout

\begin_layout Standard
Moreover, each Format can have a Viewer associated with it.
 For example, you might want to use 
\family typewriter
ghostview
\family default
 to examine PostScript® files, or 
\family typewriter
xdvi
\family default
 to preview the LaTeX output.
 You can alter the viewer to use (and what options to pass to it) via the
 
\family sans
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
P
\bar default
references:Conversion
\family default
 dialog.
 For example, to change the 
\family typewriter
dvi
\family default
 viewer, select the 
\family typewriter
DVI
\family default
 format in the dialog, change the viewer to be 
\family typewriter
kdvi
\family default
 (or whatever), and hit 
\family sans
\bar under
M
\bar default
odify
\family default
.
\end_layout

\begin_layout Standard
If the operating system has a default viewer associated to a format it is
 used instead of the one you can define via the 
\family sans
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
P
\bar default
references:Conversion
\family default
 dialog.
 This does currently only work in the Windows® and Mac OS X ports of LyX,
 but it is planned to implement this feature on all other ports that can
 support it, too.
\end_layout

\begin_layout Standard
Editors are like viewers: Each Format can have an Editor associated to it,
 and they can be altered via the 
\family sans
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
P
\bar default
references:Conversion
\family default
 dialog.
 LyX uses them whenever an included file
\begin_inset Foot
status collapsed

\begin_layout Standard
This can be an included 
\family typewriter
.tex
\family default
 file, a verbatim included text file, external material or an included graphics
 file.
\end_layout

\end_inset

 needs to be edited.
\end_layout

\begin_layout Standard
Finally, each Format can have a Copier associated to it.
 Since all conversions from one Format to another take place in a temporary
 directory, it is sometimes necessary to modify a file before copying it
 to the temporary directory
\begin_inset Foot
status collapsed

\begin_layout Standard
For example, the file may reference other files with relative filenames,
 which will become invalid in the temporary directory
\end_layout

\end_inset

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

\begin_layout Standard
Sometimes LyX needs to know a bit more about the properties of a format.
 These bits can be specified with flags.
 Currently there is only one flag, but more will be added in the future:
\end_layout

\begin_layout Standard
The 
\family typewriter
vector
\family default
 flag tells LyX whether a format can contain vector graphics.
 This information is used to determine the target format of included graphics
 for 
\family typewriter
pdflatex
\family default
 export.
 Included graphics may need to be converted to either 
\family typewriter
pdf
\family default
, 
\family typewriter
png
\family default
 or 
\family typewriter
jpg
\family default
, since 
\family typewriter
pdflatex
\family default
 can not handle other image formats.
 If an included graphic is not already in 
\family typewriter
pdf
\family default
, 
\family typewriter
png
\family default
 or 
\family typewriter
jpg
\family default
 format it is converted to 
\family typewriter
pdf
\family default
 if the 
\family typewriter
vector
\family default
 flag of the format is set, and otherwise to 
\family typewriter
png
\family default
.
\end_layout

\begin_layout Section
BibTeX and makeindex
\end_layout

\begin_layout Standard
Both the bibliography generating command (default 
\family typewriter
bibtex
\family default
) and the index generating command (default 
\family typewriter
makeindex
\family default
 with options 
\family typewriter
-c
\family default
 and 
\family typewriter
-q
\family default
) can be changed.
 As an alternative for 
\family typewriter
makeindex
\family default
, 
\family typewriter
xindy
\family default
 can be recommended.
 
\end_layout

\begin_layout Standard
The command to enter is
\end_layout

\begin_layout Quote

\family typewriter
makeindex.sh -m $$lang
\end_layout

\begin_layout Standard
where the placeholder 
\family typewriter
$$lang
\family default
 will be replaced by the chosen document (babel) language.
 For this, you must 
\end_layout

\begin_layout Standard
have installed the packages 
\family typewriter
xindy
\family default
 and 
\family typewriter
make-rules
\family default
 (
\family typewriter
xindy-make-rules
\family default
).
 Type 
\family typewriter
makeindex.sh
\family default
 at a shell prompt for a help page.
\end_layout

\begin_layout Section
ASCII export options
\end_layout

\begin_layout Standard
\begin_inset VSpace bigskip
\end_inset


\end_layout

\begin_layout Standard
\noindent
There are a couple of commands that can be used to 
\begin_inset Quotes eld
\end_inset

clean up
\begin_inset Quotes erd
\end_inset

 exported ASCII text files.
 Note that LyX automatically detects and uses the best settings for your
 system at installation time, but you can modify them if you disagree with
 its interpretation.
\end_layout

\begin_layout Description

\family typewriter
\series medium
ASCII\InsetSpace ~
roff
\family default
 
\series default
This option defines the command used to produce better ASCII tables with
 the 
\family typewriter
groff/troff/nroff
\family default
 UNIX-commands (refer to their manpages for more information about them).
 Setting this as empty tells LyX to use the internal (inferior) formatter.
\end_layout

\begin_layout Description

\family typewriter
\series medium
ASCII\InsetSpace ~
line\InsetSpace ~
length
\family default
 
\series default
With this command you can set the default line length of the ASCII output
 file.
 Setting it to 0 means endless lines.
\end_layout

\begin_layout Section
Printer
\end_layout

\begin_layout Standard
There are a bunch of configuration options that are used for interaction
 with the external print command from LyX.
 Normally the defaults are fine: if, however, your print command takes different
 option names, you can modify them here.
\end_layout

\begin_layout Subsection
Changing Colors
\end_layout

\begin_layout Standard
You can change the colors used by LyX on-screen using the new 
\family sans
Preferences
\family default
 dialog.
 Alternatively, if you're feeling particularly perverse you could use the
 
\family typewriter
set-color
\family default
 bindable function (see the 
\emph on
Reference Guide
\emph default
).
 Input would have the format:
\end_layout

\begin_layout Standard

\family typewriter
set-color LyXName X11Color
\end_layout

\begin_layout Standard
Here is a (partial) list of the functions and default colors:
\end_layout

\begin_layout Standard
\align center
\begin_inset Tabular
<lyxtabular version="3" rows="10" columns="3">
<features>
<column alignment="left" valignment="top" leftline="true" width="0pt">
<column alignment="left" valignment="top" leftline="true" width="0pt">
<column alignment="center" valignment="top" leftline="true" rightline="true" width="0pt">
<row topline="true" bottomline="true">
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
LyX Name
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
Purpose
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
Default Color (X11)
\end_layout

\end_inset
</cell>
</row>
<row topline="true">
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
background
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
text background
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
black
\end_layout

\end_inset
</cell>
</row>
<row topline="true">
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
foreground
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
text foreground
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
linen
\end_layout

\end_inset
</cell>
</row>
<row topline="true">
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
latex
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
LaTeX code
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
DarkRed
\end_layout

\end_inset
</cell>
</row>
<row topline="true">
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
math
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
Mathed formulae
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
DarkBlue
\end_layout

\end_inset
</cell>
</row>
<row topline="true">
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
mathline
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
fraction Lines, brackets, etc.
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
Blue
\end_layout

\end_inset
</cell>
</row>
<row topline="true">
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
mathbg
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
AntiqueWhite
\end_layout

\end_inset
</cell>
</row>
<row topline="true">
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
mathframe
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
Magenta
\end_layout

\end_inset
</cell>
</row>
<row topline="true">
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
mathcursor
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
black
\end_layout

\end_inset
</cell>
</row>
<row topline="true" bottomline="true">
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
selection
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
selection background
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
\begin_inset Text

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
LightBlue
\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\begin_layout Section
The autodetected settings
\end_layout

\begin_layout Standard
\begin_inset LatexCommand \label{sec:autodetected}

\end_inset

There are several items that are detected for you when you run
\family sans
\bar under
 T
\bar default
ools
\bar under
\SpecialChar \menuseparator
R
\bar default
econfigure
\family default
.
 In this section, we list those which pertain to the user preferences.
\end_layout

\begin_layout Description

\family typewriter
\series medium

\backslash
ascii_roff_command
\family default
\series default
 uses either 
\family typewriter
groff
\family default
 or 
\family typewriter
nroff
\family default
+
\family typewriter
tbl
\family default
, depending on what is available.
\end_layout

\begin_layout Description

\family typewriter
\series medium

\backslash
chktex_command
\family default
\series default
 is set to 
\family typewriter
chktex
\family default
 plus a bunch of options.
\end_layout

\begin_layout Description

\family typewriter
\series medium

\backslash
print_spool_command
\family default
\series default
 is set to 
\family typewriter
lp
\family default
 on systems (so-called System V) who have this command, and 
\family typewriter
lpr
\family default
 otherwise (BSD systems).
\end_layout

\begin_layout Description

\family typewriter
\series medium

\backslash
print_spool_printerprefix
\family default
\series default
 is set to 
\family typewriter
-d
\family default
 or 
\family typewriter
-P
\family default
, depending on whether 
\family typewriter
lp
\family default
 or 
\family typewriter
lpr
\family default
 was found.
\end_layout

\begin_layout Description

\family typewriter
\series medium

\backslash
font_encoding
\family default
\series default
 is set to 
\family typewriter
T1
\family default
 if the 
\family typewriter
ec
\family default
 fonts are found and LaTeX has support for these fonts built-in.
 You can set it manually if you only have the so-called 
\family typewriter
dc
\family default
 fonts.
\end_layout

\begin_layout Section
The rest
\end_layout

\begin_layout Standard
There are many other configuration options that can be used to customize
 LyX behavior.
 We still need to document them here, but again, most should be fairly obvious.
 Please ask on the mailing lists if you need some more information; it may
 even prompt us to expand this section.
\end_layout

\begin_layout Chapter
Internationalizing LyX
\begin_inset LatexCommand \label{chap:i18n}

\end_inset


\end_layout

\begin_layout Standard
LyX supports using a translated interface.
 Last time we checked, LyX provided text in 14 languages together with the
 default English text.
 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 locale(5) 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 short-cut
 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 -- will try to fix
 these shortcomings in future versions of LyX.
\end_layout

\begin_layout Section
Selecting an alternative language for the user interface
\end_layout

\begin_layout Standard
This feature is disabled by default, meaning that system default language
 will be used.
 To enable an alternative language, you have to set an appropriate environment
 variable.
 Use 
\family typewriter
"setenv LANG xx"
\family default
 
\family roman
for csh class shells
\family default
 or 
\family typewriter
"export LANG=xx"
\family default
 
\family roman
for sh class shells
\family default
.
 Substitute the 
\family typewriter
xx
\family default
 with the two letter code (or four letter code, like 
\family typewriter
en_GB
\family default
 for British English) for the language you want.
 For instance, 
\family typewriter
no
\family default
 is Norwegian.
 Besides the user interface texts being translated, also the appropriate
 manuals will be presented under the Help menu -- if available.
\end_layout

\begin_layout Standard
On some systems, you may have to redefine 
\family typewriter
LC_ALL
\family default
 or 
\family typewriter
LC_MESSAGES
\family default
 instead of 
\family typewriter
LANG
\family default
, to override the system settings; their preference is in this order
\begin_inset Foot
status collapsed

\begin_layout Standard
The shell variable LANGUAGE has been disabled in LyX for technical reasons.
 Don't use it.
\end_layout

\end_inset

, which corresponds to the way GNU 
\family typewriter
gettext
\family default
 does it.
 Consult your system documentation.
 Normally, you'll want to put the appropriate line in a shell script run
 on start-up, so that the translation is on by default.
 Remember that this affects 
\emph on
all
\emph default
 localized packages, not only LyX! 
\end_layout

\begin_layout Standard
If LyX is configured and compiled with 
\begin_inset Quotes eld
\end_inset


\family typewriter
--disable-nls
\family default

\begin_inset Quotes erd
\end_inset

, this mechanism will not work.
\end_layout

\begin_layout Section
Translating LyX
\end_layout

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

\begin_layout Standard
LyX uses the GNU 
\family typewriter
gettext
\family default
 library to handle the internationalization of the interface.
 To have LyX speak your favorite language in all menus and dialogs, you
 need a 
\family typewriter
po
\family default
-file for that language.
 When this is available, you'll have to generate a mo-file from it and install
 the 
\family typewriter
mo
\family default
-file.
 The process of doing all of this is explained in the documentation for
 GNU 
\family typewriter
gettext
\family default
, but in short, this is what you do (
\series bold
xx 
\series default
denotes the language code):
\end_layout

\begin_layout Standard
\begin_inset ERT
status inlined

\begin_layout Standard


\backslash
begin{sloppypar}
\end_layout

\end_inset


\end_layout

\begin_layout Itemize
Copy 
\family typewriter
LYX-SOURCE-DIR/po/lyx.pot
\family default
 to 
\series bold
xx
\family typewriter
\series default
.po
\family default
 (if 
\family typewriter
lyx.pot
\family default
 doesn't exist, it can be remade with
\family typewriter
 make lyx.pot
\family default
 in that directory, or you can use an existing po-file for some other language
 as a template).
\end_layout

\begin_layout Itemize
Edit 
\family typewriter
xx.po
\begin_inset Foot
status collapsed

\begin_layout Standard
We recommend that you use Emacs to do this, since the 
\family typewriter
gettext 
\family default
distribution includes a nice mode that supports you in doing this.
\end_layout

\end_inset


\family default
.
 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 
\series bold
xx
\series default
-language.
 There is a tool named 
\family typewriter
scgen.pl
\family default
 written in Prolog in 
\family typewriter
LYX-SOURCE-DIR/development/tools/
\family default
 that may be useful to help determine short-cut keys.
 Note that XForms (version 0.86 at least) can't handle anything but 7-bit
 characters as shortcut keys.
 You should also fill also out the information at the beginning of the new
 
\family typewriter
po
\family default
-file with your email-address, etc., so people know where to reach you with
 suggestions and entertaining flames.
\end_layout

\begin_layout Itemize
Generate 
\series bold
xx
\family typewriter
\series default
.mo
\family default
.
 This can be done with
\newline

\family typewriter
msgfmt -o 
\family default
\series bold
xx
\family typewriter
\series default
.mo < 
\family default
\series bold
xx
\family typewriter
\series default
.po
\end_layout

\begin_layout Itemize
Copy the 
\family typewriter
mo
\family default
-file to your locale-tree, at the correct directory for application messages
 for the language 
\series bold
xx
\series default
, and under the name 
\family typewriter
lyx.mo
\family default

\newline
(e.g.
 
\family typewriter
/usr/local/share/locale/
\family default
\series bold
xx
\family typewriter
\series default
/LC_MESSAGES/lyx.mo
\family default
)
\end_layout

\begin_layout Standard
\begin_inset ERT
status inlined

\begin_layout Standard


\backslash
end{sloppypar}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
Adding a new po-file to the 
\emph on
distribution 
\emph default
of LyX involves altering the configure scripts and more, but the way 
\family typewriter
gettext
\family default
 works, you don't actually need the source-code of LyX to translate it---having
 
\family typewriter
lyx.pot
\family default
 (or an existing 
\family typewriter
po
\family default
-file) and the 
\family typewriter
gettext
\family default
 tools suffices.
\end_layout

\begin_layout Standard
If you've written a translation file for a language that LyX does not currently
 support, feel free to submit it for inclusion by sending a patch.
 In this case, we recommend that you read the 
\family typewriter
README
\family default
 provided in the 
\family typewriter
LYX-SOURCE-DIR/po/
\family default
 directory for more instructions.
\end_layout

\begin_layout Subsubsection
Ambigous 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 
\family typewriter
To
\family default
 which has the german translation 
\family typewriter
\lang german
Nach
\family default
\lang english
 or 
\family typewriter
\lang german
Bis
\family default
\lang english
.
 
\family typewriter
gettext
\family default
 does not handle such ambigous translations.
 Therefore you have to add some context information to the message: Instead
 of 
\family typewriter
To
\family default
 it becomes 
\family typewriter
To[[as in 'From format x to format y']]
\family default
 and 
\family typewriter
To[[as in 'From page x to page y']].

\family default
 Now the two occurences of 
\family typewriter
To
\family default
 are different for 
\family typewriter
gettext
\family default
 and can be translated correctly to 
\family typewriter
\lang german
Nach
\family default
\lang english
 and 
\family typewriter
\lang german
Bis
\family default
\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 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 
\family sans
\bar under
H
\bar default
elp
\family default
-menu) can (and should!) be translated.
 If there are translated versions of the documentation available
\begin_inset Foot
status collapsed

\begin_layout Standard
As of February 2003, almost all of the docs have been translated into German
 and French.
 The 
\emph on
Tutorial
\emph default
 has been translated into at least 12 other languages, with other translations
 in progress.
 The library of translated documents is growing rapidly.
\end_layout

\end_inset

, and the locale is set accordingly, these will be used automagically by
 LyX.
 LyX looks for translated versions as 
\family typewriter
LyXDir/doc/
\series bold
xx
\series default
_DocName.lyx
\family default
, where 
\family typewriter
\series bold
xx
\family default
\series default
 denotes the language as set by the environmental variable 
\family typewriter
$LANG
\family default
.
 If there are none, the default English versions will be displayed.
 Note that the translated versions must have the same filenames (
\family typewriter
DocName
\family default
 above) as the original.
 If you feel up to translating the documentation (an excellent way to proof-read
 the original documentation BTW!), there are a few things you should do
 right away:
\end_layout

\begin_layout Itemize
Read 
\family typewriter
DocStyle.lyx
\family default
, the guide to writing LyX documentation.
 Pay special attention to the translator's section.
\end_layout

\begin_layout Itemize
Check out the documentation translation web page at 
\begin_inset LatexCommand \url[The LyX Developer's Web Site]{http://www.devel.lyx.org}

\end_inset

.
 That way, you can find out which (if any) documents have already been translate
d 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 
\family typewriter
Intro.lyx
\family default
 (
\family sans
\bar under
H
\bar default
elp\SpecialChar \menuseparator

\bar under
I
\bar default
ntroduction
\family default
), 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 
\family typewriter
~/.lyx/doc/
\family default
-directory.
\end_layout

\begin_layout Itemize
Sometimes the original document (from the LyX-team) will be updated.
 Use the ViewCVS tool available at 
\begin_inset LatexCommand \htmlurl{http://www.lyx.org/viewcvs.cgi/lyxdoc/}

\end_inset

 to see what has been changed
\begin_inset Foot
status collapsed

\begin_layout Standard
Alternatively, you can keep a copy of the latest version of the English
 document which you've translated.
\end_layout

\end_inset

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

\begin_layout Itemize
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 Section
International Keyboard Support
\end_layout

\begin_layout Standard

\emph on
[Editor's Note: The following section is by 
\shape smallcaps
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]
\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 ASCII 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

\family typewriter

\backslash
kmap
\family default
 
\family typewriter
key
\emph on
 
\emph default
outstring
\end_layout

\begin_layout Standard
where 
\family typewriter
key
\family default
 is the key to be translated and 
\family typewriter
outstring
\family default
 is the string to be inserted into the document.
 To define dead keys, use:
\end_layout

\begin_layout Quotation

\family typewriter

\backslash
kmod
\family default
 
\family typewriter
key
\family default
 
\family typewriter
deadkey
\end_layout

\begin_layout Standard
where 
\family typewriter
key
\family default
 is keyboard key and 
\family typewriter
deadkey
\family default
 is dead key name.
 The following dead keys are supported (shortcut name is in parentheses):
\end_layout

\begin_layout Quotation

\emph on
Name
\hfill
Example
\end_layout

\begin_layout Quotation
acute (acu)
\hfill
áéíóú
\end_layout

\begin_layout Quotation
grave (gra)
\hfill
àèìòù
\end_layout

\begin_layout Quotation
macron (mac)
\hfill
 \i \={o}

\end_layout

\begin_layout Quotation
tilde (til)
\hfill
ñÑ
\end_layout

\begin_layout Quotation
underbar (underb)
\hfill

\begin_inset ERT
status inlined

\begin_layout Standard


\backslash
b o
\end_layout

\end_inset


\end_layout

\begin_layout Quotation
cedilla (ced)
\hfill
çÇ
\end_layout

\begin_layout Quotation
underdot (underd)
\hfill

\begin_inset ERT
status inlined

\begin_layout Standard


\backslash
d o
\end_layout

\end_inset


\end_layout

\begin_layout Quotation
circumflex (circu)
\hfill
âêîôû
\end_layout

\begin_layout Quotation
circle (circl)
\hfill
Å\i \r{u}
\i \r{U}

\end_layout

\begin_layout Quotation
tie (tie)
\hfill

\begin_inset ERT
status inlined

\begin_layout Standard


\backslash
t o
\end_layout

\end_inset


\end_layout

\begin_layout Quotation
breve (bre)
\hfill
\i \u{a}

\begin_inset ERT
status inlined

\begin_layout Standard


\backslash
u o
\end_layout

\end_inset


\end_layout

\begin_layout Quotation
caron (car)
\hfill
\i \v{c}
\i \v{s}
\i \v{z}

\end_layout

\begin_layout Quotation
hungarian umlaut (hug)
\hfill
\i \H{o}
\i \H{u}

\end_layout

\begin_layout Quotation
umlaut (uml)
\hfill
äöü
\end_layout

\begin_layout Quotation
dot (dot)
\hfill
\i \.{z}

\begin_inset ERT
status inlined

\begin_layout Standard


\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

\family typewriter

\backslash
kxmod
\family default
 
\family typewriter
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

\family typewriter

\backslash
kxmod
\family default
 
\family typewriter
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 
\family typewriter
#
\family default
 have different meaning.
 
\family typewriter
#
\family default
 marks comments, quotes start and end LaTeX-style commands.
 To enter quote, you'll need to use 
\family typewriter

\backslash
"
\family default
, to enter 
\family typewriter
#
\family default
, use 
\family typewriter

\backslash
#
\family default
.
\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

\family typewriter

\backslash
kinclude filename
\family default
\emph on

\hfill

\family typewriter
\emph default
include
\family default
 another file
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
kprog program
\family default
\emph on

\hfill

\family typewriter
\emph default
define
\family default
 an external keymap translation program 
\end_layout

\begin_layout Standard
Also, it should look into 
\family typewriter
lyxrc
\family default
 file for defaults, too (for example, a 
\family typewriter

\backslash
kinclude
\family default
 option to include default keyboard).
\end_layout

\begin_layout Section
International Keymap Stuff
\begin_inset LatexCommand \label{sec:keymap}

\end_inset


\end_layout

\begin_layout Standard
The next two sections describe the 
\family typewriter
\shape up
.kmap
\family default
\shape default
 and 
\family typewriter
\shape up
.cdef
\family default
\shape default
 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 
\family sans
\shape up
.
\family typewriter
kmap
\family default
\shape default
 file maps keystrokes to characters or strings.
 As the name suggests it sets a keyboard mapping.
 The 
\family typewriter
.kmap
\family default
 file keywords 
\family typewriter
\shape up
kmap
\shape default
,
\shape up
kmod
\shape default
,
\shape up
ksmod
\family default
\shape default
, and 
\family typewriter
\shape up
kcomb
\family default
\shape default
 are described in this section.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
\shape up
kmap
\family default
\shape default
 Map a character to a string
\end_layout

\begin_layout LyX-Code

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

\begin_layout Standard
This will ma
\family roman
p 
\emph on
char 
\emph default
to 
\emph on
string
\emph default
.
 Note that in 
\emph on
string
\emph default
, 
\shape up
the double-quote (")
\shape default
 and 
\shape up
the backslash (
\backslash
) 
\shape default
must be escaped with a preceding backslash (
\shape up

\backslash

\shape default
)
\family default
.
\end_layout

\begin_layout Standard
An example of a 
\family sans
\shape up
kmap
\family default
\shape default
 statement to cause the symbol
\family sans
\shape up
 / 
\family default
\shape default
to be output for the keystroke
\family sans
\shape up
 & 
\family default
\shape default
is:
\end_layout

\begin_layout LyX-Code

\backslash
kmap & /
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family typewriter
\shape up
kmod
\family default
\shape default
 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 
\emph on
char
\shape up
 be an accent
\emph default
 on the 
\emph on
allowed 
\emph default
cha
\family default
racter(s).
 This is the dead key
\begin_inset Foot
status collapsed

\begin_layout Standard
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 
\emph on
ä
\emph default
 can be produced in this manner.
\end_layout

\end_inset

 mechanism.
 
\end_layout

\begin_layout Standard
If you 
\family roman
hit 
\emph on
char 
\emph default
and then another key not in 
\emph on
allowed
\emph default
, you will get a 
\emph on
char 
\emph default
followed by the other, unallowed key, as output.
 
\family default
Note that a 
\family sans
\shape up
Backspace
\family default
\shape default
 cancels a dead key, so if 
\family roman
you hit 
\emph on
char
\family sans
 
\shape up
Backspace
\family default
\emph default
, the cursor will not go one position backwards but will instead cancel
 the effect t
\family roman
hat 
\emph on
char
\emph default
 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 List
\labelwidthstring 00.00.0000

\family typewriter
ksmod
\family default
 Specify an exception to the accent character
\end_layout

\begin_layout LyX-Code

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

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

\backslash
kmo
\shape default
d
\family default
 declar
\family roman
ation and 
\emph on
char 
\emph default
must not belong in the 
\emph on
allowed 
\emph default
set of 
\emph on
accent
\emph default
.
 When 
\shape up
you enter the 
\emph on
accent char 
\emph default
sequence, 
\emph on
result
\emph default
  is produced.
 If such a declaration does not exist in
\family default
 the
\family sans
 
\family typewriter
.kmap
\family default
\shape default
 file and yo
\family roman
u enter 
\emph on
accent  char
\emph default
, you get 
\emph on
accent_key char 
\emph default
 where 
\emph on
accent_key 
\emph default
 is the first arg
\family default
ument of the 
\family typewriter
\shape up

\backslash
kmod
\family default
\shape default
 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 List
\labelwidthstring 00.00.0000

\family typewriter
kcomb
\family default
 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 
\emph on
accent1
\emph default
 and 
\emph on
accent2
\emph default
 (in that order!) on 
\emph on
allowed
\emph default
 chars.
 The keystrokes for 
\emph on
accent1
\emph default
 and 
\emph on
accent2
\emph default
 must have be
\family default
en set with a 
\family typewriter
\shape up

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

\begin_layout Standard
Consider this example from the 
\family typewriter
\shape up
greek.kmap
\family default
\shape default
 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 
\family sans
\shape up
;:i
\family default
\shape default
 and get the effect of 
\family typewriter
\shape up

\backslash
'{
\backslash
"{i}}
\family default
\shape default
.
 
\family roman
\shape up
A backspace 
\family default
\shape default
in this case cancels the last dead key, so if you press
\family sans
\shape up
 ;: Backspace i 
\family default
\shape default
you get 
\family typewriter
\shape up

\backslash
'{i}
\family default
\shape default
.
\end_layout

\begin_layout Subsection
The .cdef File
\end_layout

\begin_layout Standard
After the 
\family typewriter
\shape up
.kmap
\family sans
 
\family default
\shape default
mapping is performed, a 
\family typewriter
\shape up
.cde
\shape default
f
\family default
 file maps the strings that the symbols generate to characters in the current
 font.
 The LyX distribution currently includes at least the 
\family typewriter
\shape up
iso8859-1.cdef
\family default
\shape default
 and 
\family typewriter
\shape up
iso8859-2.cdef
\family default
\shape default
 files.
\end_layout

\begin_layout Standard
In general the 
\family typewriter
\shape up
.cdef
\family sans
 
\family default
\shape default
file is a sequence of declarations of the form
\end_layout

\begin_layout LyX-Code

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

\begin_layout Standard
For example, in order to map 
\family sans
\shape up

\backslash
'{e}
\family default
\shape default
 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 
\family typewriter

\backslash

\family default
 and 
\family typewriter
"
\family default
 being escap
\family roman
ed in 
\emph on
string
\emph default
.
 Note that 
\family default
the same character can apply to more than one string.
 In the 
\family typewriter
i
\shape up
so-8859-7.cdef
\family sans
 
\family default
\shape default
file you have
\end_layout

\begin_layout LyX-Code
192 "
\backslash

\backslash
'{
\backslash

\backslash

\backslash
"{i}}"
\newline
192 "
\backslash

\backslash

\backslash
"{
\backslash

\backslash
'{i}}"
\end_layout

\begin_layout Standard
If 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

\i \^{}

\begin_inset Quotes erd
\end_inset

.
 You could bind the 
\family sans
^
\family default
-key [a.k.a.\InsetSpace ~

\family sans
Shift-6
\family default
] to the LyX command 
\family typewriter
accent-circumflex
\family default
 in your 
\family typewriter
lyxrc
\family default
 file.
 Now, whenever you type the 
\family sans
^
\family default
-key followed by a letter, that letter will have a circumflex accent on
 it.
 For example, the sequence 
\begin_inset Quotes eld
\end_inset


\family sans
^e
\family default

\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


\family sans
^t
\family default

\begin_inset Quotes erd
\end_inset

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


\family sans
t
\family default

\begin_inset Quotes erd
\end_inset

 never takes a circumflex accent.
 Hitting 
\family sans
Space
\family default
 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 
\family sans
,-key
\family default
 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 
\family sans
Meta-
\family default
, 
\family sans
Ctrl-
\family default
, and 
\family sans
Shift-
\family default
 in combination with an accent, like 
\begin_inset Quotes eld
\end_inset


\family sans
~
\family default

\begin_inset Quotes erd
\end_inset

 or 
\begin_inset Quotes eld
\end_inset


\family sans
,
\family default

\begin_inset Quotes erd
\end_inset

 or 
\begin_inset Quotes eld
\end_inset


\family sans
^
\family default

\begin_inset Quotes erd
\end_inset

.
 Another way involves using 
\family typewriter
xmodmap
\family default
 and 
\family typewriter
xkeycaps
\family default
 [remember them from section?] to set up the special 
\family typewriter
Mode_Switch
\family default
 key.
 The 
\family typewriter
Mode_Switch
\family default
 acts in some ways just like 
\family sans
Shift
\family default
 and permits you to bind keys to accented characters.
 You can also turn keys into dead-keys by binding them to something like
 
\family typewriter
usldead_cedilla
\family default
 and then binding this symbolic key to the corresponding LyX command.
\begin_inset Foot
status collapsed

\begin_layout Standard
Note from 
\noun on
John Weiss
\noun default
: This is exactly what I do in my 
\family typewriter
~/.lyx/lyxrc
\family default
 and my 
\family typewriter
~/.xmodmap
\family default
 files.
 I have my 
\family sans
Scroll\InsetSpace ~
Lock
\family default
 key set up as 
\family typewriter
Mode_Shift
\family default
 and a bunch of these 
\begin_inset Quotes eld
\end_inset


\family typewriter
usldead_*
\family default

\begin_inset Quotes erd
\end_inset

 symbolic keys bound such things as 
\family sans
Scroll\InsetSpace ~
Lock-^
\family default
 and 
\family sans
Scroll\InsetSpace ~
Lock-~
\family default
.
 This is how I produce my accented characters.
\end_layout

\end_inset

 You can make just about anything into the 
\family typewriter
Mode_Switch
\family default
 key: One of the 
\family sans
Ctrl-
\family default
 keys, a spare function key, etc.
 As for the LyX commands that produce accents, check the entry for 
\family typewriter
accent-acute
\family default
 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
\begin_inset LatexCommand \label{sec:savlang}

\end_inset

You can edit your preferences so that your desired language environment
 is automatically configured when LyX starts up, via the 
\family sans
\bar under
E
\bar default
dit\SpecialChar \menuseparator

\bar under
P
\bar default
references
\family default
 dialog.
\end_layout

\begin_layout Chapter
Installing New Document Classes, Layouts, and Templates 
\begin_inset LatexCommand \label{chap:textclass}

\end_inset


\begin_inset OptArg
status collapsed

\begin_layout Standard
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 LyX layout and template files, as well as offer a refresher on correctly
 installing new LaTeX document classes.
 Some definitions: a document class is a LaTeX file (usually ending in 
\family typewriter
.cls
\family default
 or 
\family typewriter
.sty
\family default
) which describes the format of a document such as an article, report, journal
 preprint, etc.
 and all the commands needed to realize that format.
 A layout file is a LyX file which corresponds to a LaTeX document class
 and which tells LyX how to 
\begin_inset Quotes eld
\end_inset

draw
\begin_inset Quotes erd
\end_inset

 things on the screen to make the display look something like the final
 printed page.
 More precisely, a layout file describes a 
\begin_inset Quotes eld
\end_inset

text class
\begin_inset Quotes erd
\end_inset

 which is the internal construct LyX uses to render the screen display.
 
\begin_inset Quotes eld
\end_inset

Layout
\begin_inset Quotes erd
\end_inset

 and 
\begin_inset Quotes eld
\end_inset

text class
\begin_inset Quotes erd
\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 which contains a set of predefined
 entries for a given document class which are generally required for that
 class.
 Templates are especially useful for things like journal manuscripts which
 are to be submitted electronically.
\end_layout

\begin_layout Section
Installing a new LaTeX package
\end_layout

\begin_layout Standard
Some installations may not include a LaTeX package that you would like to
 use within LyX.
 For example, you might need FoilTeX, a common (and very powerful) package
 for preparing slides or viewgraphs for overhead projectors.
 Here are the formal steps involved in getting the package up and running
 if you are using teTeX or some other web2c based distribution.
 
\end_layout

\begin_layout Enumerate
Get the package from CTAN or wherever.
\begin_inset Foot
status collapsed

\begin_layout Standard
See the 
\emph on
Inventory of your LaTeX configuration
\emph default
 manual for details of what CTAN is and where supported document classes
 can be found.
\end_layout

\end_inset


\end_layout

\begin_layout Enumerate
Read the file 
\family typewriter
texmf.cnf
\family default
 (this usually lives in the directory 
\family typewriter
$TEXMF/web2c
\family default
, though you can run 
\family typewriter
kpsewhich texmf.cnf
\family default
 to locate it).
 It describes how to add a local 
\family typewriter
texmf
\family default
 directory; follow the instructions.
 You need to insert the name of your local 
\family typewriter
texmf
\family default
 directory in 
\family typewriter
texmf.cnf
\family default
.
 Under Linux, 
\family typewriter
/usr/local
\family default
 is a logical place to install software that did not come with your distribution
, so you might use 
\family typewriter
/usr/local/texmf
\family default
.
 Usually, you will have to modify only two things:
\end_layout

\begin_deeper
\begin_layout Enumerate
Set 
\family typewriter
TEXMFLOCAL
\family default
 to the directory you chose; e.g.
 
\newline

\family typewriter
TEXMFLOCAL = /usr/local/texmf
\end_layout

\begin_layout Enumerate
Make sure 
\family typewriter
TEXMF
\family default
 includes the 
\family typewriter
TEXMFLOCAL
\family default
 variable; e.g.
 
\newline

\family typewriter
TEXMF = {$HOMETEXMF,!!$TEXMFLOCAL,!!$TEXMFMAIN}
\end_layout

\end_deeper
\begin_layout Enumerate
Create your local 
\family typewriter
texmf
\family default
 directory (e.g.
 
\family typewriter
/usr/local/texmf
\family default
).
 You must follow the directory structure of your existing 
\family typewriter
texmf
\family default
 directory (for example, latex packages should go under 
\family typewriter
/usr/local/texmf/tex/latex/
\family default
).
\end_layout

\begin_layout Enumerate
Install the package.
 For example, you would unpack the FoilTeX tarball and create 
\family typewriter
/usr/local/texmf/tex/latex/foiltex
\family default
.
 The 
\family typewriter
foiltex
\family default
 directory contains various files.
\end_layout

\begin_layout Enumerate
Run: 
\family typewriter
texhash
\family default
.
 This should create 
\family typewriter
/usr/local/texmf/ls-R 
\family default
amongst others.
\end_layout

\begin_layout Enumerate
From within LyX, do: 
\family sans
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
R
\bar default
econfigure
\family default
.
 Restart LyX.
\end_layout

\begin_layout Standard
Now you should see your new package---for example 
\family sans
slides (FoilTeX)
\family default
---under 
\family sans
\bar under
L
\bar default
ayout\SpecialChar \menuseparator

\bar under
D
\bar default
ocument
\family default
, field 
\family sans
\bar under
C
\bar default
lass
\family default
.
 Note that there are simpler ways of installing packages: you can add a
 link to the new package directory in the system LaTeX directory (
\family typewriter
$TEXMF/tex/latex
\family default
, don't forget to then run 
\family typewriter
texconfig
\family default
), or sometimes simply set the 
\family typewriter
$TEXINPUTS
\family default
 environment variable to include the new package.
 However, the formal procedure described in 
\family typewriter
texmf.cnf
\family default
 is guaranteed to work, so you should follow it unless circumstances absolutely
 prevent it: such as, when you don't have superuser access.
\end_layout

\begin_layout Section
Layouts
\end_layout

\begin_layout Standard
This section describes how to write and install your own LyX layout files
 (also known as text classes) and walks through the 
\family typewriter
article
\family default
 text class format as an example.
 The 
\family typewriter
.layout
\family default
 files describe what paragraph styles are available for a given document
 class and how LyX should display them.
 We try to provide a thorough description of the process here; however,
 there are so many different types of documents supported by LaTeX classes
 we can't hope to cover every different possibility or problem you might
 encounter.
 
\end_layout

\begin_layout Standard
When you plan to write a new layout, it is extremely helpful to look at
 the example layouts distributed with LyX.
 If you use a nice LaTeX document class that might be of interest for others,
 too, and have a nice corresponding LyX layout, feel free to contribute
 the stuff to us, so we may put it into the distribution.
\end_layout

\begin_layout Standard
All the tags described in this chapter are case-insensitive; this means
 that 
\family typewriter
Style
\family default
, 
\family typewriter
style
\family default
 and 
\family typewriter
StYlE
\family default
 are really the same command.
 The possible values are printed in brackets after the feature's name.
 The default value if a feature isn't specified inside a text class-description
 is typeset 
\family typewriter
\emph on
emphasized
\family default
\emph default
.
 If the argument has a datatype 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: 
\family typewriter
float=
\emph on
default
\family default
\emph default
.
\end_layout

\begin_layout Subsection
Supporting new document classes
\end_layout

\begin_layout Standard
There are two situations you are likely to encounter when wanting to support
 a new LaTeX document class, involving LaTeX2e class (
\family typewriter
.cls
\family default
) and style (
\family typewriter
.sty
\family default
) files.
\end_layout

\begin_layout Subsection
A layout for a 
\family sans
sty
\family default
 file
\end_layout

\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, start by copying the existing
 class's layout file into your local directory.
 For the sake of example we'll assume that the style file is called 
\family sans
myclass.sty
\family default
 and it is meant to be used with 
\family sans
report.cls
\family default
 which is a standard class.
\end_layout

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

\begin_layout Standard
Then edit 
\family typewriter
myclass.layout
\family default
 and change the line: 
\end_layout

\begin_layout LyX-Code

\backslash
DeclareLaTeXClass{report}
\end_layout

\begin_layout Standard
to read
\end_layout

\begin_layout LyX-Code

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

\begin_layout Standard
Then add:
\end_layout

\begin_layout LyX-Code
Preamble 
\newline
    
\backslash
usepackage{myclass}
\newline
EndPreamble
\end_layout

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

\begin_layout Standard
Start LyX and select 
\family sans
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
R
\bar default
econfigure
\family default
.
 Restart LyX and try creating a new document.
 You should see "
\family sans
report (myclass)
\family default
" as a document class option in the 
\family sans
\bar under
D
\bar default
ocument\SpecialChar \menuseparator

\bar under
S
\bar default
ettings
\family default
 dialog.
 It is likely that some of the sectioning commands and such will differ
 from how the base class
\begin_inset Foot
status collapsed

\begin_layout Standard

\family typewriter
report
\family default
 in this example
\end_layout

\end_inset

 works, so you can fiddle around with the settings for the different sections
 if you wish.
 See below for more discussion on this.
\end_layout

\begin_layout Subsection
Layout for a 
\family sans
cls
\family default
 file
\end_layout

\begin_layout Standard
In this case, 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
 LaTeX class and modifying it if at all possible.
 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 Section
Declaring a new text class
\end_layout

\begin_layout Standard
When it's finally time to get your hands dirty and create or edit your own
 layout file, the following sections describe what you're up against.
 Our advice is to go slowly, save and test often, listen to soothing music,
 and enjoy one or two of your favorite adult beverages; more if you are
 getting particularly stuck.
 It's really not that hard, except that the multitude of options can become
 overwhelming if you try to do to much in one sitting.
 Go have another adult beverage, just for good measure.
\end_layout

\begin_layout Standard
Here we go!
\end_layout

\begin_layout Standard
Lines in a layout file which begin with a 
\family typewriter
#
\family default
 are comments.
 There is one exception to this rule: all layouts 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}
\end_layout

\begin_layout Standard
The second line is used when you configure LyX.
 The layout file is read by the LaTeX script 
\family typewriter
chkconfig.ltx
\family default
, in a special mode where 
\family typewriter
#
\family default
 is ignored.
 The first line is just a LaTeX comment, and the second one contains the
 declaration of the text class.
 If these lines appear in a file named 
\family typewriter
article.layout
\family default
, then they define a text class of name 
\family typewriter
article
\family default
 (the name of the layout file) which uses the LaTeX document class 
\family typewriter
article.cls
\family default
 (the default is to use the same name as the layout).
 The string 
\begin_inset Quotes eld
\end_inset

article
\begin_inset Quotes erd
\end_inset

 that appears above is used as a description of the text class in the 
\family sans
\bar under
D
\bar default
ocument\SpecialChar \menuseparator

\bar under
S
\bar default
ettings
\family default
 dialog.
\end_layout

\begin_layout Standard
Let's assume that you wrote your own text class that uses the 
\family typewriter
article.cls
\family default
 documentclass, but where you changed the appearance of the section headings.
 If you put it in a file 
\family typewriter
myarticle.layout
\family default
, 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 Standard
This declares a text class 
\family typewriter
myarticle
\family default
, associated with the LaTeX document class 
\family typewriter
article.cls
\family default
 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 Standard
This indicates that your text class uses the foo.sty package.
 Finally, it is also possible to declare classes for SGML and DocBook code.
 Typical declarations will look 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
DeclareSGMLClass{SGML (LinuxDoc)}
\end_layout

\begin_layout Standard
or
\end_layout

\begin_layout LyX-Code
#% Do not delete the line below; configure depends on this 
\end_layout

\begin_layout LyX-Code
# 
\backslash
DeclareDocBookClass[article]{SGML (DocBook article)}
\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
When the text class has been modified to your taste, all you have to do
 is to copy it either in 
\family typewriter
$LyXDir/layouts/
\family default
 or in 
\family typewriter
$UserDir/layouts
\family default
 and run 
\family sans
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
R
\bar default
econfigure
\family default
.
 Exit LyX and restart it; then your new text class should be available along
 with the others.
\end_layout

\begin_layout Subsection
File format
\end_layout

\begin_layout Standard
The first non-comment line must contain the file format number:
\end_layout

\begin_layout Description

\family typewriter
\series medium
Format
\family default
\series default
 [
\family typewriter
int
\family default
] 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 
\family typewriter
2
\family default
.
\end_layout

\begin_layout Subsection
General text class parameters
\end_layout

\begin_layout Standard
These are the general parameters which describe the form of the entire document:
\end_layout

\begin_layout Standard
\begin_inset ERT
status inlined

\begin_layout Standard


\backslash
begin{sloppypar}
\end_layout

\end_inset


\end_layout

\begin_layout Description

\family typewriter
\series medium
Columns
\family default
\series default
 [
\family typewriter
\emph on
1
\emph default
, 2
\family default
] Whether the class-default should have one or two columns.
 Can be changed in the 
\family sans
\bar under
D
\bar default
ocument\SpecialChar \menuseparator

\bar under
S
\bar default
ettings
\family default
\emph on
 
\emph default
dialog.
 This setting (same goes for 
\family typewriter
Sides
\family default
, too) is important: if your text class has two columns by default but you
 forget to set it correctly, the 
\family typewriter
twocolumn
\family default
 LaTeX option will 
\emph on
not
\emph default
 be output when you select 
\family sans
Two columns
\family default
 in 
\family sans
\bar under
D
\bar default
ocument\SpecialChar \menuseparator

\bar under
S
\bar default
ettings.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Sides
\family default
\series default
 [
\family typewriter
\emph on
1
\emph default
, 2
\family default
] Whether the class-default should be printing on one or both sides of the
 paper.
 Can be changed in the
\emph on
 
\family sans
\emph default
\bar under
D
\bar default
ocument\SpecialChar \menuseparator

\bar under
S
\bar default
ettings
\family default
 dialog.
\end_layout

\begin_layout Description

\family typewriter
\series medium
PageStyle
\series default
 
\family default
[
\family typewriter
\emph on
plain
\emph default
, empty, headings
\family default
] The class default pagestyle.
 Can be changed in the 
\family sans
\bar under
D
\bar default
ocument\SpecialChar \menuseparator

\bar under
S
\bar default
ettings
\family default
\emph on
 
\emph default
dialog.
\end_layout

\begin_layout Description

\family typewriter
\series medium
ClassOptions\SpecialChar \ldots{}
End
\family default
\series default
 This section describes various global options supported by the document
 class.
 See Section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:classoptions}

\end_inset

 for a description.
\end_layout

\begin_layout Description

\family typewriter
\series medium
ProvidesAmsmath
\family default
\series default
 [
\family typewriter
\emph on
0
\emph default
, 1
\family default
] Whether the class already loads the 
\family typewriter
amsmath
\family default
 package.
 This is the case of the 
\family typewriter
amsart
\family default
 and 
\family typewriter
amsbook
\family default
 document classes.
\end_layout

\begin_layout Description

\family typewriter
\series medium
ProvidesMakeidx
\family default
\series default
 [
\family typewriter
\emph on
0
\emph default
, 1
\family default
] Whether the class already provides the functionality of the 
\family typewriter
makeidx
\family default
 package.
 This is the case of the 
\family typewriter
amsart
\family default
 and 
\family typewriter
amsbook
\family default
 document classes.
\end_layout

\begin_layout Description

\family typewriter
\series medium
ProvidesUrl
\family default
\series default
 [
\family typewriter
\emph on
0
\emph default
, 1
\family default
] Whether the class already provides the functionality of the 
\family typewriter
url
\family default
 package.
 This is the case of the
\family typewriter
 AASTeX 
\family default
document class.
\end_layout

\begin_layout Description

\family typewriter
\series medium
DefaultFont
\family default
\series default
 This is used to describe the default font of the document.
 See Section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:fonts}

\end_inset

 for a description.
\end_layout

\begin_layout Description

\family typewriter
\series medium
DefaultStyle
\family default
\series default
 [
\family typewriter
string
\family default
] This is the style that will be assigned to new paragraphs, usually 
\family sans
Standard
\family default
.
 This will default to the first defined style if not given, but you are
 highly encouraged to use this directive.
\end_layout

\begin_layout Description

\family typewriter
\series medium
TitleLatexType
\family default
\series default
 [
\family typewriter
\emph on
CommandAfter
\family default
\emph default
, 
\family typewriter
Environment
\family default
] Indicates what kind of markup is used to define the title of a document.
 
\family typewriter
CommandAfter
\family default
 means that the macro with name 
\family typewriter
TitleLatexName
\family default
 will be inserted after the last layout which has 
\begin_inset Quotes eld
\end_inset


\family typewriter
InTitle 1
\family default

\begin_inset Quotes erd
\end_inset

.
 
\family typewriter
Environment
\family default
 corresponds to the case where the block of paragraphs which have 
\begin_inset Quotes eld
\end_inset


\family typewriter
InTitle 1
\family default

\begin_inset Quotes erd
\end_inset

 should be enclosed into the
\family typewriter
 TitleLatexName 
\family default
environment
\family typewriter
.
\end_layout

\begin_layout Description

\family typewriter
\series medium
TitleLatexName
\family default
\series default
 [
\family typewriter
string="maketitle"
\family default
] The name of the command/environment mentionned above.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Preamble\SpecialChar \ldots{}
EndPreamble
\family default
\series default
 A set of macro definitions that will be output at the beginning of the
 LaTeX files.
 Use this for global definitions.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Input
\family default
\series default
 As its name implies, this command allows you to include another layout
 definition file within yours to avoid duplicating commands.
 Common examples are the standard layout files, for example, 
\family typewriter
stdclass.inc
\family default
, which contains most of the basic layouts.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Style\SpecialChar \ldots{}
End
\family default
\series default
 This sequence defines a new style.
 If the style already exists, it will redefine some of its parameters instead.
 See Section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:style}

\end_inset

 for details.
\end_layout

\begin_layout Description

\family typewriter
\series medium
NoStyle
\family default
\series default
 This command deletes an existing style.
 This is particularly useful when you want to suppress a style that has
 be defined in an input file.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Float\SpecialChar \ldots{}
End
\family default
\series default
 This sequence defines a new float.
 See Section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:floats}

\end_inset

 for details.
\end_layout

\begin_layout Description

\family typewriter
\series medium
NoFloat
\family default
\series default
 This command deletes an existing float.
 This is particularly useful when you want to suppress a float that has
 be defined in an input file.
\end_layout

\begin_layout Description

\family typewriter
\series medium
CharStyle\SpecialChar \ldots{}
End
\series default
 
\family default
This section defines a new character style.
 See Section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:charstyle}

\end_inset

 for a description.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Counter\SpecialChar \ldots{}
End
\family default
\series default
 This sequence defines a new counter.
 See Section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:counter}

\end_inset

 for details.
\end_layout

\begin_layout Standard
\begin_inset ERT
status inlined

\begin_layout Standard


\backslash
end{sloppypar}
\end_layout

\end_inset


\end_layout

\begin_layout Subsection

\family typewriter
ClassOptions
\family default
 section
\end_layout

\begin_layout Standard
\begin_inset LatexCommand \label{sec:classoptions}

\end_inset

The 
\family typewriter
ClassOptions
\family default
 section can contain the following entries:
\end_layout

\begin_layout Description

\family typewriter
\series medium
FontSize
\family default
\series default
 [
\family typewriter
string="10|11|12"
\family default
] The list of available font sizes for the document's main font, separated
 by 
\begin_inset Quotes eld
\end_inset


\family typewriter
|
\family default

\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Description

\family typewriter
\series medium
PageStyle
\family default
\series default
 [
\family typewriter
string="empty|plain|headings|fancy"
\family default
] The list of available page styles, separated by 
\begin_inset Quotes eld
\end_inset


\family typewriter
|
\family default

\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Other
\family default
\series default
 [
\family typewriter
string=""
\family default
] Some document class options, separated by a comma, that will be added
 to the optional part of the 
\family typewriter

\backslash
documentclass
\family default
 command.
\end_layout

\begin_layout Subsection
Specific Paragraph Layouts
\end_layout

\begin_layout Standard
\begin_inset LatexCommand \label{sec:style}

\end_inset

A paragraph layout description looks like this
\begin_inset Foot
status collapsed

\begin_layout Standard
Note that this will either define a new layout 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 Standard
\begin_inset ERT
status inlined

\begin_layout Standard


\backslash
begin{sloppypar}
\end_layout

\end_inset


\end_layout

\begin_layout Description

\family typewriter
\series medium
CopyStyle
\family default
\series default
 
\family typewriter
[string]
\family default
 This is used to copy all the features of an existing layout into the current
 one.
 
\end_layout

\begin_layout Description

\family typewriter
\series medium
LatexType
\family default
\series default
 [
\family typewriter
\emph on
Paragraph
\emph default
, Command, Environment, Item_Environment,
\family default
 
\family typewriter
List_Environment
\family default
] How the layout should be translated into LaTeX.
 
\family typewriter
Paragraph
\family default
 means nothing special.
 
\family typewriter
Command
\family default
 means 
\family typewriter

\backslash

\emph on
LatexName
\emph default
{\SpecialChar \ldots{}
}
\family default
 and 
\family typewriter
Environment
\family default
 means 
\family typewriter

\backslash
begin{
\emph on
LatexName
\emph default
}\SpecialChar \ldots{}

\backslash
end{
\emph on
LatexName
\emph default
}
\family default
.
 
\family typewriter
Item_Environment
\family default
 is the same as 
\family typewriter
Environment
\family default
, except that a 
\family typewriter

\backslash
item
\family default
 is generated for each paragraph of this environment.
 
\family typewriter
List_Environment
\family default
 is the same as 
\family typewriter
Item_Environment
\family default
, except that 
\family typewriter
LabelWidthString
\family default
 is passed as an argument to the environment.
 
\family typewriter
LabelWidthString
\family default
 can be defined in the 
\family sans
\bar under
L
\bar default
ayout\SpecialChar \menuseparator

\bar under
P
\bar default
aragraph
\family default
 dialog.
 
\family typewriter
\emph on
LatexType
\family default
\emph default
 is perhaps a bit misleading, since these rules apply to SGML classes, too.
 Visit the SGML class files for specific examples.
\end_layout

\begin_layout Description

\family typewriter
\series medium
InTitle
\series default
 [1, 0] 
\family default
If 1, marks the layout as being part of a title block (see also the
\family typewriter
 TitleLatexType
\family default
 and 
\family typewriter
TitleLatexName
\family default
 global entries)
\end_layout

\begin_layout Description

\family typewriter
\series medium
LatexName
\family default
\series default
 The name of the corresponding LaTeX stuff.
 Either the environment or command name.
\end_layout

\begin_layout Description

\family typewriter
\series medium
LatexParam
\family default
\series default
 The optional parameter for the corresponding 
\family typewriter
\series medium
LatexName
\family default
\series default
 stuff.
 This parameter cannot be changed from within LyX.
\end_layout

\begin_layout Description

\family typewriter
\series medium
OptionalArgs
\family default
\series default
 [
\family typewriter
int=0
\family default
] The number of optional arguments that can be used with this layout.
 This is useful for things like section headings, and only makes sense with
 LaTeX.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Margin
\family default
\series default
 [
\family typewriter
\emph on
Static
\emph default
, Manual, Dynamic, First_Dynamic, Right_Address_Box
\family default
] 
\newline
The kind of margin that the layout has on the left side.
 
\family typewriter
Static
\family default
 just means a fixed margin.
 
\family typewriter
Manual
\family default
 means that the left margin depends on the string entered in the 
\family sans
\bar under
E
\bar default
dit\SpecialChar \menuseparator

\bar under
P
\bar default
aragraph\InsetSpace ~
Settings
\family default
 dialog.
 This is used to typeset nice lists without tabulators.
 
\family typewriter
Dynamic
\family default
 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 other word processors are not able to do this.
 
\family typewriter
First_Dynamic
\family default
 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.
 
\family typewriter
Right_Address_Box
\family default
 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

\begin_layout Description

\family typewriter
\series medium
NextNoIndent
\family default
\series default
 [
\family typewriter
1, 
\emph on
0
\family default
\emph default
] Whether the following Paragraph is allowed to indent its very first row.
 
\family typewriter
1
\family default
 means that it is not allowed to do so, 
\family typewriter
0
\family default
 means it could do so if it wants to.
\end_layout

\begin_layout Description

\family typewriter
\series medium
ParIndent
\family default
\series default
 [
\family typewriter
string=""
\family default
] The indent of the very first line of a paragraph.
 The argument is passed as a string.
 For example 
\family typewriter
"MM"
\family default
 means that the paragraph is indented with the width of 
\family typewriter
"MM"
\family default
 in 
\family typewriter
the
\family default
 normal font.
 You can get a negative width by prefixing the string with 
\family typewriter
"-"
\family default
.
 This way was chosen so that the look is the same with each used screen
 font.
 The 
\family typewriter
Parindent
\family default
 will be fixed for a certain layout.
 The exception is Standard layout, since the indentation of a Standard layout
 paragraph can be prohibited with 
\family typewriter
NextNoIndent
\family default
.
 Also, Standard layout paragraphs inside environments use the 
\family typewriter
Parindent
\family default
 of the environment, not their native one.
 For example, Standard paragraphs inside an enumeration are not indented.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Parskip
\family default
\series default
 [
\family typewriter
float=0
\family default
] LyX allows 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 typeset a document.
 When 
\begin_inset Quotes eld
\end_inset

indent
\begin_inset Quotes erd
\end_inset

 is chosen, this value is completely ignored.
 When 
\begin_inset Quotes eld
\end_inset

skip
\begin_inset Quotes erd
\end_inset

 is chosen, the parindent of a LaTeXtype 
\begin_inset Quotes eld
\end_inset

Paragraph
\begin_inset Quotes erd
\end_inset

 layout is ignored and all paragraphs are additionally separated by this
 parskip argument.
 The vertical space is calculated with 
\family typewriter
value*DefaultHeight()
\family default
 where 
\family typewriter
DefaultHeight()
\family default
 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

\family typewriter
\series medium
TopSep
\family default
\series default
 [
\family typewriter
float=0
\family default
] The vertical space with which the very first of a chain of paragraphs
 with this layout is separated from the previous paragraph.
 If the previous paragraph has another layout, the separations are not simply
 added, but the maximum is taken.
\end_layout

\begin_layout Description

\family typewriter
\series medium
BottomSep
\family default
\series default
 [
\family typewriter
float=0
\family default
] The same as 
\family typewriter
TopSep
\family default
 for the very last paragraph.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Parsep
\family default
\series default
 [
\family typewriter
float=0
\family default
] The vertical space between two paragraphs of this layout.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Itemsep
\family default
\series default
 [
\family typewriter
float=0
\family default
] This is an extra space between the paragraphs of an environment layout.
 If you put other layouts into an environment, each is separated with the
 environment's 
\family typewriter
Parsep
\family default
.
 But the whole items of the environment are additionally separated with
 this 
\family typewriter
Itemsep
\family default
.
 
\end_layout

\begin_layout Description

\family typewriter
\series medium
LeftMargin
\family default
\series default
 [
\family typewriter
string=""
\family default
] If you put layouts into environments, the leftmargins are not simply added,
 but added with a factor 
\begin_inset Formula $\frac{4}{depth+4}$
\end_inset

.
 Note that this parameter is also used when the border is defined as 
\family typewriter
Manual
\family default
 or 
\family typewriter
Dynamic
\family default
.
 Then it is added to the manual or dynamic border.
 This string has the same meaning as for 
\family typewriter
ParIndent
\family default
.
\end_layout

\begin_layout Description

\family typewriter
\series medium
RightMargin
\family default
\series default
 [
\family typewriter
string=""
\family default
] Similar to 
\family typewriter
LeftMargin
\family default
.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Labeltype
\family default
\series default
 [
\family typewriter
\emph on
No_Label
\emph default
, Manual, Static, Top_Environment, 
\newline
Centered_Top_Environment, Sensitive,
 Counter
\family default
] 
\newline

\family typewriter
Manual
\family default
 means the label is the very first word (up to the first real blank).
 
\family typewriter
Static
\family default
 means it is defined in the layout (see 
\family typewriter
LabelString
\family default
).
 
\family typewriter
Top_Environment
\family default
 and 
\family typewriter
Centered_Top_Environment
\family default
 are special cases of 
\family typewriter
Static
\family default
.
 The label will be printed above the paragraph, but only at the top of an
 environment or the top of a chain of paragraphs with this layout.
 Usage is for example the 
\family sans
Abstract
\family default
 layout or the 
\family sans
Bibliography
\family default
 layout.
 This is also the case for 
\family typewriter
Manual
\family default
 labels with latex type 
\family typewriter
Environment
\family default
, in order to make layouts for theorems work correctly.
 
\family typewriter
Sensitive
\family default
 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

.
 
\family typewriter
Sensitive
\family default
 means the (hardcoded) label string depends on the kind of float.
 The 
\family typewriter
Counter
\family default
 label type defines automatically numbered labels.
\end_layout

\begin_layout Description

\family typewriter
\series medium
LabelCounter
\family default
\series default
 [
\family typewriter
Chapter, Section, Subsection, Subsubsection, 
\newline
Paragraph, Subparagraph, EnumI,
 EnumII, EnumIII, EnumIV
\family default
]
\newline
The name of the counter for automatic numbering.
 This must be given if 
\family typewriter
\series medium
Labeltype
\family default
\series default
 is 
\family typewriter
Counter
\family default
.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Labelsep
\family default
\series default
 [
\family typewriter
string=""
\family default
] The 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

\family typewriter
\series medium
LabelBottomsep
\family default
\series default
 [float=0] The vertical space between the label and the text body.
 Only used for labels that are above the text body (
\family typewriter
Top_Environment
\family default
, 
\family typewriter
Centered_Top_Environment
\family default
).
\end_layout

\begin_layout Description

\family typewriter
\series medium
LabelString
\family default
\series default
 [
\family typewriter
string=""
\family default
] The string used for a label with a 
\family typewriter
Static
\family default
 labeltype.
 When the border is 
\family typewriter
Manual
\family default
 this string is also used as a suggestion for the 
\family typewriter
LabelWidthString
\family default
 that can be set in the 
\family sans
\bar under
E
\bar default
dit\SpecialChar \menuseparator

\bar under
P
\bar default
aragraph\InsetSpace ~
Settings
\family default
 dialog.
 When 
\family typewriter
\series medium
LabelCounter
\family default
\series default
 is set, this string can be contain special formatting commands as explained
 in Section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:counter}

\end_inset

.
\end_layout

\begin_layout Description

\family typewriter
\series medium
LabelStringAppendix
\family default
\series default
 [
\family typewriter
string=""
\family default
] If non-empty, this is used inside the appendix instead of 
\family typewriter
LabelString
\family default
.
 
\end_layout

\begin_layout Description

\family typewriter
\series medium
TocLevel [int]
\family default
\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

\family typewriter
\series medium
EndLabeltype
\family default
\series default
 [
\family typewriter
\emph on
No_Label
\emph default
, Box, Filled_Box, Static
\family default
] The type of label that stands at the end of the paragraph (or sequence
 of paragraphs if 
\family typewriter
LatexType
\family default
 is 
\family typewriter
Environment
\family default
, 
\family typewriter
Item_Environment
\family default
 or 
\family typewriter
List_Environment
\family default
).
 
\family typewriter
No_Label
\family default
 means 
\begin_inset Quotes eld
\end_inset

nothing
\begin_inset Quotes erd
\end_inset

, 
\family typewriter
Box
\family default
 (resp.
\family typewriter
\InsetSpace ~
Filled_Box
\family default
) is a white (resp.\InsetSpace ~
black) square suitable for end of proof markers, 
\family typewriter
Static
\family default
 is an explicit text string.
\end_layout

\begin_layout Description

\family typewriter
\series medium
EndLabelString
\family default
\series default
 [
\family typewriter
string=""
\family default
] The string used for a label with a 
\family typewriter
Static
\family default
 
\family typewriter
EndLabelType
\family default
.
 
\end_layout

\begin_layout Description

\family typewriter
\series medium
Align
\family default
\series default
 [
\family typewriter
\emph on
block
\emph default
, left, right, center
\family default
] Paragraph alignment.
\end_layout

\begin_layout Description

\family typewriter
\series medium
AlignPossible
\family default
\series default
 [
\family typewriter
\emph on
block
\emph default
, left, right, center
\family default
] A comma separated 
\emph on
list
\emph default
 of possible aligns.
 Some 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

\family typewriter
\series medium
Fill_Top
\family default
\series default
 [
\family typewriter
\emph on
0
\emph default
,1
\family default
] With this parameter the 
\family sans
Fill
\family default
 value of the 
\begin_inset Quotes eld
\end_inset

Vertical space above
\begin_inset Quotes erd
\end_inset

 list of the 
\family sans
\bar under
E
\bar default
dit\SpecialChar \menuseparator

\bar under
P
\bar default
aragraph\InsetSpace ~
Settings
\family default
 dialog can be set when initializing a paragraph with this layout
\begin_inset Foot
status collapsed

\begin_layout Standard

\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

\family typewriter
\series medium
Fill_Bottom
\family default
\series default
 [
\family typewriter
\emph on
0
\emph default
,1
\family default
] Similar to 
\family typewriter
Fill_Top
\family default
.
\end_layout

\begin_layout Description

\family typewriter
\series medium
NeedProtect
\family default
\series default
 [
\family typewriter
\emph on
0
\emph default
,1
\family default
] Whether fragile commands in this layout should be 
\family typewriter

\backslash
protect
\family default
'ed.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Newline
\family default
\series default
 [
\family typewriter
0, 
\emph on
1
\family default
\emph default
] Whether newlines are translated into LaTeX newlines (
\family typewriter

\backslash

\backslash

\family default
) or not.
 The translation can be switched off to allow more comfortable LaTeX editing
 inside LyX.
\end_layout

\begin_layout Description

\family typewriter
\series medium
PassThru
\family default
\series default
 [
\family typewriter
\emph on
0
\emph default
, 1
\family default
] Whether the contents of this paragraph should be output in raw form, meaning
 without special translations that LaTeX would require.
 This somehow replaces the older 
\family typewriter
Latex
\family default
 font property.
\end_layout

\begin_layout Description

\family typewriter
\series medium
FreeSpacing
\family default
\series default
 [
\family typewriter
\emph on
0
\emph default
, 1
\family default
] 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, 
\family typewriter
FreeSpacing
\family default
 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

\family typewriter
\series medium
KeepEmpty
\family default
\series default
 [
\family typewriter
\emph on
0
\emph default
, 1
\family default
] Usually LyX does not allow you to leave a paragraph empty, since it would
 lead to empty 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 layout can be used
 as some kind of break, which does not contain actual text.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Spacing
\family default
\series default
 [
\family typewriter
\emph on
single
\emph default
, onehalf, double, other 
\family default
\emph on
value
\emph default
] This defines what the default spacing should be in the layout.
 The arguments 
\family typewriter
single
\family default
, 
\family typewriter
onehalf
\family default
 and 
\family typewriter
double
\family default
 correspond respectively to a multiplier value of 1, 1.25 and 1.667.
 If you specify the argument 
\family typewriter
other
\family default
, then you should also provide a numerical argument which will be the actual
 multiplier value.
 Note that, contrary to other parameters, 
\family typewriter
Spacing
\family default
 implies the generation of specific LaTeX code, using the package 
\family typewriter
setspace.sty
\family roman
.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Font 
\family default
\series default
The font used for both the text body 
\emph on
and
\emph default
 the label.
 See section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:fonts}

\end_inset

.
 Note that defining this font automatically defines the 
\family typewriter
LabelFont
\family default
 to the same value.
\end_layout

\begin_layout Description

\family typewriter
\series medium
TextFont
\family default
\series default
 The font used for the text body .
 See section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:fonts}

\end_inset

.
\end_layout

\begin_layout Description

\family typewriter
\series medium
LabelFont
\family default
\series default
 The font used for the label.
 See section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:fonts}

\end_inset

.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Preamble\SpecialChar \ldots{}
EndPreamble
\family default
\series default
 A set of macro definitions that will be output at the beginning of the
 LaTeX files when the layout is used.
 Use this to define the macros needed by this particular layout.
\end_layout

\begin_layout Description

\family typewriter
\series medium
DependsOn
\family default
\series default
 the name of a style which preamble should be output 
\emph on
before
\emph default
 the one mentionned above.
 This allows to ensure some ordering of the preamble snippets when macros
 definitions depend on one another
\begin_inset Foot
status collapsed

\begin_layout Standard
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 LyX may change without
 warning in later versions.
\end_layout

\end_inset

.
\end_layout

\begin_layout Standard
\begin_inset ERT
status inlined

\begin_layout Standard


\backslash
end{sloppypar}
\end_layout

\end_inset


\end_layout

\begin_layout Subsection
Floats
\end_layout

\begin_layout Standard
\begin_inset LatexCommand \label{sec:floats}

\end_inset

Since version 1.3.0 of LyX, it is necessary to define the floats (
\family sans
figure
\family default
, 
\family sans
table
\family default
, \SpecialChar \ldots{}
) in the text class itself.
 If you are looking here to learn how to upgrade an existing text class,
 it will probably turn out that all you have to do is to add
\end_layout

\begin_layout LyX-Code
Input stdfloats.inc
\end_layout

\begin_layout Standard
at a reasonable location of the text class.
\begin_inset Foot
status collapsed

\begin_layout Standard
Don't forget to also have a look at counters in next section.
\end_layout

\end_inset

 If you want to implement a text class that proposes some other float types
 (like the AGU class bundled with LyX), the information below will hopefully
 help you:
\end_layout

\begin_layout Description

\family typewriter
\series medium
Type
\family default
\series default
 [
\family typewriter
string
\family default
=
\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 
\family typewriter

\backslash
newfloat
\family default
, commands such as 
\family typewriter

\backslash
begin{program}
\family default
 or 
\family typewriter

\backslash
end{algorithm*}
\family default
 will be available.
\end_layout

\begin_layout Description

\family typewriter
\series medium
GuiName
\family default
\series default
 [
\family typewriter
string
\family default
=
\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.
\end_layout

\begin_layout Description

\family typewriter
\series medium
LaTeXBuiltin
\family default
\series default
 [
\family typewriter
\emph on
0
\family default
\emph default
, 
\family typewriter
1
\family default
] Set to 
\family typewriter
1
\family default
 if the float is already defined by the documentclass.
 If this is set to 
\family typewriter
0
\family default
, the float will be defined using the LaTeX package 
\family typewriter
float
\family default
.
\end_layout

\begin_layout Description

\family typewriter
\series medium
NumberWithin
\family default
\series default
 [
\family typewriter
string
\family default
=
\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 within is equal to 
\family typewriter
chapter
\family default
, the floats will be numbered within chapters.
 
\end_layout

\begin_layout Description

\family typewriter
\series medium
Style
\family default
\series default
 [
\family typewriter
string
\family default
=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] The style used when defining the float using 
\family typewriter

\backslash
newfloat
\family default
.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Placement
\family default
\series default
 [
\family typewriter
string
\family default
=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] The default placement for the given class of floats.
 They are like in standard LaTeX: 
\family typewriter
t
\family default
, 
\family typewriter
b
\family default
, 
\family typewriter
p
\family default
 and 
\family typewriter
h
\family default
 for top, bottom, page, and here, respectively.
\begin_inset Foot
status collapsed

\begin_layout Standard
Note that the order of these letters in the string is irrelevant, like in
 LaTeX.
\end_layout

\end_inset

 On top of that there is a new type, 
\family typewriter
H
\family default
, 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 
\family typewriter
H
\family default
 specifier is special and, because of implementation details cannot be used
 in non-builtin float types.
 If you do not understand what this means, just use 
\family typewriter
"tbp"
\family default
.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Extension
\family default
\series default
 [
\family typewriter
string
\family default
=
\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).
 LaTeX writes the captions to this file.
\end_layout

\begin_layout Description

\family typewriter
\series medium
ListName
\family default
\series default
 [
\family typewriter
string
\family default
=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] The heading used for the list of floats.
\end_layout

\begin_layout Subsection
Character styles
\end_layout

\begin_layout Standard
\begin_inset LatexCommand \label{sec:charstyle}

\end_inset

You can define character styles since version 1.4.0 of LyX.
 The 
\family typewriter
CharStyle
\family default
 section can contain the following entries:
\end_layout

\begin_layout Description

\family typewriter
\series medium
Font 
\family default
\series default
The font used for both the text body 
\emph on
and
\emph default
 the label.
 See section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:fonts}

\end_inset

.
 Note that defining this font automatically defines the 
\family typewriter
LabelFont
\family default
 to the same value.
\end_layout

\begin_layout Description

\family typewriter
\series medium
LabelFont
\family default
\series default
 The font used for the label.
 See section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:fonts}

\end_inset

.
\end_layout

\begin_layout Description

\family typewriter
\series medium
LatexName
\family default
\series default
 The name of the corresponding LaTeX stuff.
 Either the environment or command name.
\end_layout

\begin_layout Description

\family typewriter
\series medium
LatexParam
\family default
\series default
 The optional parameter for the corresponding 
\family typewriter
\series medium
LatexName
\family default
\series default
 stuff.
 This parameter cannot be changed from within LyX.
\end_layout

\begin_layout Description

\family typewriter
\series medium
LatexType
\family default
\series default
 See section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:style}

\end_inset

.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Preamble\SpecialChar \ldots{}
EndPreamble
\family default
\series default
 See section\InsetSpace ~

\begin_inset LatexCommand \ref{sec:style}

\end_inset


\end_layout

\begin_layout Subsection
Counters
\end_layout

\begin_layout Standard
\begin_inset LatexCommand \label{sec:counter}

\end_inset

Since version 1.3.0 of LyX, it is necessary to define the counters (
\family sans
chapter
\family default
, 
\family sans
figure
\family default
, \SpecialChar \ldots{}
) in the text class itself.
 If you are looking here to learn how to upgrade an existing text class,
 it will probably turn out that all you have to do is to add
\end_layout

\begin_layout LyX-Code
Input stdcounters.inc
\end_layout

\begin_layout Standard
The definition of counters is presently a bit primitive in LyX, since many
 things are still hardcoded.
 The following two parameters can be used:
\end_layout

\begin_layout Description

\family typewriter
\series medium
Name
\family default
\series default
 [
\family typewriter
string
\family default
=
\begin_inset Quotes erd
\end_inset


\begin_inset Quotes erd
\end_inset

] The name of the counter
\end_layout

\begin_layout Description

\family typewriter
\series medium
Within
\family default
\series default
 [
\family typewriter
string
\family default
=
\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 everytime the other one is increased (is that unclear enough?).
\end_layout

\begin_layout Standard
When a counter has been associated to a style, it is possible to use some
 special constructs in 
\family typewriter
LabelSt
\family default
r
\family typewriter
ing 
\family default
and 
\family typewriter
LabelStringAppendix
\family default
:
\end_layout

\begin_layout Itemize

\family typewriter
@
\emph on
style-name
\emph default
@
\family default
 will be replaced the expanded 
\family typewriter
LabelString
\family default
 of style 
\family typewriter
\emph on
style-name
\family default
\emph default
.
 This is used for example to define the label of a subsection in terms of
 the label of a section.
\end_layout

\begin_layout Itemize
counter values can be expressed using LaTeX-like macros 
\family typewriter

\backslash

\emph on
numbertype
\emph default
{
\emph on
counter
\emph default
}
\family default
, where 
\family typewriter
\emph on
numbertype
\family default
\emph default
 can be:
\end_layout

\begin_deeper
\begin_layout Description

\family typewriter
\series medium
arabic
\family default
\series default
 to translate 
\family typewriter
counter 
\family default
to arabic numerals, like 1, 2, 3\SpecialChar \ldots{}

\begin_inset Foot
status collapsed

\begin_layout Standard

\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
Actually, the situation is a bit more complicated than that: any 
\family typewriter
\series default
\shape default
\size default
\emph on
\bar default
\noun default
numbertype
\family roman
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
 other than those descibed below will produce arabic numerals.
 It would not be surprising to see this change in the future.
\end_layout

\end_inset


\end_layout

\begin_layout Description

\family typewriter
\series medium
alph
\family default
\series default
 for lower-case letters: a, b, c, \SpecialChar \ldots{}

\end_layout

\begin_layout Description

\family typewriter
\series medium
Alph
\family default
\series default
 for upper-case letters: A, B, C, \SpecialChar \ldots{}

\end_layout

\begin_layout Description

\family typewriter
\series medium
roman
\family default
\series default
 for lower-case roman numerals: i, ii, iii, \SpecialChar \ldots{}

\end_layout

\begin_layout Description

\family typewriter
\series medium
Roman
\family default
\series default
 for upper-case roman numerals: I, II, III\SpecialChar \ldots{}

\end_layout

\begin_layout Description

\family typewriter
\series medium
hebrew
\family default
\series default
 for hebrew numerals.
\end_layout

\end_deeper
\begin_layout Subsection
Font description
\end_layout

\begin_layout Standard
\begin_inset LatexCommand \label{sec:fonts}

\end_inset

A font description looks like that:
\end_layout

\begin_layout LyX-Code
Font
\family roman
\emph on
 or 
\family default
\emph default
LabelFont
\end_layout

\begin_layout LyX-Code
 ...
\end_layout

\begin_layout LyX-Code
EndFont
\end_layout

\begin_layout Standard
and the following commands are available:
\end_layout

\begin_layout Description

\family typewriter
\series medium
Family
\family default
\series default
 [
\family typewriter
\emph on
Roman
\emph default
, Sans, Typewriter
\family default
] 
\end_layout

\begin_layout Description

\family typewriter
\series medium
Series
\family default
\series default
 [
\family typewriter
\emph on
Medium
\emph default
, Bold
\family default
] 
\end_layout

\begin_layout Description

\family typewriter
\series medium
Shape
\family default
\series default
 [
\family typewriter
\emph on
Up
\emph default
, Italic, SmallCaps, Slanted
\family default
] 
\end_layout

\begin_layout Description

\family typewriter
\series medium
Size
\family default
\series default
 [
\family typewriter
tiny, small, 
\emph on
normal
\emph default
, large, larger, largest, huge, giant
\family default
]
\end_layout

\begin_layout Description

\family typewriter
\series medium
Color
\series default
 
\family default
[
\family typewriter
\emph on
none
\emph default
, black, white, red, green, blue, cyan, magenta, yellow
\family default
]
\end_layout

\begin_layout Subsection
Upgrading old layout files
\end_layout

\begin_layout Standard
The file format of layout files changes from time to time, so old layout
 files need to be converted.
 This process has been automated in LyX 1.4.0: If LyX reads an old format
 layout file it will call the conversion tool 
\family typewriter
$LyXDir/scripts/layout2layout.py
\family default
 and convert it to a temporary file in current format.
 The original file is left untouched, so that you can still use it with
 LyX 1.3.x.
 If you want to convert the layout file permanently, just call the converter
 by hand:
\end_layout

\begin_layout LyX-Code
python $LyXDir/scripts/layout2layout.py myclass.layout myclassnew.layout
\end_layout

\begin_layout Standard
Then copy 
\family typewriter
myclassnew.layout
\family default
 to 
\family typewriter
$UserDir/layouts/
\family default
.
\end_layout

\begin_layout Standard
The automatic conversion does only handle syntax changes.
 It cannot handle the case where the contents of included files was changed.
 For example, layout files based on 
\family typewriter
book.layout
\family default
 need to include 
\family typewriter
numreport.inc
\family default
 in addition to 
\family typewriter
stdclass.inc
\family default
.
 If you get error messages about undefined counters, try to convert your
 file with 
\family typewriter
layout2layout.py
\family default
 and then add one of 
\family typewriter
numarticle.inc
\family default
, 
\family typewriter
numreport.inc
\family default
 and 
\family typewriter
numrevtex.inc
\family default
.
\end_layout

\begin_layout Section
Creating Templates
\begin_inset LatexCommand \label{sec:templates}

\end_inset


\end_layout

\begin_layout Standard
Templates are created just like usual documents.
 The only difference is that usual documents contain all possible settings,
 including the fontscheme and the papersize.
 Usually a user doesn't want a template to overwrite his defaults in these
 cases.
 For that reason, the designer of a template should remove the corresponding
 commands like 
\family typewriter

\backslash
fontscheme
\family default
 or 
\family typewriter

\backslash
papersize
\family default
 from the template LyX file.
 This can be done with any simple text-editor, for example 
\family typewriter
vi
\family default
 or 
\family typewriter
xedit
\family default
.
 
\end_layout

\begin_layout Standard
Put the edited template files you create in 
\family typewriter
$UserDir/templates/
\family default
, copy the ones you use from the global template directory in 
\family typewriter
$LyXDir/templates/
\family default
 to the same place, and redefine the template path in the 
\family sans
\bar under
E
\bar default
dit\SpecialChar \menuseparator

\bar under
P
\bar default
references 
\family default
dialog (tabs 
\family sans
Input
\family default
, 
\family sans
Path
\family default
).
 
\end_layout

\begin_layout Standard
Note that there is a template which has a particular meaning: 
\family typewriter
defaults.lyx
\family default
.
 This template is loaded everytime you create a new document with 
\family sans
\bar under
F
\bar default
ile
\family default
\SpecialChar \menuseparator

\family sans
\bar under
N
\bar default
ew 
\family default
in order to provide useful defaults.
 To create this template from inside LyX, all you have to do is to open
 a document with the correct settings, and use the 
\family sans
Sa
\bar under
v
\bar default
e as Document Defaults
\family default
 button.
\end_layout

\begin_layout Chapter
Including External Material
\end_layout

\begin_layout Section
Background
\end_layout

\begin_layout Standard
\begin_inset Note Note
status collapsed

\begin_layout Standard
This section is completely outdated.
\end_layout

\end_inset

One often requested feature from LyX users is to be able to interface LyX
 with XFig, Dia, or other similar applications that specialize in producing
 a certain kind of diagram, figure, schematic or whatever material might
 be relevant to include in your document.
 Previously, it was only possible to include boring, static, fixed images
 in LyX documents with the graphics feature, but there are several limitations
 attached to this approach:
\end_layout

\begin_layout Itemize
If you want to change the figure, you have to invoke an external program
 by hand
\end_layout

\begin_layout Itemize
LyX does not notice that the referenced files change, so the on-screen display
 can fast become obsolete, and this is aggravated by the lack of a means
 of updating the display
\end_layout

\begin_layout Itemize
The graphics stuff does not provide any mechanisms for coping with different
 exported formats such as DocBook, HTML or raw Ascii
\end_layout

\begin_layout Standard
The external material facility attempts to solve all of these problems
\begin_inset Foot
status collapsed

\begin_layout Standard
Even if the graphics facility can't solve all problems, it is still valuable
 because it does provide in-line preview of the graphics, and supports advanced
 geometric transformations with a comfortable user interface.
\end_layout

\end_inset

.
 It does this by offering a general method to interface LyX to external
 applications.
 Instead of introducing a long list of different constructs tailored for
 each specific application, we chose to sacrifice the in-line displaying
 of the included material in order to provide a general construct to cover
 a wide range of applications.
 The result is the external material construct.
 External material presents itself in the document simply as a button, but
 don't let this fool you.
 When you click on it, a dialog will appear that allows you to chose exactly
 what material to include, and in the following sections you will learn
 that this is indeed a powerful mechanism that can solve all of the above
 problems, and more.
\end_layout

\begin_layout Section
How does it work?
\end_layout

\begin_layout Standard
The external material feature is based on the concept of a
\emph on
 template
\emph default
.
 A template is a specification of how LyX should interface with a certain
 kind of material.
 As bundled, LyX comes with predefined templates for XFig figures, Dia diagrams,
 various raster format images, gnuplot, and more.
 You can check the actual list by using the 
\family sans
Insert\SpecialChar \menuseparator
External
\family default
\InsetSpace ~

\family sans
Material 
\family default
command.
 Furthermore, it is possible to roll your own template to support a specific
 kind of material.
 Later we'll describe in more detail what is involved, and hopefully you
 will submit all the templates you create so we can include them in a later
 LyX version.
\end_layout

\begin_layout Standard
Another basic idea of the external material feature is to distinguish between
 the original file that serves as a base for final material and the produced
 file that is included in your exported or printed document.
 For example, consider the case of a figure produced with XFig.
 The XFig application itself works on an original file with the 
\family typewriter
.fig
\family default
 extension.
 Within XFig, you create and change your figure, and when you are done,
 you save the 
\family typewriter
fig
\family default
-file.
 When you want to include the figure in your document, you invoke 
\family typewriter
transfig
\family default
 in order to create a PostScript file that can readily be included in your
 LaTeX file.
 In this case, the 
\family typewriter
.fig
\family default
 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 an Ascii resulting file, it is not exactly
 an award-winning 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
 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.
\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 
\family typewriter
xfig
\family default
 on the original file with a single click from within the external material
 dialog in LyX, and also preview the produced PostScript file with 
\family typewriter
ghostview
\family default
 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 Standard
\begin_inset Note Note
status collapsed

\begin_layout Standard
This paragraph is outdated
\end_layout

\end_inset

So, all in all, LyX has information about a number of different programs
 to use behind the scenes in order to realize all of this machinery.
 This information, in fact, is exactly what is contained in the templates.
 To each template, there is associated a list of command lines that are
 used to invoke applications, convert the original file to the produced
 file, and more.
 This mechanism allows the advanced user to extend the capabilities of LyX
 without fiddling with the source code.
 It requires some footwork to define all the different commands and flags,
 but luckily, the LyX team did all the hard work and specified these for
 you.
\end_layout

\begin_layout Standard
But before the trees grow into the skies, we have to admit that we did take
 one tiny short-cut.
 Since you can produce many different kinds of files to go with each exported
 format, one could also expect that it would be possible to preview each
 product.
 The LyX team decided against this in order to keep the user interface simple.
 Instead of providing a button for each exported file format, we decided
 to introduce the concept of the primary file format and just have one button.
 When you press 
\family sans
View
\family default
\InsetSpace ~

\family sans
result
\family default
 in the external material dialog, you will get a view of the produced file
 in the primary file format.
 And the primary file format is specified by your document class.
 For most document classes, the primary file format is LaTeX, but for the
 DocBook document classes, the primary file format is DocBook.
 So, when you view the produced file, keep in mind that it will only be
 a preview of what the main result will be.
 If you want to see how other exported formats turn out, you have to export
 them and preview them by hand.
\end_layout

\begin_layout Section
The external material dialog
\end_layout

\begin_layout Standard
You insert external material from the 
\family sans
\bar under
I
\bar default
nsert
\family default
 menu.
 When you do this, a button is inserted into your document, and the external
 material dialog is shown.
 This dialog allows you to describe exactly what material should be included,
 and also how it should be included.
 Furthermore, it provides access to the external applications to either
 view, edit or produce the material that is used in the resulting file.
\end_layout

\begin_layout Standard
\begin_inset Note Note
status collapsed

\begin_layout Standard
This paragraph is outdated
\end_layout

\end_inset

At the top of this dialog, there is a drop-down list where you can chose
 which template should be used.
 Just below the template drop-down, there's a text area with a short blurb
 about the chosen template that should help you use it.
 Most often, it will provide a short description of the template, and a
 few hints on how to parameterize the use of it.
 Further down, you'll find a filename input field along with a 
\begin_inset Quotes eld
\end_inset

Browse
\begin_inset Quotes erd
\end_inset

 button that allows you to chose which file should be included with the
 standard file browser.
 Thus this field specifies the original file.
 Since the produced file is automatically generated when needed, there is
 no need to give access to it in the user interface.
\end_layout

\begin_layout Standard
\begin_inset Note Note
status collapsed

\begin_layout Standard
This paragraph is outdated
\end_layout

\end_inset

At the bottom of the dialog, you'll find a general input box called 
\family sans
Parameters
\family default
.
 This box is generally used to parameterize the specific template.
 The specific use should be covered in the help blurb associated with the
 template, but it typically allows you to define variations on how the produced
 file should be generated.
\end_layout

\begin_layout Standard
\begin_inset Note Note
status collapsed

\begin_layout Standard
This paragraph is outdated
\end_layout

\end_inset

At the right side of the dialog, you'll find three buttons: 
\family sans
Edit
\family default
\InsetSpace ~

\family sans
file
\family default
, 
\family sans
View
\family default
\InsetSpace ~

\family sans
result
\family default
, and 
\family sans
Update
\family default
\InsetSpace ~

\family sans
result
\family default
.
 These in turn allow you to edit your original file with the appropriate
 editing application, view the produced file as included in the primary
 format document, and finally force an update of the resulting material
 in the primary format.
 Normally, the 
\family sans
Update
\family default
\InsetSpace ~

\family sans
result
\family default
 button will be disabled, because most templates are configured to automatically
 update the produced file when needed.
 In those cases, there is no need to force the production of a new produced
 file.
 However, some templates are configured to not be automatically producing
 the residual product, because the cost of producing the produced file might
 be so large that it would be a pain to do it all the time.
 Those types are known as 
\emph on
manual
\emph default
 external material.
 In those cases, you can use the button to force the production of the produced
 file exactly when you need it, and thus control the amount of work that
 is done.
 In fact, it is 
\emph on
your
\emph default
 responsibility to do this to keep the produced files current at all times:
 before printing, before exporting, before viewing, etc.
 At some time in the future, it might be possible that LyX will help you
 with this task.Any changes in the template, filename or parameters are actually
 applied whenever you press 
\family sans
Edit file
\family default
, 
\family sans
View
\family default
\InsetSpace ~

\family sans
result
\family default
 or 
\family sans
Update
\family default
\InsetSpace ~

\family sans
result
\family default
 buttons.
\end_layout

\begin_layout Section
Examples
\end_layout

\begin_layout Standard
In this section, we should include some examples of use of the external
 material.
 Those examples could include:
\end_layout

\begin_layout Itemize
External raster images
\end_layout

\begin_layout Itemize
External XFig figures
\end_layout

\begin_layout Itemize
Chess diagrams
\end_layout

\begin_layout Itemize
Sound samples
\end_layout

\begin_layout Itemize
The use of makefiles
\end_layout

\begin_layout Itemize
Recursive external LyX templates
\end_layout

\begin_layout Section
The external template configuration file
\end_layout

\begin_layout Standard
It is relatively easy to add custom external template definitions to LyX.
 However, be aware this 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 which
 will follow later.
\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 
\family typewriter
lib/external_templates
\family default
 file.
 You can place your own version in 
\family typewriter
.lyx/external_templates
\family default
.
\end_layout

\begin_layout Standard
A typical template looks like this:
\end_layout

\begin_layout LyX-Code
Template XFig
\end_layout

\begin_layout LyX-Code
GuiName "XFig: $$AbsOrRelPathParent$$Basename"
\end_layout

\begin_layout LyX-Code
HelpText
\end_layout

\begin_layout LyX-Code
An XFig figure.
\end_layout

\begin_layout LyX-Code
HelpTextEnd
\end_layout

\begin_layout LyX-Code
InputFormat fig
\end_layout

\begin_layout LyX-Code
FileFilter "*.fig"
\end_layout

\begin_layout LyX-Code
AutomaticProduction true
\end_layout

\begin_layout LyX-Code
Transform Rotate
\end_layout

\begin_layout LyX-Code
Transform Resize
\end_layout

\begin_layout LyX-Code
Format LaTeX
\end_layout

\begin_layout LyX-Code
TransformCommand Rotate RotationLatexCommand
\end_layout

\begin_layout LyX-Code
TransformCommand Resize ResizeLatexCommand
\end_layout

\begin_layout LyX-Code
Product "$$RotateFront$$ResizeFront
\end_layout

\begin_layout LyX-Code
         
\backslash

\backslash
input{$$AbsOrRelPathMaster$$Basename.pstex_t}
\end_layout

\begin_layout LyX-Code
         $$ResizeBack$$RotateBack"
\end_layout

\begin_layout LyX-Code
UpdateFormat pstex
\end_layout

\begin_layout LyX-Code
UpdateResult "$$AbsPath$$Basename.pstex_t"
\end_layout

\begin_layout LyX-Code
Requirement "graphicx"
\end_layout

\begin_layout LyX-Code
ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
\end_layout

\begin_layout LyX-Code
ReferencedFile latex "$$AbsPath$$Basename.eps"
\end_layout

\begin_layout LyX-Code
ReferencedFile dvi "$$AbsPath$$Basename.eps"
\end_layout

\begin_layout LyX-Code
FormatEnd
\end_layout

\begin_layout LyX-Code
Format PDFLaTeX
\end_layout

\begin_layout LyX-Code
TransformCommand Rotate RotationLatexCommand
\end_layout

\begin_layout LyX-Code
TransformCommand Resize ResizeLatexCommand
\end_layout

\begin_layout LyX-Code
Product "$$RotateFront$$ResizeFront
\end_layout

\begin_layout LyX-Code
         
\backslash

\backslash
input{$$AbsOrRelPathMaster$$Basename.pdftex_t}
\end_layout

\begin_layout LyX-Code
         $$ResizeBack$$RotateBack"
\end_layout

\begin_layout LyX-Code
UpdateFormat pdftex
\end_layout

\begin_layout LyX-Code
UpdateResult "$$AbsPath$$Basename.pdftex_t"
\end_layout

\begin_layout LyX-Code
Requirement "graphicx"
\end_layout

\begin_layout LyX-Code
ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pdftex_t"
\end_layout

\begin_layout LyX-Code
ReferencedFile latex "$$AbsPath$$Basename.pdf"
\end_layout

\begin_layout LyX-Code
FormatEnd
\end_layout

\begin_layout LyX-Code
Format Ascii
\end_layout

\begin_layout LyX-Code
Product "$$Contents(
\backslash
"$$AbsPath$$Basename.asc
\backslash
")"
\end_layout

\begin_layout LyX-Code
UpdateFormat asciixfig
\end_layout

\begin_layout LyX-Code
UpdateResult "$$AbsPath$$Basename.asc"
\end_layout

\begin_layout LyX-Code
FormatEnd
\end_layout

\begin_layout LyX-Code
Format DocBook
\end_layout

\begin_layout LyX-Code
Product "<graphic fileref=
\backslash
"$$AbsOrRelPathMaster$$Basename.eps
\backslash
">
\end_layout

\begin_layout LyX-Code
         </graphic>"
\end_layout

\begin_layout LyX-Code
UpdateFormat eps
\end_layout

\begin_layout LyX-Code
UpdateResult "$$AbsPath$$Basename.eps"
\end_layout

\begin_layout LyX-Code
ReferencedFile docbook "$$AbsPath$$Basename.eps"
\end_layout

\begin_layout LyX-Code
ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
\end_layout

\begin_layout LyX-Code
FormatEnd
\end_layout

\begin_layout LyX-Code
Format LinuxDoc
\end_layout

\begin_layout LyX-Code
Product "[XFig: $$FName]"
\end_layout

\begin_layout LyX-Code
FormatEnd
\end_layout

\begin_layout LyX-Code
TemplateEnd
\end_layout

\begin_layout Standard
As you can see, the template is enclosed in 
\family typewriter
Template
\family default
 \SpecialChar \ldots{}
 
\family typewriter
TemplateEnd
\family default
.
 It contains a header specifying some general settings, and for each supported
 primary document file format a section 
\family typewriter
Format
\family default
 \SpecialChar \ldots{}
 
\family typewriter
FormatEnd
\family default
.
\end_layout

\begin_layout Subsection
The template header
\end_layout

\begin_layout Description

\family typewriter
\series medium
Template\InsetSpace ~
<id>
\family default
\series default
 A unique name for the template.
 It must not contain substitution macros (see below).
\end_layout

\begin_layout Description

\family typewriter
\series medium
GuiName\InsetSpace ~
<guiname>
\family default
\series default
 The text that is displayed on the button.
 This command must occur exactly once.
\end_layout

\begin_layout Description

\family typewriter
\series medium
HelpText\InsetSpace ~
<text>\InsetSpace ~
HelpTextEnd
\family default
\series default
 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

\family typewriter
\series medium
InputFormat\InsetSpace ~
<format>
\family default
\series default
 The file format of the original file.
 This must be the name of a format that is known to LyX (see the 
\family sans
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
P
\bar default
references:Conversion
\family default
 dialog).
 Use 
\family typewriter
"*"
\family default
 if the template can handle original files of more than one format.
 LyX will attempt to interrogate the file itself in order to deduce its
 format in this case.
 This command must occur exactly once.
\end_layout

\begin_layout Description

\family typewriter
\series medium
FileFilter\InsetSpace ~
<pattern>
\family default
\series default
 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.\InsetSpace ~
tgif has 
\family typewriter
.obj
\family default
 and 
\family typewriter
.tgo
\family default
), use something like 
\family typewriter
"*.{obj,tgo}"
\family default
.
 This command must occur exactly once.
\end_layout

\begin_layout Description

\family typewriter
\series medium
AutomaticProduction\InsetSpace ~
true|false
\family default
\series default
 Wether the file represented by the template must be generated by LyX.
 This command must occur exactly once.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Transform\InsetSpace ~
Rotate|Resize|Clip|Extra
\family default
\series default
 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 
\family typewriter
Transform
\family default
 command must have either a corresponding 
\family typewriter
TransformCommand
\family default
 or a 
\family typewriter
TransformOption
\family default
 command in the 
\family typewriter
Format
\family default
 section.
 Otherwise the transformation will not be supported by that format.
\end_layout

\begin_layout Subsection
The Format section
\end_layout

\begin_layout Description

\family typewriter
\series medium
Format\InsetSpace ~
LaTeX|PDFLaTeX|Ascii|DocBook|LinuxDoc
\family default
\series default
 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 
\family typewriter
Format
\family default
 section for all formats.
 Use a dummy text when no representation is available (see the LinuxDoc
 format in the example above).
 Then you can at least see a reference to the external material in the exported
 document.
\end_layout

\begin_layout Description

\family typewriter
\series medium
TransformCommand\InsetSpace ~
Rotate\InsetSpace ~
RotationLatexCommand
\family default
\series default
 This command specifies that the built in LaTeX command should be used for
 rotation.
 This command may occur once or not at all.
\end_layout

\begin_layout Description

\family typewriter
\series medium
TransformCommand\InsetSpace ~
Resize\InsetSpace ~
ResizeLatexCommand
\family default
\series default
 This command specifies that the built in LaTeX command should be used for
 resizing.
 This command may occur once or not at all.
\end_layout

\begin_layout Description

\family typewriter
\series medium
TransformOption\InsetSpace ~
Rotate\InsetSpace ~
RotationLatexOption
\family default
\series default
 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

\family typewriter
\series medium
TransformOption\InsetSpace ~
Resize\InsetSpace ~
ResizeLatexOption
\family default
\series default
 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

\family typewriter
\series medium
TransformOption\InsetSpace ~
Clip\InsetSpace ~
ClipLatexOption
\family default
\series default
 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

\family typewriter
\series medium
TransformOption\InsetSpace ~
Extra\InsetSpace ~
ExtraLatexOption
\family default
\series default
 This command specifies that an extra optional argument is used.
 This command may occur once or not at all.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Product\InsetSpace ~
<text>
\family default
\series default
 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

\family typewriter
\series medium
UpdateFormat\InsetSpace ~
<format>
\family default
\series default
 The file format of the converted file.
 This must be the name of a format that is known to LyX (see the 
\family sans
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
P
\bar default
references:Conversion
\family default
 dialog).
 This command must occur exactly once.
\end_layout

\begin_layout Description

\family typewriter
\series medium
UpdateResult\InsetSpace ~
<filename>
\family default
\series default
 The file name of the converted file.
 The file name must be absolute.
 This command must occur exactly once.
\end_layout

\begin_layout Description

\family typewriter
\series medium
ReferencedFile\InsetSpace ~
<format>\InsetSpace ~
<filename>
\family default
\series default
 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

\family typewriter
\series medium
Requirement\InsetSpace ~
<package>
\family default
\series default
 The name of a required LaTeX package.
 The package is included via 
\family typewriter

\backslash
usepackage{}
\family default
 in the LaTeX preamble.
 This command may occur zero or more times.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Preamble\InsetSpace ~
<name>
\family default
\series default
 This command specifies a preamble snippet that will be included in the
 LaTeX preamble.
 It has to be defined using
\family typewriter
 PreambleDef
\family default
 \SpecialChar \ldots{}
 
\family typewriter
PreambleDefEnd
\family default
.
 This command may occur zero or more times.
\end_layout

\begin_layout Description

\family typewriter
\series medium
Option\InsetSpace ~
<name>\InsetSpace ~
<value>
\family default
\series default
 This command defines an additional macro 
\family typewriter
$$<name>
\family default
 for substitution in 
\family typewriter
Product
\family default
.
 
\family typewriter
<value>
\family default
 itself may contain substitution macros.
 The advantage over using 
\family typewriter
<value>
\family default
 directly in 
\family typewriter
Product
\family default
 is that the substituted value of 
\family typewriter
$$<name>
\family default
 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 Subsection
Preamble definitions
\end_layout

\begin_layout Standard
The external template configuration file may contain additional preamble
 definitions enclosed by 
\family typewriter
PreambleDef
\family default
 \SpecialChar \ldots{}
 
\family typewriter
PreambleDefEnd
\family default
.
 They can be used by the templates in the 
\family typewriter
Format
\family default
 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
$$FName The filename of the file specified in the external material dialog.
 This is either an absolute name, or it is relative to the LyX document.
\end_layout

\begin_layout Description
$$Basename The filename without path and without the extension.
\end_layout

\begin_layout Description
$$Extension The file extension (including the dot).
\end_layout

\begin_layout Description
$$FPath The path part of 
\family typewriter
$$FName
\family default
 (absolute name or relative to the LyX document).
\end_layout

\begin_layout Description
$$AbsPath The absolute file path.
\end_layout

\begin_layout Description
$$RelPathMaster The file path, relative to the master LyX document.
\end_layout

\begin_layout Description
$$RelPathParent The file path, relative to the LyX document.
\end_layout

\begin_layout Description
$$AbsOrRelPathMaster The file path, absolute or relative to the master LyX
 document.
\end_layout

\begin_layout Description
$$AbsOrRelPathParent The file path, absolute or relative to the LyX document.
\end_layout

\begin_layout Description
$$Tempname 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 Description
$$Contents(
\begin_inset Quotes eld
\end_inset

filename.ext
\begin_inset Quotes erd
\end_inset

) This macro will expand to the contents of the file with the name 
\family typewriter
filename.ext
\family default
.
\end_layout

\begin_layout Description
$$Sysdir This macro will expand to the absolute path of the system directory.
 This is typically used to point to the various helper scripts that are
 bundled with LyX.
\end_layout

\begin_layout Standard
All path macros contain a trailing directory separator, so you can construct
 e.g.
 the absolute filename with 
\family typewriter
$$AbsPath$$Basename$$Extension
\family default
.
\end_layout

\begin_layout Standard
The macros above are substituted in all commands unless otherwise noted.
 The command 
\family typewriter
Product
\family default
 supports additionally the following substitutions if they are enabled by
 the 
\family typewriter
Transform
\family default
 and 
\family typewriter
TransformCommand
\family default
 commands:
\end_layout

\begin_layout Description
$$ResizeFront The front part of the resize command.
\end_layout

\begin_layout Description
$$ResizeBack The back part of the resize command.
\end_layout

\begin_layout Description
$$RotateFront The front part of the rotation command.
\end_layout

\begin_layout Description
$$RotateBack The back part of the rotation command.
\end_layout

\begin_layout Standard
The value string of the 
\family typewriter
Option
\family default
 command supports additionally the following substitutions if they are enabled
 by the 
\family typewriter
Transform
\family default
 and 
\family typewriter
TransformOption
\family default
 commands:
\end_layout

\begin_layout Description
$$Clip The clip option.
\end_layout

\begin_layout Description
$$Extra The extra option.
\end_layout

\begin_layout Description
$$Resize The resize option.
\end_layout

\begin_layout Description
$$Rotate 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 Standard
First, 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 Standard
Second, LaTeX treats relative file names differently than LyX and other
 programs in nested included files.
 For LyX, a relative file name is always relative to the document that contains
 the file name.
 For LaTeX, it is always relative to the master document.
 These two definitions are identical if you have only one document, but
 differ if you have a master document that includes part documents.
 That means that relative filenames must be transformed when presented to
 LaTeX.
 Fortunately LyX does this automatically for you if you choose the right
 macros.
\end_layout

\begin_layout Standard
So which path macro should be used in new template definitions? The rule
 is not difficult:
\end_layout

\begin_layout Itemize
Use 
\family typewriter
$$AbsPath
\family default
 if an absolute path is required.
\end_layout

\begin_layout Itemize
Use 
\family typewriter
$$AbsOrRelPathMaster
\family default
 if the substituted string is some kind of LaTeX input.
\end_layout

\begin_layout Itemize
Else use 
\family typewriter
$$AbsOrRelPathParent
\family default
 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.g.\InsetSpace ~
relative names
 are needed, but normally it will work just fine.
 One example for such a case is the command 
\family typewriter
ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
\family default
 in the XFig template above: We can't use the absolute name because the
 copier for 
\family typewriter
.pstex_t
\family default
 files needs the relative name in order to rewrite the file content.
\end_layout

\begin_layout Section
Security discussion
\end_layout

\begin_layout Standard
\begin_inset Note Note
status collapsed

\begin_layout Standard
This section is outdated
\end_layout

\end_inset

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 
\family typewriter
execvp
\family default
-system call rather than the 
\family typewriter
system
\family default
 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 
\family typewriter
lib/scripts
\family default
 directory of the LyX installation, you can find a safe wrapper script 
\family typewriter
general_command_wrapper.py
\family default
 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 
\family typewriter
fork
\family default
 and friends, take a look at the 
\family typewriter
pic2ascii.py
\family default
 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 
\family typewriter
execvp
\family default
 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

\begin_layout Chapter
The LyX Server
\end_layout

\begin_layout Section
Introduction
\end_layout

\begin_layout Standard
The LyX server is a method implemented in LyX that will enable other programs
 to talk to LyX, invoke LyX commands, and retrieve information about the
 LyX internal state.
 This is only intended for advanced users, but they should find it useful.
\end_layout

\begin_layout Section
Starting the LyX Server
\end_layout

\begin_layout Standard
The LyX server works through the use of a pair of named pipes.
 These are usually located in your home directory and have the names 
\begin_inset Quotes eld
\end_inset


\family typewriter
.lyxpipe.in
\family default

\begin_inset Quotes erd
\end_inset

 and 
\begin_inset Quotes eld
\end_inset


\family typewriter
.lyxpipe.out
\family default

\begin_inset Quotes erd
\end_inset

.
 External programs write into 
\family typewriter
.lyxpipe.in
\family default
 and read back data from 
\family typewriter
.lyxpipe.out
\family default
.
 The stem of the pipe names can be defined in the 
\family sans
\bar under
T
\bar default
ools\SpecialChar \menuseparator

\bar under
P
\bar default
references
\family default
 dialog, for example 
\family typewriter
"/home/myhome/.lyxpipe"
\family default
.
\end_layout

\begin_layout Standard
LyX will add the '
\family typewriter
.in
\family default
' and '
\family typewriter
.out
\family default
' to create the pipes.
 The above setting also has the effect of activating the LyX server.
 If one of the pipes already exists, LyX will assume that another LyX process
 is already running and will not start the server.
 To have several LyX processes with servers at the same time, you have to
 change the configuration between the start of the programs.
\end_layout

\begin_layout Standard
If you are developing a client program, you might find it useful to enable
 debugging information from the LyX server.
 Do this by starting LyX as 
\family typewriter
lyx -dbg lyxserver.
\end_layout

\begin_layout Standard
Warning: if LyX crashes, it may not manage to remove the pipes; in this
 case you must remove them manually.
 If LyX starts and the pipes exist already, it will not start any server.
\end_layout

\begin_layout Standard
Other than this, there are a few points to consider:
\end_layout

\begin_layout Itemize
Both server and clients must run on UNIX or OS/2 machines.
 Communications between LyX on UNIX and clients on OS/2 or vice versa is
 not possible right now.
\end_layout

\begin_layout Itemize
On OS/2, only one client can connect to LyXServer at a time.
\end_layout

\begin_layout Itemize
On OS/2, clients must open inpipe with 
\family typewriter
O_WRONLY
\family default
 mode.
\end_layout

\begin_layout Standard
You can find a complete example client written in C in the source distribution
 as 
\family typewriter
development/server_monitor.c
\family default
.
\end_layout

\begin_layout Section
Normal communication
\end_layout

\begin_layout Standard
To issue a LyX call, the client writes a line of ASCII text into the input
 pipe.
 This line has the following format:
\end_layout

\begin_layout Quote
LYXCMD:
\emph on
clientname
\emph default
:
\emph on
function
\emph default
:
\emph on
argument
\end_layout

\begin_layout Standard
Here 
\emph on
clientname
\emph default
 is a name that the client can choose arbitrarily.
 Its only use is that LyX will echo it if it sends an answer - so a client
 can dispatch results from different requesters.
\end_layout

\begin_layout Standard

\emph on
function
\emph default
 is the function you want LyX to perform.
 It is the same as the commands you'd use in the minibuffer.
\end_layout

\begin_layout Standard

\emph on
argument
\emph default
 is an optional argument which is meaningful only to some functions (for
 instance 
\begin_inset Quotes eld
\end_inset

self-insert
\begin_inset Quotes erd
\end_inset

 which will insert the argument as text at the cursor position.)
\end_layout

\begin_layout Standard
The answer from LyX will arrive in the output pipe and be of the form
\end_layout

\begin_layout Quote
INFO:
\emph on
clientname
\emph default
:
\emph on
function
\emph default
:
\emph on
data
\end_layout

\begin_layout Standard
where 
\emph on
clientname
\emph default
 and 
\emph on
function
\emph default
 are just echoed from the command request, while 
\emph on
data
\emph default
 is more or less useful information filled according to how the command
 execution worked out.
 Some commands will return information about the internal state of LyX,
 such as 
\begin_inset Quotes eld
\end_inset

font-state
\begin_inset Quotes erd
\end_inset

, while other will return an empty data-response.
 This means that the command execution went fine.
\end_layout

\begin_layout Standard
In case of errors, the response from LyX will have this form
\end_layout

\begin_layout Quote
ERROR:
\emph on
clientname
\emph default
:
\emph on
function
\emph default
:
\emph on
error message
\end_layout

\begin_layout Standard
where the 
\emph on
error message
\emph default
 should contain an explanation of why the command failed.
\end_layout

\begin_layout Standard
Examples:
\end_layout

\begin_layout LyX-Code
echo "LYXCMD:test:beginning-of-buffer:" >~/.lyxpipe.in
\end_layout

\begin_layout LyX-Code
echo "LYXCMD:test:get-xy:" >~/.lyxpipe.in
\newline
read a <~/.lyxpipe.out
\newline
echo $a
\end_layout

\begin_layout Section
Notification
\end_layout

\begin_layout Standard
LyX can notify clients of events going on asynchronously.
 Currently it will only do this if the user binds a key sequence with the
 function 
\begin_inset Quotes eld
\end_inset

notify
\begin_inset Quotes erd
\end_inset

.
 The format of the string LyX sends is as follows:
\end_layout

\begin_layout Quote

\family typewriter
NOTIFY:
\family default
\emph on
key-sequence
\end_layout

\begin_layout Standard
where 
\emph on
key-sequence
\emph default
 is the printed representation of the key sequence that was actually typed
 by the user.
\end_layout

\begin_layout Standard
This mechanism can be used to extend LyX's command set and implement macros:
 bind some key sequence to 
\begin_inset Quotes eld
\end_inset

notify
\begin_inset Quotes erd
\end_inset

, start a client that listens on the out pipe, dispatches the command according
 to the sequence and starts a function that may use LyX calls and LyX requests
 to issue a command or a series of commands to LyX.
\end_layout

\begin_layout Section
The simple LyX Server Protocol
\end_layout

\begin_layout Standard
LyX implements a simple protocol that can be used for session management.
 All messages are of the form
\end_layout

\begin_layout Quote
LYXSRV:
\emph on
clientname
\emph default
:
\emph on
protocol message
\end_layout

\begin_layout Standard
where 
\emph on
protocol message
\emph default
 can be 
\begin_inset Quotes eld
\end_inset

hello
\begin_inset Quotes erd
\end_inset

 or 
\begin_inset Quotes eld
\end_inset

bye
\begin_inset Quotes erd
\end_inset

.
 If 
\begin_inset Quotes eld
\end_inset

hello
\begin_inset Quotes erd
\end_inset

 is received from a client, LyX will report back to inform the client that
 it's listening to it's messages, while 
\begin_inset Quotes eld
\end_inset

bye
\begin_inset Quotes erd
\end_inset

 sent from LyX will inform clients that LyX is closing.
\end_layout

\begin_layout Chapter
\start_of_appendix
Bindings
\end_layout

\begin_layout Standard
This appendix is a huge cross-reference to all the English language keybindings.
 Originally, we simply wanted to list all of the key bindings followed by
 the function it's bound to.
 That way, a user can look up a key to find out what it does.
 We then decided, what the hey, why not include the default toolbar and
 menu bindings, too.
 Please note this section is likely to be very out of date.
\end_layout

\begin_layout Standard
The form is really self-explanatory, but here are a few tips: all entries
 are arranged roughly alphabetically for a given modifier (
\family sans
C-a
\family default
, 
\family sans
C-b
\family default
, etc.).
 For the general keyboard layout, simpler prefixes precede the more complex
 (
\family sans
C-s
\family default
 before 
\family sans
C-S-c
\family default
).
 All entries were gleaned from the default user interface and binding files
 located in the directories 
\family typewriter
\SpecialChar \ldots{}
/share/lyx/ui
\family default
 and 
\family typewriter
\SpecialChar \ldots{}
/share/lyx/bind
\family default
; they should be treated as the final word on the bindings.
\end_layout

\begin_layout Standard
As a final note, be aware that some window managers (such as FVWM) take
 control of some of the function keys or motion keys.
 
\family sans
C-right
\family default
 is listed here as generating 
\family typewriter
word-forward
\family default
, but FVWM grabs it and uses it to change virtual desktops instead.
 Very annoying unless you instruct your window manager to stop intercepting
 such sequences.
\end_layout

\begin_layout Section
Toolbar
\end_layout

\begin_layout LyX-Code
Toolbar
\end_layout

\begin_layout LyX-Code
    Layouts
\end_layout

\begin_layout LyX-Code
    Icon "buffer-open"
\end_layout

\begin_layout LyX-Code
    Icon "buffer-write"
\end_layout

\begin_layout LyX-Code
    Icon "buffer-print"
\end_layout

\begin_layout LyX-Code
    Separator
\end_layout

\begin_layout LyX-Code
    Icon "cut"
\end_layout

\begin_layout LyX-Code
    Icon "copy"
\end_layout

\begin_layout LyX-Code
    Icon "paste"
\end_layout

\begin_layout LyX-Code
    Separator
\end_layout

\begin_layout LyX-Code
    Icon "font-emph"
\end_layout

\begin_layout LyX-Code
    Icon "font-noun"
\end_layout

\begin_layout LyX-Code
    Icon "font-free"
\end_layout

\begin_layout LyX-Code
    Separator
\end_layout

\begin_layout LyX-Code
    Icon "tex-mode"
\end_layout

\begin_layout LyX-Code
    Icon "math-mode"
\end_layout

\begin_layout LyX-Code
    Separator
\end_layout

\begin_layout LyX-Code
    Icon "footnote-insert"
\end_layout

\begin_layout LyX-Code
    Icon "marginpar-insert"
\end_layout

\begin_layout LyX-Code
    Icon "depth-next"
\end_layout

\begin_layout LyX-Code
    Separator
\end_layout

\begin_layout LyX-Code
    Icon "figure-insert"
\end_layout

\begin_layout LyX-Code
    Icon "dialog-tabular-insert"
\end_layout

\begin_layout LyX-Code
End
\end_layout

\begin_layout Section
Menu
\end_layout

\begin_layout Standard
Note that the following bindings are for LyX with English menus.
 The second character of the binding depends on the menu language.
 For example ``
\family sans
M-i r
\family default
'' is with German menus ``
\family sans
M-e q
\family default
''.
 To find out the shortcuts of your language press the Meta (Alt)-key and
 press then the keys of the underlined characters of the menu names.
\end_layout

\begin_layout Subsection
File
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-f\InsetSpace ~
a 
\family typewriter
buffer-write-as
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-f\InsetSpace ~
c
\family default
 
\family typewriter
buffer-close
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-f\InsetSpace ~
d
\family default
 
\family typewriter
buffer-reload
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-f\InsetSpace ~
e
\family default
 
\family typewriter
file_export
\family default
 submenu
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-f\InsetSpace ~
f 
\family typewriter
buffer-export fax
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-f\InsetSpace ~
i
\family default
 
\family typewriter
file_import
\family default
 submenu
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-f\InsetSpace ~
n 
\family typewriter
buffer-new
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-f\InsetSpace ~
o
\family default
 
\family typewriter
buffer-open
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-f\InsetSpace ~
p
\family default
 
\family typewriter
buffer-print
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-f\InsetSpace ~
s
\family default
 
\family typewriter
buffer-write
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-f\InsetSpace ~
t 
\family typewriter
buffer-new-template
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-f\InsetSpace ~
v
\family typewriter
 file_vc
\family default
 submenu 
\end_layout

\begin_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
h
\family typewriter
 vc-history 
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
i
\family typewriter
 vc-check-in
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
l
\family typewriter
 vc-revert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
o
\family typewriter
 vc-check-out
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
r
\family typewriter
 vc-register
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
u
\family typewriter
 vc-undo-last
\end_layout

\end_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-f\InsetSpace ~
x 
\family typewriter
lyx-quit
\end_layout

\begin_layout Subsection
Edit
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
a
\family default
 
\family typewriter
paste
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
c
\family default
 
\family typewriter
cut
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
d
\family default
 
\family typewriter
redo
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
e
\family default
 
\family typewriter
error-remove-all
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
f
\family default
 
\family typewriter
find-replace
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
h
\family default
 
\family typewriter
buffer-chktex
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
i
\family default
 
\family typewriter
edit_floats
\family default
 submenu
\end_layout

\begin_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
a
\family default
 
\family typewriter
tabular-feature append-row
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
b
\family default
 
\family typewriter
tabular-feature toggle-line-bottom
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
c
\family default
 
\family typewriter
tabular-feature align-center
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
d
\family default
 
\family typewriter
tabular-feature delete-column
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
e
\family default
 
\family typewriter
tabular-feature align-left
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
i
\family default
 
\family typewriter
tabular-feature align-right
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
l
\family default
 
\family typewriter
tabular-feature toggle-line-left
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
m
\family default
 
\family typewriter
tabular-feature multicolumn
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
n
\family default
 
\family typewriter
tabular-feature valign-center
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
o
\family default
 
\family typewriter
tabular-feature valign-top
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
r
\family default
 
\family typewriter
tabular-feature toggle-line-right
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
t
\family default
 
\family typewriter
tabular-feature toggle-line-top
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
u
\family default
 
\family typewriter
tabular-feature append-column
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
v
\family default
 
\family typewriter
tabular-feature valign-bottom
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
w
\family default
 
\family typewriter
tabular-feature delete-row
\end_layout

\end_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
l
\family default
 
\family typewriter
math-panel
\end_layout

\begin_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
a
\family typewriter
 floats-operate openfoot
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
c
\family typewriter
 floats-operate closefoot
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
f
\family typewriter
 floats-operate openfig
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
m
\family typewriter
 melt
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
o
\family typewriter
 open-stuff
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
t
\family typewriter
 floats-operate closefig
\end_layout

\end_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
o
\family default
 
\family typewriter
copy
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
p
\family default
 
\family typewriter
dialog-preferences
\family sans
 
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
r
\family default
 
\family typewriter
reconfigure
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
s
\family default
 
\family typewriter
spellchecker
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
t
\family default
 
\family typewriter
edit_tabular
\family default
 submenu
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
u 
\family typewriter
undo
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-e\InsetSpace ~
x 
\family typewriter
edit_paste
\family default
 submenu
\end_layout

\begin_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
l
\family default
 
\family typewriter
primary-selection-paste
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
p
\family default
 
\family typewriter
primary-selection-paste paragraph
\end_layout

\end_deeper
\begin_layout Subsection
Insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
a
\family default
 
\family typewriter
insert_floats
\family default
 submenu
\end_layout

\begin_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
a
\family default
 
\family typewriter
buffer-float-insert algorithm
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
d
\family default
 
\family typewriter
buffer-float-insert wide-tab
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
f
\family default
 
\family typewriter
buffer-float-insert figure
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
t
\family default
 
\family typewriter
buffer-float-insert table
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
w
\family default
 
\family typewriter
buffer-float-insert wide-fig
\end_layout

\end_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
b
\family default
 
\family typewriter
dialog-tabular-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
c
\family default
 
\family typewriter
citation-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
d
\family default
 
\family typewriter
math-display
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
e
\family default
 
\family typewriter
buffer-child-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
f
\family default
 
\family typewriter
footnote-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
g
\family default
 
\family typewriter
figure-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
h
\family default
 
\family typewriter
math-mode
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
i
\family default
 
\family typewriter
index-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
l
\family default
 
\family typewriter
label-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
m
\family default
 
\family typewriter
marginpar-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
n
\family default
 
\family typewriter
note-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
o
\family default
 
\family typewriter
insert_toc
\family default
 submenu
\end_layout

\begin_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
a
\family default
 
\family typewriter
loa-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
b
\family default
 
\family typewriter
bibtex-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
c
\family default
 
\family typewriter
toc-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
f
\family default
 
\family typewriter
lof-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
i
\family default
 
\family typewriter
index-print
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
t
\family default
 
\family typewriter
lot-insert
\end_layout

\end_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
r
\family default
 
\family typewriter
reference-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
s
\family default
 
\family typewriter
insert_special
\family default
 submenu
\end_layout

\begin_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
b
\family default
 
\family typewriter
protected-space-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
e
\family default
 
\family typewriter
end-of-sentence-period-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
h
\family default
 
\family typewriter
hfill-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
i
\family default
 
\family typewriter
dots-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
l
\family default
 
\family typewriter
break-line
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
m
\family default
 
\family typewriter
menu-separator-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
p
\family default
 
\family typewriter
hyphenation-point-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
q
\family default
 
\family typewriter
quote-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
s
\family default
 
\family typewriter
command-sequence math-insert ^;math-mode;
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
u
\family default
 
\family typewriter
command-sequence math-insert _;math-mode;
\end_layout

\end_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
t
\family default
 
\family typewriter
insert_file
\family default
 submenu
\end_layout

\begin_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
l
\family default
 
\family typewriter
file-insert-ascii lines
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
p
\family default
 
\family typewriter
file-insert-ascii paragraphs
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
x
\family default
 
\family typewriter
file-insert
\end_layout

\end_deeper
\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
u
\family default
 
\family typewriter
url-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
w
\family default
 
\family typewriter
index-insert-last
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-i\InsetSpace ~
x
\family default
 
\family typewriter
external-insert
\end_layout

\begin_layout Subsection
Layout
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-l\InsetSpace ~
a
\family default
 
\family typewriter
appendix
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-l\InsetSpace ~
b
\family default
 
\family typewriter
font-bold
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-l\InsetSpace ~
c
\family default
 
\family typewriter
layout-character
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-l\InsetSpace ~
d
\family default
 
\family typewriter
layout-document
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-l\InsetSpace ~
e
\family default
 
\family typewriter
font-emph
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-l\InsetSpace ~
l
\family default
 
\family typewriter
layout-preamble
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-l\InsetSpace ~
n
\family default
 
\family typewriter
font-noun
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-l\InsetSpace ~
p
\family default
 
\family typewriter
layout-paragraph
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-l\InsetSpace ~
s
\family default
 
\family typewriter
layout-save-default
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-l\InsetSpace ~
t
\family default
 
\family typewriter
layout-tabular
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-l\InsetSpace ~
v
\family default
 
\family typewriter
depth-increment
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-l\InsetSpace ~
x
\family default
 
\family typewriter
tex-mode
\end_layout

\begin_layout Subsubsection

\family sans
Layout\SpecialChar \menuseparator
Character
\family default
 
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-c\InsetSpace ~
b 
\family typewriter
font-bold
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-c\InsetSpace ~
c 
\family typewriter
font-noun
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-c\InsetSpace ~
e 
\family typewriter
font-emph
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-c\InsetSpace ~
m 
\family typewriter
math-mode
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-c\InsetSpace ~
p
\family default
 
\family typewriter
font-code
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-c\InsetSpace ~
r 
\family typewriter
font-roman
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-c\InsetSpace ~
s 
\family typewriter
font-sans
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-c\InsetSpace ~
u 
\family typewriter
font-underline
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-c\InsetSpace ~
space 
\family typewriter
font-default
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-c\InsetSpace ~
Down 
\family typewriter
word-lowcase
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-c\InsetSpace ~
Up 
\family typewriter
word-upcase
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-c\InsetSpace ~
Right 
\family typewriter
word-capitalize
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
h 
\family typewriter
font-size huge
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
l
\family default
 
\family typewriter
font-size large
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
n
\family default
 
\family typewriter
font-size normal
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
s
\family default
 
\family typewriter
font-size small
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
t
\family default
 
\family typewriter
font-size tiny
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
0 
\family typewriter
font-size huger
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
1
\family default
 
\family typewriter
font-size tiny
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
2
\family default
 
\family typewriter
font-size smallest
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
3 
\family typewriter
font-size smaller
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
4
\family default
 
\family typewriter
font-size small
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
5
\family default
 
\family typewriter
font-size normal
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
6
\family default
 
\family typewriter
font-size large
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
7
\family default
 
\family typewriter
font-size larger
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
8 
\family typewriter
font-size largest
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
9 
\family typewriter
font-size huge
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
S-H
\family default
 
\family typewriter
font-size huger
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
S-L
\family default
 
\family typewriter
font-size larger
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
S-S
\family default
 
\family typewriter
font-size smaller
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
plus 
\family typewriter
font-size increase
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-s\InsetSpace ~
minus 
\family typewriter
font-size decrease
\end_layout

\begin_layout Subsection
View
\end_layout

\begin_layout Subsection
Navigate
\end_layout

\begin_layout Subsection
Help
\end_layout

\begin_layout Subsection
Paragraph Style
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
a
\family default
 
\family typewriter
layout Abstract
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
b
\family default
 
\family typewriter
layout Itemize
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
c
\family default
 
\family typewriter
layout LyX-Code
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
d
\family default
 
\family typewriter
layout Description
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
e
\family default
 
\family typewriter
layout Enumerate
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
f
\family default
 
\family typewriter
layout ShortFoilhead
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
i
\family default
 
\family typewriter
layout Itemize
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
l
\family default
 
\family typewriter
layout List
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
n
\family default
 
\family typewriter
layout Enumerate
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
q
\family default
 
\family typewriter
layout Quote
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
r
\family default
 
\family typewriter
layout ShortRotatefoilhead
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
s
\family default
 
\family typewriter
layout Standard
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
t
\family default
 
\family typewriter
layout Title
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
v
\family default
 
\family typewriter
layout Verse
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
space
\family default
 
\family typewriter
drop-layouts-choice
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p
\noun on
\InsetSpace ~
0
\family default
\noun default
 
\family typewriter
layout Part
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p
\noun on
\InsetSpace ~
1
\family default
\noun default
 
\family typewriter
layout Chapter
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
2
\family default
 
\family typewriter
layout Section
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
3
\family default
 
\family typewriter
layout Subsection
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
4
\family default
 
\family typewriter
layout Subsubsection
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
5
\family default
 
\family typewriter
layout Paragraph
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
6
\family default
 
\family typewriter
layout Subparagraph
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
asterisk\InsetSpace ~
0
\family default
 
\family typewriter
layout Part*
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
asterisk\InsetSpace ~
1
\family default
 
\family typewriter
layout Chapter*
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
asterisk\InsetSpace ~
2
\family default
 
\family typewriter
layout Section*
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
asterisk\InsetSpace ~
3
\family default
 
\family typewriter
layout Subsection*
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
asterisk\InsetSpace ~
4
\family default
 
\family typewriter
layout Subsubsection*
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
asterisk\InsetSpace ~
5
\family default
 
\family typewriter
layout Paragraph*
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
asterisk\InsetSpace ~
6
\family default
 
\family typewriter
layout Subparagraph*
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
S-A
\family default
 
\family typewriter
layout Author
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
S-B
\family default
 
\family typewriter
layout Bibliography
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
S-C
\family default
 
\family typewriter
layout Comment
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
S-D
\family default
 
\family typewriter
layout Date
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
S-F
\family default
 
\family typewriter
layout Foilhead
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
S-L
\family default
 
\family typewriter
layout LaTeX
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
S-Q
\family default
 
\family typewriter
layout Quotation
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
S-R
\family default
 
\family typewriter
layout Rotatefoilhead
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
C-a
\family default
 
\family typewriter
layout RightAddress
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
M-a
\family default
 
\family typewriter
layout Address
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
M-c
\family default
 
\family typewriter
layout Caption
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
Left
\family default
 
\family typewriter
depth-decrement
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
Right
\family default
 
\family typewriter
depth-increment
\end_layout

\begin_layout Standard
These ones are kept for backwards compatibility, but only make sense on
 a qwerty keyboard:
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
S-at
\family default
 
\family typewriter
layout Section*
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
S-dollar
\family default
 
\family typewriter
layout Subsubsection*
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-p\InsetSpace ~
S-numbersign
\family default
 
\family typewriter
layout Subsection*
\end_layout

\begin_layout Section
Keyboard
\end_layout

\begin_layout Subsection
Specific to 
\family typewriter
emacs.bind
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-a
\family default
 
\family typewriter
line-begin
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-b
\family default
 
\family typewriter
char-backward
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-d
\family default
 
\family typewriter
delete-forward
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-e
\family default
 
\family typewriter
line-end
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-f
\family default
 
\family typewriter
char-forward
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-g
\family default
 
\family typewriter
cancel
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-h
\family default
 
\family typewriter
hyphenation-point-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-i
\family default
 
\family typewriter
hfill-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-k
\family default
 
\family typewriter
line-delete-forward
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-l
\family default
 
\family typewriter
screen-recenter
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-m
\family default
 
\family typewriter
mark-toggle
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-n
\family default
 
\family typewriter
down
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-o
\family default
 
\family typewriter
open-stuff
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-p
\family default
 
\family typewriter
up
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-q
\family typewriter
 quote-insert 
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-s
\family default
 
\family typewriter
find-replace
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-u
\family default
 
\family typewriter
font-underline 
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-v
\family default
 
\family typewriter
screen-down 
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-w
\family default
 
\family typewriter
cut
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-y
\family default
 
\family typewriter
paste
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-Y
\family default
 
\family typewriter
layout-paste
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
a
\family default
 
\family typewriter
buffer-auto-save
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
b
\family default
 
\family typewriter
buffer-previous
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
c
\family default
 
\family typewriter
lyx-quit
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
d
\family default
 
\family typewriter
buffer-new
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
?\InsetSpace ~
C-x\InsetSpace ~
f
\family default
 
\family typewriter
buffer-open
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
g
\family default
 
\family typewriter
buffer-view-ps
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
k
\family default
 
\family typewriter
buffer-close
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
p
\family default
 
\family typewriter
buffer-view
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
r
\family default
 
\family typewriter
buffer-typeset
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
?\InsetSpace ~
C-x\InsetSpace ~
s
\family default
 
\family typewriter
buffer-write
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
t
\family default
 
\family typewriter
buffer-typeset
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
u
\family default
 
\family typewriter
undo
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
v\InsetSpace ~
c
\family default
 
\family typewriter
vc-undo-last
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
v\InsetSpace ~
h
\family default
 
\family typewriter
vc-history
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
v\InsetSpace ~
i
\family default
 
\family typewriter
vc-register
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
v\InsetSpace ~
u
\family default
 
\family typewriter
vc-revert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
v\InsetSpace ~
v
\family default
 
\family typewriter
vc-check-in
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
?\InsetSpace ~
C-x\InsetSpace ~
w
\family default
 
\family typewriter
buffer-write-as
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
bracketleft
\family default
 
\family typewriter
screen-up
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
bracketright
\family default
 
\family typewriter
screen-down
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
C-a
\family default
 
\family typewriter
buffer-auto-save
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
C-b
\family default
 
\family typewriter
menu-open Documents
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
C-c
\family default
 
\family typewriter
lyx-quit
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
C-d
\family default
 
\family typewriter
buffer-new
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
C-f
\family default
 
\family typewriter
buffer-open
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
C-g
\family default
 
\family typewriter
buffer-view-ps
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
C-p
\family default
 
\family typewriter
buffer-view
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
C-q
\family default
 
\family typewriter
buffer-toggle-read-only
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
C-s
\family default
 
\family typewriter
buffer-write
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
C-t
\family default
 
\family typewriter
buffer-typeset
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x\InsetSpace ~
C-w
\family default
 
\family typewriter
buffer-write-as
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
Home
\family default
 
\family typewriter
buffer-begin
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
End
\family default
 
\family typewriter
buffer-end
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Home
\family default
 
\family typewriter
line-begin-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-End
\family default
 
\family typewriter
line-end-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Up
\family default
 
\family typewriter
up-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Down
\family default
 
\family typewriter
down-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Next
\family default
 
\family typewriter
screen-down-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Prior
\family default
 
\family typewriter
screen-up-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Left
\family default
 
\family typewriter
backward-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Right
\family default
 
\family typewriter
forward-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Up
\family default
 
\family typewriter
paragraph-up
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Down
\family default
 
\family typewriter
paragraph-down
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Left
\family default
 
\family typewriter
word-backward
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Right
\family default
 
\family typewriter
word-forward
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Delete
\family default
 
\family typewriter
word-delete-forward
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-BackSpace
\family default
 
\family typewriter
word-delete-backward
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Return
\family default
 
\family typewriter
break-line
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-period
\family default
 
\family typewriter
end-of-sentence-period-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-space
\family default
 
\family typewriter
protected-space-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-at
\family default
 
\family typewriter
mark-on
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-greater
\family default
 
\family typewriter
label-goto
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-less
\family default
 
\family typewriter
reference-back
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-slash
\family default
 
\family typewriter
undo
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-underscore
\family default
 
\family typewriter
undo
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-quotedbl
\family default
 
\family typewriter
quote-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-Home
\family default
 
\family typewriter
buffer-begin-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-End
\family default
 
\family typewriter
buffer-end-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-Up
\family default
 
\family typewriter
paragraph-up-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-Down
\family default
 
\family typewriter
paragraph-down-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-Left
\family default
 
\family typewriter
word-backward-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-Right
\family default
 
\family typewriter
word-forward-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
Escape
\family default
 
\family typewriter
meta-prefix
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-d
\family default
 
\family typewriter
word-delete-forward
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-w
\family default
 
\family typewriter
copy
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-x
\family default
 
\family typewriter
command-execute
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-S-W
\family default
 
\family typewriter
layout-copy
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-period
\family default
 
\family typewriter
dots-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-Return
\family default
 
\family typewriter
break-paragraph-keep-layout
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-S-percent 
\family typewriter
find-replace
\end_layout

\begin_layout Subsection
Specific to 
\family typewriter
cua.bind
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-b
\family default
 
\family typewriter
font-bold
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-c
\family default
 
\family typewriter
copy
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-d
\family default
 
\family typewriter
buffer-view 
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-e
\family default
 
\family typewriter
font-emph
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-f
\family default
 
\family typewriter
find-replace
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-g
\family default
 
\family typewriter
error-next
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-i
\family default
 
\family typewriter
open-stuff 
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-k
\family default
 
\family typewriter
font-noun 
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-l
\family default
 
\family typewriter
tex-mode 
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-m
\family default
 
\family typewriter
math-mode
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-n
\family default
 
\family typewriter
buffer-new
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-o
\family default
 
\family typewriter
buffer-open
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-p
\family default
 
\family typewriter
buffer-print
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-q
\family default
 
\family typewriter
lyx-quit
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-r
\family default
 
\family typewriter
buffer-reload
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-s
\family default
 
\family typewriter
buffer-write
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-t
\family default
 
\family typewriter
buffer-view-ps
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-u
\family default
 
\family typewriter
font-underline
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-v
\family default
 
\family typewriter
paste
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-w
\family default
 
\family typewriter
buffer-close
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x
\family default
 
\family typewriter
cut
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-z
\family default
 
\family typewriter
undo
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-space
\family default
 
\family typewriter
protected-space-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-C
\family default
 
\family typewriter
layout-copy
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-D
\family default
 
\family typewriter
buffer-typeset
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-M
\family default
 
\family typewriter
math-display
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-N
\family default
 
\family typewriter
buffer-new-template
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-P
\family default
 
\family typewriter
font-code 
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-S
\family default
 
\family typewriter
buffer-write-as
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-T
\family default
 
\family typewriter
buffer-typeset-ps
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-V
\family default
 
\family typewriter
layout-paste
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-Z
\family default
 
\family typewriter
redo
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Insert
\family default
 
\family typewriter
paste
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Delete
\family default
 
\family typewriter
cut
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-period
\family default
 
\family typewriter
end-of-sentence-period-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-greater
\family default
 
\family typewriter
label-goto
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-less
\family default
 
\family typewriter
reference-back
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-minus
\family default
 
\family typewriter
hyphenation-point-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-quotedbl
\family default
 
\family typewriter
quote-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-space
\family default
 
\family typewriter
protected-space-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-x
\family default
 
\family typewriter
command-execute
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Home
\family default
 
\family typewriter
line-begin-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-End
\family default
 
\family typewriter
line-end-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Up
\family default
 
\family typewriter
up-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Down
\family default
 
\family typewriter
down-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Delete
\family default
 
\family typewriter
cut
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Insert
\family default
 
\family typewriter
paste
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Next
\family default
 
\family typewriter
screen-down-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Prior
\family default
 
\family typewriter
screen-up-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Left
\family default
 
\family typewriter
backward-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-Right
\family default
 
\family typewriter
forward-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Home
\family default
 
\family typewriter
buffer-begin
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-End
\family default
 
\family typewriter
buffer-end
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Up
\family default
 
\family typewriter
paragraph-up
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Down
\family default
 
\family typewriter
paragraph-down
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Delete
\family default
 
\family typewriter
word-delete-forward
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-BackSpace
\family default
 
\family typewriter
word-delete-backward
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Insert
\family default
 
\family typewriter
copy
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Return
\family default
 
\family typewriter
break-line
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Left
\family default
 
\family typewriter
word-backward
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Right
\family default
 
\family typewriter
word-forward
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-Down
\family default
 
\family typewriter
paragraph-down-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-End
\family default
 
\family typewriter
buffer-end-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-Home
\family default
 
\family typewriter
buffer-begin-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-Left
\family default
 
\family typewriter
word-backward-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-Right
\family default
 
\family typewriter
word-forward-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-Up
\family default
 
\family typewriter
paragraph-up-select
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-quotedbl
\family default
 
\family typewriter
quote-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-Return
\family default
 
\family typewriter
break-paragraph-keep-layout
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-period
\family default
 
\family typewriter
dots-insert
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-S-Right
\family default
 
\family typewriter
depth-increment
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-S-Left
\family default
 
\family typewriter
depth-decrement
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
Escape
\family default
 
\family typewriter
cancel
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
F2
\family default
 
\family typewriter
buffer-write
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
F3 
\family typewriter
buffer-open
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
F5
\family default
 
\family typewriter
screen-recenter
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
F7
\family default
 
\family typewriter
spellchecker
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
F9
\family default
 
\family typewriter
meta-prefix
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-F4
\family default
 
\family typewriter
buffer-close
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-F4
\family default
 
\family typewriter
lyx-quit
\end_layout

\begin_layout Subsection
Specific to 
\family typewriter
sciword.bind
\end_layout

\begin_layout Standard
These are LyX keyboard definitions for mathematics, similar to those of
 Scientific Word.
\end_layout

\begin_layout Standard
The bindings file and the present documentation were prepared by Serge Winitzki
 with assistance from Jean-Marc Lasgouttes.
 Version 1.3, for LyX 1.2.x and 1.3.x.
\end_layout

\begin_layout Standard
These definitions make it a lot easier to type equations without using the
 mouse, especially for people familiar with Scientific Word.
 The standard LyX bindings such as 
\family typewriter
M-m
\family default
 or 
\family typewriter
M-o
\family default
 are unmodified.
\end_layout

\begin_layout Standard
Tip: to find the "LyX bind name" for a key, look at the status bar after
 typing some non-existent key combination.
 E.g.
 to find how "Ctrl-&" is referenced, press Ctrl-S and then Ctrl-&: the status
 bar shows "C-s S-C-ampersand." (This does not work in LyX 1.3.0!)
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-c
\family default
 
\family typewriter
copy 
\family default
-- Copy, cut, paste is as in Sciword,
\family typewriter
 C-c
\family default
, 
\family typewriter
C-x
\family default
, and 
\family typewriter
C-v
\family default
.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-d
\family default
 
\family typewriter
math-display 
\family default
-- Display equation toggle: type 
\family typewriter
C-d
\family default
 to insert a displayed formula (
\family typewriter
d
\family default
 for 
\begin_inset Quotes eld
\end_inset

displayed
\begin_inset Quotes erd
\end_inset

).
 You can also type 
\family typewriter
C-d
\family default
 in a displayed formula to convert it back to an inline formula.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-f
\family default
 
\family typewriter
math-insert 
\backslash
frac 
\family default
-- Fractions: type 
\family typewriter
C-f
\family default
 to insert a fraction (
\family typewriter
f
\family default
 for 
\begin_inset Quotes eld
\end_inset

fraction
\begin_inset Quotes erd
\end_inset

).
 You can also select an expression and type 
\family typewriter
C-f
\family default
 to convert it to the numerator of a fraction.
 Note: pressing 
\family typewriter
Backspace
\family default
 at the 
\emph on
left
\emph default
 end of the denominator will delete the numerator and convert the denominator
 to a non-fraction.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-i
\family default
 
\family typewriter
math-insert 
\backslash
int 
\family default
-- Inserts 
\begin_inset Formula $\int$
\end_inset

 (
\family typewriter
i
\family default
 for 
\begin_inset Quotes eld
\end_inset

integral
\begin_inset Quotes erd
\end_inset

)
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-k
\family default
 
\family typewriter
line-delete-forward
\family default
 -- Emacs-like binding: delete forward of cursor to end of line.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-m
\family default
 
\family typewriter
math-mode 
\family default
-- A text/math toggle (
\family typewriter
m
\family default
 for 
\begin_inset Quotes eld
\end_inset

math
\begin_inset Quotes erd
\end_inset

): switches to math in text mode, and also inserts roman text in math mode.
 Also bound to 
\family typewriter
C-t
\family default
 (
\family typewriter
t
\family default
 for 
\begin_inset Quotes eld
\end_inset

text
\begin_inset Quotes erd
\end_inset

).
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-n
\family default
 
\family typewriter
math-number 
\family default
-- Add/remove numbering in a single equation.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-C-N
\family default
 
\family typewriter
math-nonumber
\family default
 -- Add/remove numbering at a line in equation arrays.
\end_layout

\begin_layout Standard
The above commands are toggles that control the numbering of equations (
\family typewriter
N
\family default
 for 
\begin_inset Quotes eld
\end_inset

number
\begin_inset Quotes erd
\end_inset

).
 Note: when deleting a number in a labeled eqnarray, the label is not really
 removed (the TeX code becomes 
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
label{} 
\backslash
nonumber
\family default

\begin_inset Quotes erd
\end_inset

 ) and this generates a (harmless) LaTeX warning.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-o
\family default
 
\family typewriter
file-open 
\family default
-- Open a new document.
 (W*ndows)
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-q
\family default
 
\family typewriter
quote-insert
\family default
 -- Insert a quote character " (
\family typewriter
q
\family default
 for 
\begin_inset Quotes eld
\end_inset

quote
\begin_inset Quotes erd
\end_inset

).
 This is not the 
\begin_inset Quotes eld
\end_inset

smart
\begin_inset Quotes erd
\end_inset

 double quote character that you get by default.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-r
\family default
 
\family typewriter
math-insert 
\backslash
sqrt 
\family default
-- Square root sign 
\begin_inset Formula $\sqrt{x}$
\end_inset

 (
\family typewriter
r
\family default
 for 
\begin_inset Quotes eld
\end_inset

root
\begin_inset Quotes erd
\end_inset

).
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-C-R
\family default
 
\family typewriter
math-insert 
\backslash
root 
\family default
-- root sign 
\begin_inset Formula $\sqrt[n]{x}$
\end_inset

.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-t
\family default
 
\family typewriter
math-mode 
\family default
-- Another binding for a switch between the text and the math mode (
\family typewriter
t
\family default
 is for 
\begin_inset Quotes eld
\end_inset

text
\begin_inset Quotes erd
\end_inset

).
 Note that the roman text inserted in math mode is special.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-u
\family default
 
\family typewriter
font-underline 
\family default
-- 
\bar under
Underline
\bar default
 the selected text (text mode only, use things like 
\family typewriter

\backslash
overline
\family default
 or 
\family typewriter

\backslash
underbar
\family default
 for math ).
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-v
\family default
 
\family typewriter
paste 
\family default
-- W*ndows heritage.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-w
\family default
 
\family typewriter
buffer-close 
\family default
-- Close the current document (again, a W*ndows heritage).
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-x
\family default
 
\family typewriter
cut
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-z
\family default
 
\family typewriter
undo
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-C-Z
\family default
 
\family typewriter
redo 
\family default
-- the 
\begin_inset Quotes eld
\end_inset

Redo
\begin_inset Quotes erd
\end_inset

 operation, or 
\begin_inset Quotes eld
\end_inset

undo the undo
\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Standard
Bracket delimiters: press 
\family typewriter
Ctrl
\family default
-<bracket key> to insert a matching pair of delimiters.
 For example, 
\family typewriter
Ctrl-[
\family default
 inserts a pair of parentheses 
\begin_inset Formula $\left[\right]$
\end_inset

.
 (Note: 
\family typewriter
Ctrl-]
\family default
 does the same thing.) It will switch to math mode if needed.
 The supported characters are ( [ { < |.
 It is the same to press the right or the left bracket.
 The corresponding delimiters are 
\begin_inset Formula $\left(\right)$
\end_inset

 
\begin_inset Formula $\left[\right]$
\end_inset

 
\begin_inset Formula $\left\{ \right\} $
\end_inset

 
\begin_inset Formula $\left\langle \right\rangle $
\end_inset

 
\begin_inset Formula $\left|\right|$
\end_inset

.
 The delimiters are 
\begin_inset Quotes eld
\end_inset

smart
\begin_inset Quotes erd
\end_inset

 and resize with their contents.
 Use Math Panel to get other or non-matching delimiters.
 Press backspace on the 
\emph on
left
\emph default
 delimiter to remove both 
\begin_inset Quotes eld
\end_inset

smart
\begin_inset Quotes erd
\end_inset

 delimiters without removing their contents.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-9
\family default
 
\family typewriter
math-delim ( ) 
\family default
-- for convenience, pressing 
\family typewriter
Ctrl-9
\family default
 is the same as 
\family typewriter
Ctrl-(
\family default
 or 
\family typewriter
Ctrl-)
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-C-parenleft
\family default
 
\family typewriter
math-delim ( )
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-0
\family default
 
\family typewriter
math-delim ( )
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-C-parenright
\family default
 
\family typewriter
math-delim ( )
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-bracketleft
\family default
 
\family typewriter
math-delim [ ]
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-bracketright
\family default
 
\family typewriter
math-delim [ ]
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-less
\family default
 
\family typewriter
math-delim langle rangle 
\family default
-- angular delimiters 
\begin_inset Formula $\left\langle \right\rangle $
\end_inset

, not to confuse with ordinary < > signs.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-greater
\family default
 
\family typewriter
math-delim langle rangle
\end_layout

\begin_layout Standard
The bar bracket: on some keyboards (e.g.\InsetSpace ~
some British ones), the bar character
 is bound to an 
\family typewriter
Alt
\family default
-something and on some wayward Unices to "brokenbar".
 So we define all of these keys as well.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-bar
\family default
 
\family typewriter
math-delim | |
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-S-brokenbar
\family default
 
\family typewriter
math-delim | |
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-M-bar
\family default
 
\family typewriter
math-delim | |
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-C-braceleft
\family default
 
\family typewriter
math-delim { }
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-C-braceright
\family default
 
\family typewriter
math-delim { }
\end_layout

\begin_layout Standard
Accents are in most cases 
\family typewriter
Ctrl
\family default
-<accent key>, e.g.\InsetSpace ~

\family typewriter
Ctrl-.

\family default
 for overdot, 
\family typewriter
Ctrl-'
\family default
 for acute accent, 
\family typewriter
Ctrl-~
\family default
 for tilde (you also need to press 
\family typewriter
Shift
\family default
 here) etc.
 For example, 
\begin_inset Quotes eld
\end_inset


\family typewriter
Ctrl-'
\family default
 
\family typewriter
a
\family default

\begin_inset Quotes erd
\end_inset

 inserts á.
 Some accents work only in math mode and others only in text mode.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-period
\family default
 
\family typewriter
accent-dot 
\family default
-- overdot accent, \i \.{a}
 (text mode only).
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-comma
\family default
 
\family typewriter
math-insert 
\backslash
dot 
\family default
-- overdot accent, 
\begin_inset Formula $\dot{a}$
\end_inset

 (math mode only -- in physics this denotes a first derivative).
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-equals
\family default
 
\family typewriter
math-insert 
\backslash
overrightarrow
\family default
 -- Vector accent over math 
\begin_inset Formula $\overrightarrow{x}$
\end_inset

.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-C-quotedbl
\family default
 
\family typewriter
accent-umlaut 
\family default
-- umlaut accent, ä (text mode only)
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-C-colon
\family default
 
\family typewriter
math-insert 
\backslash
ddot 
\family default
-- double dot accent, 
\begin_inset Formula $\ddot{a}$
\end_inset

 (math mode only -- in physics this denotes a second derivative).
 To get a triple dot in math mode, use 
\family typewriter

\backslash
dddot
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-quoteleft
\family default
 
\family typewriter
accent-grave 
\family default
-- grave accent à (text mode only, use 
\family typewriter

\backslash
grave
\family default
 for math)
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-C-asciitilde
\family default
 
\family typewriter
accent-tilde 
\family default
-- tilde accent ã (text mode only, use 
\family typewriter

\backslash
tilde
\family default
 for math)
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-apostrophe
\family default
 
\family typewriter
accent-acute 
\family default
-- acute accent á (text mode only, use 
\family typewriter

\backslash
acute
\family default
 for math)
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-C-asciicircum
\family default
 
\family typewriter
accent-circumflex 
\family default
-- circumflex (caret) accent â (text mode only, use 
\family typewriter

\backslash
hat
\family default
 for math).
\end_layout

\begin_layout Standard
Function keys.
 The new key S-F2 for creating a LaTeX file seems handy.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
F2
\family default
 
\family typewriter
buffer-write 
\family default
-- Save current document.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-F2
\family default
 
\family typewriter
buffer-export latex 
\family default
-- Write a LaTeX file for the current document.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
F3
\family default
 
\family typewriter
find-replace 
\family default
-- Find and replace dialog.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-F4
\family default
 
\family typewriter
buffer-close 
\family default
-- same as 
\family typewriter
C-w
\family default
.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-F4
\family default
 
\family typewriter
lyx-quit 
\family default
-- 
\family typewriter
Alt-F4
\family default
 to quit LyX is the W*ndows w*ndow manager's mnemonic.
\end_layout

\begin_layout Standard

\family typewriter
F4
\family default
 to 
\family typewriter
F8
\family default
 are used to switch fonts.
 Use 
\family typewriter
F4
\family default
 to switch back to the normal font.
 The non-default font switches 
\family typewriter
F5
\family default
 - 
\family typewriter
F8
\family default
 all work as toggles.
 They also work on the whole word if you put the cursor in the middle of
 the word, or if you select some text.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
F4
\family default
 
\family typewriter
font-default 
\family default
-- stop using any special font
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
F5
\family default
 
\family typewriter
font-bold 
\family default
-- make 
\series bold
bold
\series default
 text.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
F6
\family default
 
\family typewriter
font-emph 
\family default
-- make 
\emph on
emphasized
\emph default
 text.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
F7
\family default
 
\family typewriter
font-code 
\family default
-- make 
\family typewriter
typewritten
\family default
 text.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
F8
\family default
 
\family typewriter
font-noun 
\family default
-- make 
\noun on
Caps/small caps
\noun default
 text.
 (Used sometimes for people's names.)
\end_layout

\begin_layout Standard

\family typewriter
F9
\family default
 is bound as 
\begin_inset Quotes eld
\end_inset

meta-prefix
\begin_inset Quotes erd
\end_inset

, same as the 
\family typewriter
Alt
\family default
 key (useful e.g.\InsetSpace ~
if the keyboard has no working 
\family typewriter
Alt
\family default
).
\end_layout

\begin_layout Standard
Here are some Sciword-inspired mnemonics for frequently used math symbols.
 Many symbols start with a 
\family typewriter
C-s
\family default
 sequence.
 Therefore 
\family typewriter
C-s
\family default
 cannot be itself bound to anything.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-apostrophe
\family default
 
\family typewriter
math-insert 
\backslash
prime 
\family default
-- The 
\begin_inset Quotes eld
\end_inset

prime
\begin_inset Quotes erd
\end_inset

 symbol 
\begin_inset Formula $\prime$
\end_inset

 in math mode.
 This is frequently unnecessary: in most cases the normal apostrophe works
 just fine, e.g.
 
\begin_inset Formula $x'+2x=0$
\end_inset

, but in some cases this would generate a double superscript error in LaTeX.
 For example: 
\begin_inset Formula $x^{\prime2}$
\end_inset

 (
\begin_inset Formula $x$
\end_inset

 prime squared) must be entered with the prime character.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-s\InsetSpace ~
apostrophe
\family default
 
\family typewriter
command-sequence math-superscript; math-insert 
\backslash
prime; 
\family default
-- Insert a prime as a superscript (see example above).
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Up
\family default
 
\family typewriter
math-insert ^ 
\family default
-- Insert an upper index.
 Also, 
\family typewriter
^ 
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-Down
\family default
 
\family typewriter
math-insert _ 
\family default
-- Insert a lower index.
 Also, 
\family typewriter
_
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-s\InsetSpace ~
d
\family default
 
\family typewriter
math-insert 
\backslash
partial 
\family default
-- Partial derivative symbol 
\begin_inset Formula $\partial$
\end_inset

.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-s\InsetSpace ~
e
\family default
 
\family typewriter
math-insert 
\backslash
sum 
\family default
-- Summation symbol 
\begin_inset Formula $\sum$
\end_inset

 (not the same as the Greek letter uppercase Sigma 
\begin_inset Formula $\Sigma$
\end_inset

 because it can resize and allows smart upper/lower limits).
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-s\InsetSpace ~
p
\family default
 
\family typewriter
math-insert 
\backslash
prod
\family default
 -- Product symbol 
\begin_inset Formula $\prod$
\end_inset

 (not the same as the Greek letter uppercase Pi, 
\begin_inset Formula $\Pi$
\end_inset

).
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-s\InsetSpace ~
i
\family default
 
\family typewriter
math-insert 
\backslash
infty 
\family default
-- Infinity 
\begin_inset Formula $\infty$
\end_inset

.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-s\InsetSpace ~
x
\family default
 
\family typewriter
math-insert 
\backslash
times 
\family default
-- Cross product 
\begin_inset Formula $\times$
\end_inset

.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-s\InsetSpace ~
v
\family default
 
\family typewriter
math-matrix 1 2 
\family default
-- Insert a stacked array 
\begin_inset Formula $\begin{array}{c}
\begin{array}{c}
\end{array}\end{array}$
\end_inset

.
 (Frequently useful in formulae.)
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-s\InsetSpace ~
m
\family default
 
\family typewriter
math-matrix 3 3 
\family default
-- Insert a 3
\begin_inset Formula $\times$
\end_inset

3 matrix 
\begin_inset Formula $\begin{array}{ccc}
\\\\\end{array}$
\end_inset

.
 (Then you can modify its size using the 
\family sans
Edit\SpecialChar \menuseparator
Math
\family default
 menu.)
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-s\InsetSpace ~
S-plus
\family default
 
\family typewriter
math-insert 
\backslash
dagger 
\family default
-- The 
\begin_inset Quotes eld
\end_inset

dagger
\begin_inset Quotes erd
\end_inset

 
\begin_inset Formula $\dagger$
\end_inset

.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-s\InsetSpace ~
equal
\family default
 
\family typewriter
math-insert 
\backslash
equiv 
\family default
-- 
\begin_inset Quotes eld
\end_inset

Identical equality
\begin_inset Quotes erd
\end_inset

 
\begin_inset Formula $\equiv$
\end_inset

.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-equal
\family default
 
\family typewriter
math-insert 
\backslash
approx 
\family default
-- 
\begin_inset Quotes eld
\end_inset

Approximate equality
\begin_inset Quotes erd
\end_inset

 
\begin_inset Formula $\approx$
\end_inset

.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-minus
\family default
 
\family typewriter
math-insert 
\backslash
sim 
\family default
-- The 
\begin_inset Quotes eld
\end_inset

of order
\begin_inset Quotes erd
\end_inset

 sign 
\begin_inset Formula $\sim$
\end_inset

.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-minus
\family default
 
\family typewriter
math-insert 
\backslash
rightarrow 
\family default
-- The arrow 
\begin_inset Formula $\rightarrow$
\end_inset

 as in 
\begin_inset Formula $\lim_{x\rightarrow0}$
\end_inset

.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-M-less
\family default
 
\family typewriter
math-insert 
\backslash
leq 
\family default
-- Less-or-equal 
\begin_inset Formula $\leq$
\end_inset

.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
S-M-greater
\family default
 
\family typewriter
math-insert 
\backslash
geq 
\family default
-- Greater-or-equal 
\begin_inset Formula $\geq$
\end_inset

.
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-s\InsetSpace ~
S-less
\family default
 
\family typewriter
math-insert 
\backslash
ll 
\family default
-- 
\begin_inset Quotes eld
\end_inset

Much less than
\begin_inset Quotes erd
\end_inset

 
\begin_inset Formula $\ll$
\end_inset

 (useful in physics)
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
C-s\InsetSpace ~
S-greater
\family default
 
\family typewriter
math-insert 
\backslash
gg 
\family default
-- 
\begin_inset Quotes eld
\end_inset

Much greater than
\begin_inset Quotes erd
\end_inset

 sign 
\begin_inset Formula $\gg$
\end_inset

.
\end_layout

\begin_layout Subsection
Standard math bindings
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
b
\family default
 
\family typewriter
math-insert 
\backslash
overline
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
d
\family default
 
\family typewriter
math-display
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
e
\family default
 
\family typewriter
math-insert ^
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
f
\family default
 
\family typewriter
math-insert 
\backslash
frac
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
g
\family default
 
\family typewriter
math-greek
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
h
\family default
 
\family typewriter
accent-circumflex
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
i
\family default
 
\family typewriter
math-insert 
\backslash
int
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
l
\family default
 
\family typewriter
math-limits
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
m
\family default
 
\family typewriter
math-mode
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
n
\family default
 
\family typewriter
math-number
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
o
\family default
 
\family typewriter
math-insert 
\backslash
oint
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
p
\family default
 
\family typewriter
math-insert 
\backslash
partial
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
r
\family default
 
\family typewriter
math-insert 
\backslash
sqrt
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
s
\family default
 
\family typewriter
math-insert 
\backslash
sqrt
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
u
\family default
 
\family typewriter
math-insert 
\backslash
sum
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
v
\family default
 
\family typewriter
math-insert 
\backslash
vec
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
x
\family default
 
\family typewriter
math-insert _
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
8
\family default
 
\family typewriter
math-insert 
\backslash
infty
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
S-G
\family default
 
\family typewriter
math-greek-toggle
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
S-N
\family default
 
\family typewriter
math-nonumber
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
S-period
\family default
 
\family typewriter
accent-dot
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
S-asciitilde
\family default
 
\family typewriter
accent-tilde
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
S-apostrophe
\family default
 
\family typewriter
math-insert 
\backslash
prime
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
S-parenleft
\family default
 
\family typewriter
math-delim ( )
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
S-bracketleft
\family default
 
\family typewriter
math-delim [ ]
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
S-braceleft
\family default
 
\family typewriter
math-delim { }
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
S-less
\family default
 
\family typewriter
math-delim langle rangle
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
S-greater
\family default
 
\family typewriter
math-delim rangle langle
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
S-bar
\family default
 
\family typewriter
math-delim | |
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
S-plus
\family default
 
\family typewriter
math-insert 
\backslash
pm
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-m\InsetSpace ~
S-equal
\family default
 
\family typewriter
math-insert 
\backslash
neq
\end_layout

\begin_layout Subsection
Other Accelerators
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-k\InsetSpace ~
o 
\family typewriter
keymap-off
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-k\InsetSpace ~
t 
\family typewriter
keymap-toggle
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-k\InsetSpace ~
x 
\family typewriter
keymap-off
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-k\InsetSpace ~
1 
\family typewriter
keymap-primary
\end_layout

\begin_layout List
\labelwidthstring 00.00.0000

\family sans
M-k\InsetSpace ~
2 
\family typewriter
keymap-secondary
\end_layout

\end_body
\end_document
