-#LyX 1.3 created this file. For more info see http://www.lyx.org/
-\lyxformat 221
-\textclass book
+#LyX 2.0.0svn created this file. For more info see http://www.lyx.org/
+\lyxformat 348
+\begin_document
+\begin_header
+\textclass scrbook
\begin_preamble
+% DO NOT ALTER THIS PREAMBLE!!!
+%
+% This preamble is designed to ensure that the User's Guide prints
+% out as advertised. If you mess with this preamble,
+% parts of the User's Guide may not print out as expected. If you
+% have problems LaTeXing this file, please contact
+% the documentation team
+% email: lyx-docs@lists.lyx.org
+
+\usepackage{ifpdf} % part of the hyperref bundle
+\ifpdf % if pdflatex is used
+
+ % set fonts for nicer pdf view
+ \IfFileExists{lmodern.sty}
+ {\usepackage{lmodern}}{}
+
+\fi % end if pdflatex is used
+
+% the pages of the TOC is numbered roman
+% and a pdf-bookmark for the TOC is added
+\let\myTOC\tableofcontents
+\renewcommand\tableofcontents{%
+ \frontmatter
+ \pdfbookmark[1]{\contentsname}{}
+ \myTOC
+ \mainmatter }
+
+% redefine the \LyX macro for PDF bookmarks
+\def\LyX{\texorpdfstring{%
+ L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\@}
+ {LyX}}
+
+% used for multi-column text
\usepackage{multicol}
-\IfFileExists{isolatin.def}
-{\usepackage[isolatin]{inputenc}}
-{\usepackage[latin1]{inputenc}}
+\usepackage{inputenc}
\end_preamble
+\options fleqn,liststotoc,bibtotoc,idxtotoc,BCOR7.5mm,titlepage,tablecaptionabove
+\use_default_options false
+\begin_modules
+logicalmkup
+\end_modules
+\begin_local_layout
+Format 7
+InsetLayout CharStyle:MenuItem
+LyxType charstyle
+LabelString menu
+LatexType command
+LatexName menuitem
+Font
+Family Sans
+EndFont
+Preamble
+\newcommand*{\menuitem}[1]{{\sffamily #1}}
+EndPreamble
+End
+\end_local_layout
\language english
-\inputencoding default
-\fontscheme default
-\graphics none
-\paperfontsize default
-\spacing single
-\papersize Default
-\paperpackage a4
-\use_geometry 0
+\inputencoding auto
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+
+\graphics default
+\paperfontsize 12
+\spacing single
+\use_hyperref true
+\pdf_title "LyX Configuration Manual"
+\pdf_author "LyX Team"
+\pdf_subject "LyX-documentation Customization"
+\pdf_keywords "LyX, documentation, customization"
+\pdf_bookmarks true
+\pdf_bookmarksnumbered true
+\pdf_bookmarksopen true
+\pdf_bookmarksopenlevel 1
+\pdf_breaklinks false
+\pdf_pdfborder false
+\pdf_colorlinks true
+\pdf_backref false
+\pdf_pdfusetitle false
+\pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue,pdfpagelayout=OneColumn, pdfnewwindow=true,pdfstartview=XYZ, plainpages=false, pdfpagelabels"
+\papersize default
+\use_geometry false
\use_amsmath 0
-\use_natbib 0
-\use_numerical_citations 0
+\use_esint 0
+\cite_engine basic
+\use_bibtopic false
\paperorientation portrait
+\branch OutDated
+\selected 0
+\color #f5fae7
+\end_branch
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\defskip medskip
\quotes_language english
-\quotes_times 2
\papercolumns 1
\papersides 2
\paperpagestyle headings
+\tracking_changes false
+\output_changes false
+\author ""
+\author ""
+\end_header
-\layout Title
+\begin_body
+\begin_layout Title
Customizing LyX: Features for the Advanced User
-\layout Author
+\end_layout
+\begin_layout Author
by the LyX Team
\begin_inset Foot
-collapsed true
+status collapsed
+
+\begin_layout Plain Layout
+\noindent
+If you have comments or error corrections, please send them to the LyX Documenta
+tion mailing list,
+\begin_inset CommandInset href
+LatexCommand href
+target "lyx-docs@lists.lyx.org"
+type "mailto:"
+
+\end_inset
-\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_inset
+ Include
+\begin_inset Quotes eld
+\end_inset
-
-\layout Standard
+[Customization]
+\begin_inset Quotes erd
+\end_inset
+
+ in the subject header, and please cc the current maintainer of this file,
+ Richard Heck <rgheck@comcast.net>.
+\end_layout
+
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+Version 2.0.x
+\end_layout
+\begin_layout Standard
+\begin_inset CommandInset toc
+LatexCommand tableofcontents
-\begin_inset LatexCommand \tableofcontents{}
+\end_inset
-\end_inset
+\end_layout
-\layout Chapter
+\begin_layout Standard
+\begin_inset Note Note
+status open
+\begin_layout Plain Layout
+Please use change tracking when modifying this document.
+ This makes it easier for our translators to recognize things that have
+ been changed, and it helps the maintainer keep up-to-date with what's been
+ done.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Chapter
Introduction
-\layout Standard
+\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
+ 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.
-\layout Chapter
+\end_layout
-LyX configuration files
-\layout Standard
+\begin_layout Standard
+\begin_inset Branch OutDated
+status open
+
+\begin_layout Standard
+Information from previous versions of this document that now seems to be
+ outdated is contained in the OutDated branch of this document.
+ By default, this information will not appear in the LaTeX output.
+\end_layout
+\end_inset
-\begin_inset LatexCommand \label{chap:config}
-\end_inset
+\end_layout
+
+\begin_layout Chapter
+LyX configuration files
+\end_layout
+\begin_layout Standard
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\SpecialChar ~
-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
+ LyX library and user directories are by using
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Help\SpecialChar \menuseparator
+About
+\begin_inset space ~
+\end_inset
+
+LyX
+\end_layout
+
+\end_inset
+
+.
+ The library directory is the place where LyX places its system-wide configurati
+on files; the user directory is where you can place your modified versions.
+ We will call the former
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
LyXDir
-\family default
+\end_layout
+
+\end_inset
+
+ and the latter
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+UserDir
+\end_layout
+
+\end_inset
+
in the remainder of this document.
-\layout Section
+\end_layout
+\begin_layout Section
What's in
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
LyXDir
-\family default
+\end_layout
+
+\end_inset
+
?
-\layout Standard
+\end_layout
+\begin_layout Standard
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
+\begin_layout Plain Layout
LyXDir
-\family default
+\end_layout
+
+\end_inset
+
and its sub-directories contain a number of files and that can be used
- to customise LyX's behaviour.
+ to customize LyX's behavior.
You can change many of these files from within LyX itself through the
-\family sans
-\bar under
-T
-\bar default
-ools\SpecialChar \menuseparator
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
+Preferences
+\end_layout
+
+\end_inset
-\bar under
-P
-\bar default
-references
-\family default
dialog.
- Most customization that you might want to do to LyX is possible through
+ Most customization that you will want to do in LyX is possible through
this dialog.
However, many other inner aspects of LyX can be customized by modifying
the files in
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
LyXDir
-\family default
+\end_layout
+
+\end_inset
+
.
- They fall in different categories, described in the following subsections.
-\layout Subsection
+ These files fall in different categories, described in the following subsection
+s.
+\end_layout
+\begin_layout Subsection
Automatically generated files
-\layout Standard
+\end_layout
+
+\begin_layout Standard
+The files, which are to be found in
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+UserDir
+\end_layout
-These files are generated when you configure LyX.
+\end_inset
+
+, 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.
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\series medium
+\begin_layout Plain Layout
lyxrc.defaults
-\family default
-\series default
+\end_layout
+
+\end_inset
+
contains defaults for various commands.
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\series medium
+\begin_layout Plain Layout
packages.lst
-\family default
-\series default
+\end_layout
+
+\end_inset
+
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\SpecialChar ~
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Help\SpecialChar \menuseparator
+LaTeX
+\begin_inset space ~
+\end_inset
+
Configuration
-\family default
+\end_layout
+
+\end_inset
+
.
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\series medium
+\begin_layout Plain Layout
textclass.lst
-\family default
-\series default
- is the list of text classes that have been found in your
-\family typewriter
+\end_layout
+
+\end_inset
+
+ the list of text classes that have been found in your
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+layout/
+\end_layout
+
+\end_inset
+
+ directories, along with the associated LaTeX document class and their descripti
+on.
+\end_layout
+
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+lyxmodules.lst
+\end_layout
+
+\end_inset
+
+ the list of layout modules found in your
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
layout/
-\family default
- directory, along with the associated LaTeX document class and their description.
-\layout List
+\end_layout
+
+\end_inset
+
+ directories
+\end_layout
+
+\begin_layout Labeling
\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+*files.lst
+\end_layout
+
+\end_inset
+
+ lists of various sorts of LaTeX-related files found on your system
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
+\begin_layout Plain Layout
doc/LaTeXConfig.lyx
-\family default
+\end_layout
+
+\end_inset
+
is automatically generated during configuration from the file
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
LaTeXConfig.lyx.in
-\family default
+\end_layout
+
+\end_inset
+
.
-\layout Subsection
+ It contains information on your LaTeX configuration.
+\end_layout
+\begin_layout Subsection
Directories
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+
+\begin_layout Standard
+These directories are duplicated between
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LyXDir
+\end_layout
+
+\end_inset
+
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+UserDir
+\end_layout
+
+\end_inset
+
+.
+ If a particular files exists in both places, the one in
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+UserDir
+\end_layout
+\end_inset
-\family typewriter
-\series medium
+ will be used.
+\end_layout
+
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
bind/
-\family default
-\series default
+\end_layout
+
+\end_inset
+
this directory contains files with the extension
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
.bind
-\family default
- that define the keybindings used in LyX (see section\SpecialChar ~
+\end_layout
-\begin_inset LatexCommand \ref{sec:bindings}
+\end_inset
-\end_inset
+ that define the keybindings used in LyX.
+ If there exists an internationalized version of the bind file named
+\begin_inset Flex CharStyle:Code
+status collapsed
-).
- If there exists an internationalized version of the bindfile named
-\family typewriter
+\begin_layout Plain Layout
$LANG_xxx.bind
-\family default
-, that will be used first.
- See Chapter\SpecialChar ~
+\end_layout
-\begin_inset LatexCommand \ref{chap:i18n}
+\end_inset
-\end_inset
-
-, and section
-\begin_inset LatexCommand \ref{sec:bindings}
-
-\end_inset
+, that will be used first.
+\end_layout
-for details.
-\layout List
+\begin_layout Labeling
\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-
-\family typewriter
-\series medium
+\begin_layout Plain Layout
clipart/
-\family default
-\series default
+\end_layout
+
+\end_inset
+
contains graphics files that can be included in documents.
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\series medium
+\begin_layout Plain Layout
doc/
-\family default
-\series default
+\end_layout
+
+\end_inset
+
contains LyX documentation files (including the one you are currently reading).
The file
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
LaTeXConfig.lyx
-\family default
+\end_layout
+
+\end_inset
+
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\SpecialChar ~
+ The internationalized help docs are in subdirectories
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+doc/xx
+\end_layout
+
+\end_inset
+
+ where
+\begin_inset Quotes eld
+\end_inset
+
+xx
+\begin_inset Quotes erd
+\end_inset
+
+ is the ISO language code.
+ See chapter
+\begin_inset space ~
+\end_inset
+
-\begin_inset LatexCommand \ref{chap:i18n}
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "chap:i18n"
-\end_inset
+\end_inset
for details.
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\series medium
+\begin_layout Plain Layout
examples/
-\family default
-\series default
+\end_layout
+
+\end_inset
+
contains example files that explain how to use some features.
In the file browser, press the
-\family sans
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
Examples
-\family default
+\end_layout
+
+\end_inset
+
button to get there.
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
+\begin_layout Plain Layout
images/
-\family default
+\end_layout
+
+\end_inset
+
contains image files that are used by the
-\family sans
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
Document
-\family default
+\end_layout
+
+\end_inset
+
dialog.
In addition, it also contains the individual icons used in the toolbar
and the banners that can be shown when LyX is launched.
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\series medium
+\begin_layout Plain Layout
kbd/
-\family default
-\series default
+\end_layout
+
+\end_inset
+
contains keyboard keymapping files.
- See Chapter\SpecialChar ~
+ See Chapter
+\begin_inset space ~
+\end_inset
-\begin_inset LatexCommand \ref{sec:keymap}
-\end_inset
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:keymap"
+
+\end_inset
for details.
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\series medium
+\begin_layout Plain Layout
layouts/
-\family default
-\series default
- contains the text class files described in Chapter\SpecialChar ~
+\end_layout
+
+\end_inset
+
+ contains the text class and module files described in Chapter
+\begin_inset space ~
+\end_inset
+
-\begin_inset LatexCommand \ref{chap:textclass}
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "chap:textclass"
-\end_inset
+\end_inset
.
-\layout List
+\end_layout
+
+\begin_layout Labeling
\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+lyx2lyx
+\end_layout
-\family typewriter
-reLyX/
-\family default
- contains lots of files that together make up reLyX, the translator of
-\begin_inset Quotes eld
-\end_inset
+\end_inset
-well behaved
-\begin_inset Quotes erd
-\end_inset
+ contains the
+\begin_inset Flex CharStyle:Code
+status collapsed
- LaTeX into LyX.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+lyx2lyx
+\end_layout
+\end_inset
+
+ Python scripts used to convert between LyX versions.
+ These can be run from the command line if, say, you want to batch-convert
+ files.
+\end_layout
+
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
+\begin_layout Plain Layout
scripts/
-\family default
+\end_layout
+
+\end_inset
+
contains some files that demonstrate the capabilities of the
-\family sans
-External\SpecialChar ~
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+External
+\begin_inset space ~
+\end_inset
+
Template
-\family default
+\end_layout
+
+\end_inset
+
feature.
-\layout List
+ Also contains some scripts used by LyX itself.
+\end_layout
+
+\begin_layout Labeling
\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+templates/
+\end_layout
-\family typewriter
-templates/
-\family default
-contains the standard LyX template files described in Chapter\SpecialChar ~
+\end_inset
-\begin_inset LatexCommand \ref{sec:templates}
+ contains the standard LyX template files described in Chapter
+\begin_inset space ~
+\end_inset
-\end_inset
-.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:templates"
+\end_inset
-\family typewriter
-tex/
-\family default
- contains some LaTeX cls files distributed with LyX.
-\layout List
-\labelwidthstring 00.00.0000
+.
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
+\begin_layout Plain Layout
ui/
-\family default
+\end_layout
+
+\end_inset
+
contains files with the extension
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
.ui
-\family default
+\end_layout
+
+\end_inset
+
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\SpecialChar ~
-
-\begin_inset LatexCommand \ref{sec:ui}
-
-\end_inset
-
- for details.
-\layout Subsection
+\end_layout
+\begin_layout Subsection
Files you don't want to modify
-\layout Standard
+\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.
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\series medium
+\begin_layout Plain Layout
CREDITS
-\family default
-\series default
+\end_layout
+
+\end_inset
+
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\SpecialChar ~
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Help\SpecialChar \menuseparator
+About
+\begin_inset space ~
+\end_inset
+
LyX
-\family default
+\end_layout
+
+\end_inset
+
.
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\series medium
+\begin_layout Plain Layout
chkconfig.ltx
-\family default
-\series default
+\end_layout
+
+\end_inset
+
this is a LaTeX script used during the configuration process.
Do not run directly.
-\layout List
+\end_layout
+
+\begin_layout Labeling
\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+configure.py
+\end_layout
+
+\end_inset
-\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.
-\layout Subsection
+\end_layout
+\begin_layout Subsection
Other files needing a line or two...
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
+\begin_layout Plain Layout
encodings
-\family default
+\end_layout
+
+\end_inset
+
this contains tables describing how different character encodings can be
- mapped to unicode
-\layout List
-\labelwidthstring 00.00.0000
+ mapped to Unicode
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
+\begin_layout Plain Layout
external_templates
-\family default
+\end_layout
+
+\end_inset
+
this file contains the templates available to the new
-\family sans
-External\SpecialChar ~
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+External
+\begin_inset space ~
+\end_inset
+
Template
-\family default
+\end_layout
+
+\end_inset
+
feature.
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
+\begin_layout Plain Layout
languages
-\family default
- this file contains a list of all the languages currently supported by LyX.
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\end_inset
-\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.
-\layout Section
+ this file contains a list of all the languages currently supported by LyX.
+\end_layout
+\begin_layout Section
Your local configuration directory
-\layout Standard
+\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
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
UserDir
-\family default
+\end_layout
+
+\end_inset
+
directory contains all your personal configuration files.
This is the directory described as
\begin_inset Quotes eld
-\end_inset
+\end_inset
user directory
\begin_inset Quotes erd
-\end_inset
+\end_inset
in
-\family sans
-\bar under
-H
-\bar default
-elp\SpecialChar \menuseparator
-About\SpecialChar ~
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Help\SpecialChar \menuseparator
+About
+\begin_inset space ~
+\end_inset
+
LyX
-\family default
+\end_layout
+
+\end_inset
+
.
This directory is used as a mirror of
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
LyXDir
-\family default
+\end_layout
+
+\end_inset
+
, which means that every file in
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
UserDir
-\family default
+\end_layout
+
+\end_inset
+
is a replacement for the corresponding file in
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
LyXDir
-\family default
+\end_layout
+
+\end_inset
+
.
Any configuration file described in the above sections can be placed either
in the system-wide directory, in which case it will affect all users, or
in your local directory for your own use.
-\layout Standard
+\end_layout
+\begin_layout Standard
To make things clearer, let's provide a few examples:
-\layout Itemize
+\end_layout
+\begin_layout Itemize
The preferences set in the
-\family sans
-\bar under
-T
-\bar default
-ools\SpecialChar \menuseparator
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
+Preferences
+\end_layout
+
+\end_inset
-\bar under
-P
-\bar default
-references
-\family default
dialog are saved to a file
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
preferences
-\family default
- in
-\family typewriter
+\end_layout
+
+\end_inset
+
+ in
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
UserDir
-\family default
+\end_layout
+
+\end_inset
+
.
-\layout Itemize
+\end_layout
+\begin_layout Itemize
When you reconfigure using
-\family sans
-\bar under
-T
-\bar default
-ools\SpecialChar \menuseparator
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\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\SpecialChar ~
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
+Reconfigure
+\end_layout
-\begin_inset LatexCommand \ref{sec:autodetected}
+\end_inset
-\end_inset
+, LyX runs the
+\begin_inset Flex CharStyle:Code
+status collapsed
- to have a list of the
-\family typewriter
-preferences
-\family default
- settings affected by this section).
+\begin_layout Plain Layout
+configure.py
+\end_layout
+
+\end_inset
+
+ script, and the resulting files are written in your local configuration
+ directory.
This means that any additional text class file that you might have added
in
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
UserDir/layouts
-\family default
- will be added to the list of classes in the
-\family sans
-\bar under
-L
-\bar default
-ayout\SpecialChar \menuseparator
+\end_layout
-\bar under
-D
-\bar default
-ocument
-\family default
- dialog.
-\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
-collapsed true
+\end_inset
-\layout Standard
+ will be added to the list of classes in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-as long as LyX or yourself have a
-\family typewriter
-.layout
-\family default
- file for it, of course.
-\end_inset
+\begin_layout Plain Layout
+Document\SpecialChar \menuseparator
+Settings
+\end_layout
+\end_inset
-\layout Itemize
+ dialog.
+\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
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
UserDir/doc/
-\family default
+\end_layout
+
+\end_inset
+
and the items in the
-\family sans
-\bar under
-H
-\bar default
-elp
-\family default
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Help
+\end_layout
+
+\end_inset
+
menu will open them!
-\layout Section
+\end_layout
+\begin_layout Section
Running LyX with multiple configurations
-\layout Standard
+\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.
-\layout Standard
+\end_layout
+\begin_layout Standard
Invoking LyX with the command line switch
-\family typewriter
--userdir
-\family default
-\emph on
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+-userdir
+\end_layout
+
+\end_inset
+
+
+\emph on
<some directory>
-\emph default
+\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
+ not from the default directory.
+ (You can determine the default directory by running LyX without the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+-userdir
+\end_layout
+
+\end_inset
+
+ switch.) If the specified 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 user directory
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
-.
-\layout Standard
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LYX_USERDIR_VER
+\end_layout
+
+\end_inset
+
+ to some value has exactly the same effect.
+\end_layout
+\begin_layout Standard
Having several configurations also requires more maintenance: if you want
to add a new layout to
-\family typewriter
-Userdir/layouts
-\family default
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+NewUserDir/layouts
+\end_layout
+
+\end_inset
+
which you want available from all your configurations, you must add it
to each directory separately.
You can avoid this with the following trick: after LyX creates the additional
empty subdirectory with a symbolic link to the matching subdirectory in
the existing configuration.
Take care with the
-\family typewriter
-\series medium
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
doc/
-\family default
-\series default
- subirectory, however, since it contains a file written by the configuration
+\end_layout
+
+\end_inset
+
+ subdirectory, however, since it contains a file written by the configuration
script (also accessible through
-\family sans
-\bar under
-T
-\bar default
-ools\SpecialChar \menuseparator
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\bar under
-R
-\bar default
-econfigure
-\begin_inset LatexCommand \ref{sec:autodetected}
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
+Reconfigure
+\end_layout
-\end_inset
+\end_inset
-)
-\family default
- which is configuration-specific.
-\layout Chapter
+) which is configuration-specific.
+\end_layout
-The
-\family sans
-\bar under
-P
-\bar default
-references
-\family default
- dialog
-\layout Section
+\begin_layout Chapter
+The Preferences dialog
+\end_layout
+
+\begin_layout Standard
+All options of the preferences dialog are described in the Appendix
+\emph on
+The Preferences Dialog
+\emph default
+ in the
+\emph on
+User's Guide
+\emph default
+.
+ For some options you might find here more details.
+\end_layout
+\begin_layout Section
Using the dialog for the first time
-\layout Standard
+\end_layout
+\begin_layout Standard
The
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
UserDir/preferences
-\family default
- file will contain only changes that you have made to the default behaviour,
+\end_layout
+
+\end_inset
+
+ file will contain only changes that you have made to the default behavior,
some of which is hard-coded into LyX and some of which is contained in
the system file
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
LyXDir/lyxrc.defaults
-\family default
+\end_layout
+
+\end_inset
+
.
Note that in both files lines beginning with a
\begin_inset Quotes eld
-\end_inset
-
+\end_inset
-\family typewriter
#
-\family default
-
\begin_inset Quotes erd
-\end_inset
+\end_inset
- are just comments and not interpreted.
+ are just comments and are not interpreted.
However, only system administrators should edit
-\family typewriter
-LyXDir/lyxrc
-\family default
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LyXDir/lyxrc.defaults
+\end_layout
+
+\end_inset
+
.
- Users should use the
-\family sans
-
-\bar under
-T
-\bar default
-ools\SpecialChar \menuseparator
+ Users should use the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
+Preferences
+\end_layout
+
+\end_inset
-\bar under
-P
-\bar default
-references
-\family default
dialog to create and modify their own
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
UserDir/preferences
-\family default
+\end_layout
+
+\end_inset
+
file.
-\layout Standard
+\end_layout
+\begin_layout Standard
We hope that the
-\family sans
-\bar under
-T
-\bar default
-ools\SpecialChar \menuseparator
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
+Preferences
+\end_layout
+
+\end_inset
-\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.
+ Most things in the dialog have associated `tool tips': hover your mouse
+ pointer over something for more information.
Before we highlight a few of the more important commands below, however,
- a word of warning:
-\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.
+ a word of warning: Applying some of your changes (e.
+\begin_inset space \thinspace{}
+\end_inset
+
+g.
+\begin_inset space \space{}
+\end_inset
+
+screen fonts) will have an instant effect.
+ Others (e.
+\begin_inset space \thinspace{}
+\end_inset
+
+g.
+\begin_inset space \space{}
+\end_inset
+
+changing the bind file) will not.
If nothing appears to have changed, just
-\family sans
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
Save
-\family default
- the changes and restart LyX.
-\layout Section
-
-On-screen fonts
-\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.
-\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.
-\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.
-\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.
-\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.
-\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.
-\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.
-\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.
-\layout Subsection
-
-DPI setting and Font Zoom
-\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.
-\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
-.
-\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
+\end_layout
+\end_inset
-\family typewriter
-xdpyinfo | more
-\family default
+ the changes and restart LyX.
+\end_layout
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Section
+File Handling
+\end_layout
- 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
+\begin_layout Standard
+LyX has a powerful mechanism to convert to and from any file format using
+ external programs.
+
+\end_layout
-resolution
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Subsection
+\begin_inset CommandInset label
+LatexCommand label
+name "sub:Formats"
-.
- Also write down the number of pixels you have in the width (the first number
- under
-\begin_inset Quotes eld
-\end_inset
+\end_inset
-dimensions
-\begin_inset Quotes erd
-\end_inset
+Formats
+\end_layout
-).
-\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.
-\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.
-\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.
-\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\SpecialChar ~
-
-\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.
-\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.
-\layout Subsection
-
-Font definition commands
-\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.
-\layout Standard
-
-You can change all of these from within the
-\family sans
+\begin_layout Standard
+The first step is to define your file formats if they are not already defined.
+ To do so, open the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
Preferences
-\family default
+\end_layout
+
+\end_inset
+
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
+ Under
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-fndry
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+File Handling\SpecialChar \menuseparator
+File formats
+\end_layout
- and
-\begin_inset Quotes eld
-\end_inset
+\end_inset
-fmly
-\begin_inset Quotes erd
-\end_inset
+ press the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
- 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
+\begin_layout Plain Layout
+New\SpecialChar \ldots{}
-utopia
-\begin_inset Quotes erd
-\end_inset
+\end_layout
- 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
+\end_inset
-resx
-\begin_inset Quotes erd
-\end_inset
+ button to define your new format.
+ The
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
- or
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Plain Layout
+Format
+\end_layout
-resy
-\begin_inset Quotes erd
-\end_inset
+\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.
-\layout Standard
+ field contains the named used to identify the format in the GUI.
+ The
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-Before you go about scrapping a bitmap font because the larger sizes look
-
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Plain Layout
+Short Name
+\end_layout
-blocky
-\begin_inset Quotes erd
-\end_inset
+\end_inset
-, you should toggle the
-\begin_inset Quotes eld
-\end_inset
+ is used to identify the format internally.
+ You will also need to enter a file extension.
+ These are all required.
+ The optional
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-Use scalable fonts
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+Shortcut
+\end_layout
- 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.
-\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
+\end_inset
-Utopia
-\begin_inset Quotes erd
-\end_inset
+ field is used to provide a keyboard shortcut on the menus.
+ (For example, pressing
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
- for the serif text together with a bitmap version of
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Plain Layout
+Alt-V D
+\end_layout
-Helvetica
-\begin_inset Quotes erd
-\end_inset
+\end_inset
-.
- And you can safely select the
-\begin_inset Quotes eld
-\end_inset
+ will
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-Use scalable fonts
-\begin_inset Quotes erd
-\end_inset
-
- button without worries: It will only apply to the Helvetica font.
-\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.
-\layout Subsection
-
-Font encoding
-\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
+\begin_layout Plain Layout
+View\SpecialChar \menuseparator
+DVI
+\end_layout
-rgstry
-\begin_inset Quotes erd
-\end_inset
+\end_inset
+
+.)
+\end_layout
+
+\begin_layout Standard
+A Format can have a
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Viewer
+\end_layout
+
+\end_inset
and
-\begin_inset Quotes eld
-\end_inset
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-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.
-\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\SpecialChar ~
-of\SpecialChar ~
-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.
-\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.
-\layout Section
-
-Bindings
-\begin_inset LatexCommand \label{sec:bindings}
-
-\end_inset
-
-
-\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
-collapsed true
-
-\layout Standard
-
-I'm kidding here, of course!
-\end_inset
-
- as well as specialty bindings (broadway and hollywood) and other languages
- (French, German, etc.).
-\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.)
-\layout Standard
+\begin_layout Plain Layout
+Editor
+\end_layout
-LyX supports internationalization of the user interface (see Chapter\SpecialChar ~
+\end_inset
-\begin_inset LatexCommand \ref{chap:i18n}
+ associated with it.
+ For example, you might want to use
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\end_inset
+\begin_layout Plain Layout
+Ghostview
+\end_layout
-).
- 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.
-\layout Standard
+\end_inset
-The syntax of the
-\family typewriter
-.bind
-\family default
- files is straightforward:
-\layout Standard
+ to view PostScript files.
+ You can enter the command needed to start the program in the corresponding
+ fields.
+ In defining this command, you can use the four variables listed in the
+ next section.
+ The viewer is launched when you view an image in LyX or use the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+View
+\end_layout
+\end_inset
-\family typewriter
+ menu.
+ The editor is for example launched when you press the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\backslash
-bind <key combination> <lyx-function>
-\layout Standard
+\begin_layout Plain Layout
+Edit
+\end_layout
-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
-.
-\layout Section
+\end_inset
-User Interface
-\begin_inset LatexCommand \label{sec:ui}
+ button in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\end_inset
+\begin_layout Plain Layout
+Graphics
+\end_layout
+\end_inset
-\layout Standard
+ or the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+External material
+\end_layout
+
+\end_inset
-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.
-\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
+\end_layout
-file
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Standard
+The
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
- 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.
-\layout Section
+\begin_layout Plain Layout
+Document format
+\end_layout
-Converters, Formats and Viewers
-\layout Standard
+\end_inset
-LyX has a new and powerful mechanism to convert to and from any file format
- using external programs.
- Define a pair of formats, e.g.
+ option tells LyX that a format is suitable for document export.
+ If this is is set and if a suitable conversion route exists (see
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:Converters"
-\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.
-\layout Enumerate
+\end_inset
-A direct conversion, from LaTeX to PDF using pdflatex
-\layout Enumerate
+), the format will appear in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-A more convoluted route using intermediate formats and converters: LaTeX
- to DVI (using latex) to PostScript® (using dvips) to PDF (using ps2pdf).
-\layout Standard
+\begin_layout Plain Layout
+File\SpecialChar \menuseparator
+Export
+\end_layout
-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!
-\layout Standard
+\end_inset
-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
+ menu.
+ The format will also appear in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\bar under
-P
-\bar default
-references:Converters
-\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
-.
-\layout Section
-
-ASCII export options
-\layout Standard
-\added_space_top bigskip \noindent
-There are a couple of commands that can be used to
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Plain Layout
+View
+\end_layout
-clean up
-\begin_inset Quotes erd
-\end_inset
+\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.
-\layout Description
+ menu if a viewer is specified for the format.
+ Pure image formats, such as
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+png
+\end_layout
-\family typewriter
-\series medium
-ASCII\SpecialChar ~
-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.
-\layout Description
-
-
-\family typewriter
-\series medium
-ASCII\SpecialChar ~
-line\SpecialChar ~
-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.
-\layout Section
+\end_inset
-Printer
-\layout Standard
+, should not use this option.
+ Formats that can both represent vector graphics and documents like
+\begin_inset Flex CharStyle:Code
+status collapsed
-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.
-\layout Subsection
+\begin_layout Plain Layout
+pdf
+\end_layout
-Changing Colors
-\layout Standard
+\end_inset
-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:
-\layout Standard
-
-
-\family typewriter
-set-color LyXName X11Color
-\layout Standard
-
-Here is a (partial) list of the functions and default colors:
-\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
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-LyX Name
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-Purpose
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-Default Color (X11)
-\end_inset
-</cell>
-</row>
-<row topline="true">
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-background
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-text background
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-black
-\end_inset
-</cell>
-</row>
-<row topline="true">
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-foreground
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-text foreground
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-linen
-\end_inset
-</cell>
-</row>
-<row topline="true">
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-latex
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
+ should use it.
+\end_layout
-\layout Standard
+\begin_layout Standard
+The option
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+\begin_layout Plain Layout
+Vector graphics format
+\end_layout
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-LaTeX code
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-DarkRed
-\end_inset
-</cell>
-</row>
-<row topline="true">
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-math
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-Mathed formulae
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-DarkBlue
-\end_inset
-</cell>
-</row>
-<row topline="true">
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-mathline
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-fraction Lines, brackets, etc.
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-Blue
-\end_inset
-</cell>
-</row>
-<row topline="true">
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-mathbg
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
+\end_inset
-\layout Standard
+ tells LyX that a format can contain vector graphics.
+ This information is used to determine the target format of included graphics
+ for
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
+\begin_layout Plain Layout
+pdflatex
+\end_layout
-\layout Standard
+\end_inset
+ export.
+ Included graphics may need to be converted to either
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-AntiqueWhite
-\end_inset
-</cell>
-</row>
-<row topline="true">
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-mathframe
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
+\begin_layout Plain Layout
+pdf
+\end_layout
-\layout Standard
+\end_inset
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
+,
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\layout Standard
+\begin_layout Plain Layout
+png
+\end_layout
+\end_inset
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-Magenta
-\end_inset
-</cell>
-</row>
-<row topline="true">
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-mathcursor
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
+, or
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\layout Standard
+\begin_layout Plain Layout
+jpg
+\end_layout
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
+\end_inset
-\layout Standard
+, since
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+\begin_layout Plain Layout
+pdflatex
+\end_layout
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-black
-\end_inset
-</cell>
-</row>
-<row topline="true" bottomline="true">
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-selection
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-selection background
-\end_inset
-</cell>
-<cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\layout Standard
-
-
-\family roman
-\series medium
-\shape up
-\size normal
-\emph off
-\bar no
-\noun off
-\color none
-LightBlue
-\end_inset
-</cell>
-</row>
-</lyxtabular>
+\end_inset
-\end_inset
+ cannot handle other image formats.
+ If an included graphic is not already in
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+\begin_layout Plain Layout
+pdf
+\end_layout
-\layout Section
+\end_inset
-The autodetected settings
-\layout Standard
+,
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+\begin_layout Plain Layout
+png
+\end_layout
-\begin_inset LatexCommand \label{sec:autodetected}
+\end_inset
-\end_inset
+, or
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-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.
-\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.
-\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.
-\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).
-\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.
-\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.
-\layout Section
-
-The rest
-\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.
-\layout Chapter
+\begin_layout Plain Layout
+jpg
+\end_layout
-Internationalizing LyX
-\begin_inset LatexCommand \label{chap:i18n}
+\end_inset
-\end_inset
+ format, it is converted to
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+\begin_layout Plain Layout
+pdf
+\end_layout
-\layout Standard
+\end_inset
-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).
-\layout Standard
+ if the vector format option is set, and otherwise to
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-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.
- We'll try to fix these shortcomings in future versions of LyX.
-\layout Section
+\begin_layout Plain Layout
+png
+\end_layout
-Selecting an alternative language for the user interface
-\layout Standard
+\end_inset
-This feature is disabled by default, meaning that the text will be English.
- 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 for the language you want.
- For instance,
-\family typewriter
-no
-\family default
- is Norwegian.
-\layout Standard
-
-Normally, you'll want to put the appropriate line in
-\family typewriter
-~/.Xsession
-\family default
- or
-\family typewriter
-~/.xinitrc
-\family default
- so that the translation is on by default.
- Remember that if LyX is configured and compiled with
-\begin_inset Quotes eld
-\end_inset
+\end_layout
+\begin_layout Subsection
+Copiers
+\end_layout
-\family typewriter
---disable-nls
-\family default
+\begin_layout Standard
+Since all conversions from one format to another take place in LyX's temporary
+ directory, it is sometimes necessary to modify a file before copying it
+ to the temporary directory in order that the conversion may be performed.
+\begin_inset Foot
+status collapsed
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+For example, the file may refer to other files—images, for example—using
+ relative file names, and these may become invalid when the file is copied
+ to the temporary directory.
+\end_layout
-, this will not work.
-\layout Section
+\end_inset
-Translating LyX
-\layout Subsection
+ This is done by a Copier: It copies a file to (or from) the temporary directory
+ and may modify it in the process.
+\end_layout
-Translating the graphical user interface (text messages).
-\layout Standard
+\begin_layout Standard
+The definitions of the copiers may use four variables:
+\end_layout
-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):
-\layout Standard
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+$$s
+\end_layout
-\begin_inset ERT
-status Inlined
+\end_inset
-\layout Standard
+ The LyX system directory (e.
+\begin_inset space \thinspace{}
+\end_inset
-\backslash
-begin{sloppypar}
-\end_inset
+g.
+\begin_inset space \space{}
+\end_inset
-\layout Itemize
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-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).
-\layout Itemize
+\begin_layout Plain Layout
+/usr/share/lyx
+\end_layout
-Edit
-\family typewriter
-xx.po
-\begin_inset Foot
-collapsed true
+\end_inset
-\layout Standard
+).
+\end_layout
-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_inset
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+$$i
+\end_layout
-\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.
-\layout Itemize
+\end_inset
-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
-\layout Itemize
+ The input file
+\end_layout
-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
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\newline
-(e.g.
-
-\family typewriter
-/usr/local/share/locale/
-\family default
-\series bold
-xx
-\family typewriter
-\series default
-/LC_MESSAGES/lyx.mo
-\family default
-)
-\layout Standard
+\begin_layout Plain Layout
+$$o
+\end_layout
+\end_inset
-\begin_inset ERT
-status Inlined
+ The output file
+\end_layout
-\layout Standard
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\backslash
-end{sloppypar}
-\end_inset
+\begin_layout Plain Layout
+$$l
+\end_layout
+\end_inset
-\layout Standard
+ The `LaTeX name'
+\end_layout
-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.
-\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.
-\layout Subsection
+\begin_layout Standard
+The latter should be the filename as it would be used in a LaTeX's
+\series bold
-Translating the documentation.
-\layout Standard
+\backslash
+include
+\series default
+ command.
+ It is relevant only when exporting files suitable for such inclusion.
+\end_layout
-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
-collapsed true
+\begin_layout Standard
+Copiers can be used to do almost anything with output files.
+ For example, suppose you want generated pdf files to be copied to a special
+ directory,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\layout Standard
+\begin_layout Plain Layout
+/home/you/pdf/
+\end_layout
-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 ther languages, with other translations
- in progress.
- The library of translated documents is growing rapidly.
-\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:
-\layout Itemize
+\end_inset
-Read
-\family typewriter
-DocStyle.lyx
-\family default
-, the guide to writing LyX documentation.
- Pay special attention to the translator's section.
-\layout Itemize
+.
+ Then you could write a shell script such as this one:
+\end_layout
-Check out the documentation translation web page at
-\begin_inset LatexCommand \url[The LyX Developer's Web Site]{http://www.devel.lyx.org}
+\begin_layout Standard
+\begin_inset listings
+inline false
+status open
-\end_inset
+\begin_layout Plain Layout
-.
- 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.
-\layout Standard
+#!/bin/bash
+\end_layout
-Once you get to actually translating, here's a few hints for you that may
- save you trouble:
-\layout Itemize
+\begin_layout Plain Layout
-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
+FROMFILE=$1
+\end_layout
-\bar under
-I
-\bar default
-ntroduction
-\family default
-), which by the way is the first document you should translate.
-\layout Itemize
+\begin_layout Plain Layout
-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!)
-\layout Itemize
+TOFILE=`basename $2`
+\end_layout
-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.
-\layout Itemize
+\begin_layout Plain Layout
-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/}
+cp $FROMFILE /home/you/pdf/$TOFILE
+\end_layout
-\end_inset
+\end_inset
- to see what has been changed
-\begin_inset Foot
-collapsed true
+Save that in your local LyX directory—say,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\layout Standard
+\begin_layout Plain Layout
+/home/you/.lyx/scripts/pdfcopier.sh
+\end_layout
-Alternatively, you can keep a copy of the latest version of the English
- document which you've translated.
-\end_inset
+\end_inset
-.
- That way you can easily see which parts of the translated document need
- to be updated.
-\layout Itemize
+—and make it executable, if you need to do so on your platform.
+ Then, in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-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?)
-\layout Section
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
+Preferences
+\end_layout
-International Keyboard Support
-\layout Standard
+\end_inset
+ dialog, select under
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\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]
-\layout Subsection
+\begin_layout Plain Layout
+File Handling\SpecialChar \menuseparator
+File formats
+\end_layout
-Defining Own Keymaps: Keymap File Format
-\layout Standard
+\end_inset
-Let's look at a keyboard definition file a little closer.
- It is a plain ASCII file defining
-\layout Itemize
+ the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-key-to-key or key-to-string translations
-\layout Itemize
+\begin_layout Plain Layout
+PDF(pdflatex)
+\end_layout
-dead keys
-\layout Itemize
+\end_inset
-dead keys exceptions
-\layout Standard
+ format—or one of the other pdf formats—and enter
+\begin_inset Flex CharStyle:Code
+status collapsed
-To define key-to-key or key-to-string translation, use this command:
-\layout Quotation
+\begin_layout Plain Layout
+pdfcopier.sh $$i $$o
+\end_layout
+\end_inset
-\family typewriter
+ into the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\backslash
-kmap
-\family default
-
-\family typewriter
-key
-\emph on
-
-\emph default
-outstring
-\layout Standard
+\begin_layout Plain Layout
+Copier
+\end_layout
-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:
-\layout Quotation
+\end_inset
+ field.
+
+\end_layout
-\family typewriter
+\begin_layout Standard
+Copiers are used by LyX in various of its own conversions.
+ For example, if appropriate programs are found, LyX will automatically
+ install copiers for the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\backslash
-kmod
-\family default
-
-\family typewriter
-key
-\family default
-
-\family typewriter
-deadkey
-\layout Standard
+\begin_layout Plain Layout
+HTML
+\end_layout
-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):
-\layout Quotation
+\end_inset
+ and
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\emph on
-Name
-\hfill
-Example
-\layout Quotation
+\begin_layout Plain Layout
+HTML
+\begin_inset space ~
+\end_inset
-acute (acu)
-\hfill
-áéíóú
-\layout Quotation
+(MS Word)
+\end_layout
-grave (gra)
-\hfill
-àèìòù
-\layout Quotation
+\end_inset
-macron (mac)
-\hfill
- \i \={o}
+ formats.
+ When these formats are exported, the copier sees that not just the main
+ HTML file but various associated files (style files, images, etc.) are also
+ copied.
+ All these files are written to a subdirectory of the directory in which
+ the original LyX file was found.
+\begin_inset Foot
+status collapsed
-\layout Quotation
+\begin_layout Plain Layout
+This copier can be customized.
+ The optional
+\begin_inset Quotes eld
+\end_inset
-tilde (til)
-\hfill
-ñÑ
-\layout Quotation
+-e
+\begin_inset Quotes erd
+\end_inset
-underbar (underb)
-\hfill
+ argument takes a comma-separated list of extensions to be copied; if it
+ is omitted, all files will be copied.
+ The
+\begin_inset Quotes eld
+\end_inset
-\begin_inset ERT
-status Inlined
+-t
+\begin_inset Quotes erd
+\end_inset
-\layout Standard
+ argument determines the extension added to the generated directory.
+ By default, it is
+\begin_inset Quotes eld
+\end_inset
-\backslash
-b o
-\end_inset
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\layout Quotation
+\begin_layout Plain Layout
+LyXconv
+\end_layout
-cedilla (ced)
-\hfill
-çÇ
-\layout Quotation
+\end_inset
-underdot (underd)
-\hfill
-\begin_inset ERT
-status Inlined
+\begin_inset Quotes erd
+\end_inset
-\layout Standard
+, so HTML generated from
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\backslash
-d o
-\end_inset
+\begin_layout Plain Layout
+/path/to/filename.lyx
+\end_layout
+\end_inset
-\layout Quotation
+ will end up in
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-circumflex (circu)
-\hfill
-âêîôû
-\layout Quotation
+\begin_layout Plain Layout
+/path/to/filename.html.LyXconv
+\end_layout
-circle (circl)
-\hfill
-Å\i \r{u}
-\i \r{U}
+\end_inset
-\layout Quotation
+.
+
+\end_layout
-tie (tie)
-\hfill
+\end_inset
-\begin_inset ERT
-status Inlined
-\layout Standard
+\end_layout
-\backslash
-t o
-\end_inset
+\begin_layout Subsection
+\begin_inset CommandInset label
+LatexCommand label
+name "sub:Converters"
+\end_inset
-\layout Quotation
+Converters
+\end_layout
-breve (bre)
-\hfill
-\i \u{a}
+\begin_layout Standard
+You can define your own Converters to convert files between different formats.
+ This is done in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\begin_inset ERT
-status Inlined
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
+Preferences\SpecialChar \menuseparator
+File Handling\SpecialChar \menuseparator
+Converters
+\end_layout
-\layout Standard
+\end_inset
-\backslash
-u o
-\end_inset
+ dialog.
+\end_layout
+\begin_layout Standard
+To define a new converter, select the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\layout Quotation
+\begin_layout Plain Layout
+From
+\begin_inset space ~
+\end_inset
-caron (car)
-\hfill
-\i \v{c}
-\i \v{s}
-\i \v{z}
+format
+\end_layout
-\layout Quotation
+\end_inset
-hungarian umlaut (hug)
-\hfill
-\i \H{o}
-\i \H{u}
+ and
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\layout Quotation
+\begin_layout Plain Layout
+To
+\begin_inset space ~
+\end_inset
-umlaut (uml)
-\hfill
-äöü
-\layout Quotation
+format
+\end_layout
-dot (dot)
-\hfill
-\i \.{z}
+\end_inset
-\begin_inset ERT
-status Inlined
+ from the drop-down lists, enter the command needed for the conversion,
+ and then press the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\layout Standard
+\begin_layout Plain Layout
+Add
+\end_layout
-\backslash
-.s
-\end_inset
+\end_inset
+ button.
+ Several variables can be used in the definition of converters:
+\end_layout
-\layout Standard
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-Since in many international keyboards there are exceptions to what some
- dead keys should do, you can define them using
-\layout Quotation
+\begin_layout Plain Layout
+$$s
+\end_layout
+\end_inset
-\family typewriter
+ The LyX system directory
+\end_layout
-\backslash
-kxmod
-\family default
-
-\family typewriter
-deadkey key outstring
-\layout Standard
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-For example, on Slovak keyboard, if you enter caron-o, it generates circumflex-o
-, so you put in
-\layout Quotation
+\begin_layout Plain Layout
+$$i
+\end_layout
+\end_inset
-\family typewriter
+ The input file
+\end_layout
-\backslash
-kxmod
-\family default
-
-\family typewriter
-caron o "
-\backslash
-^o"
-\layout Standard
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-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.
-\layout Standard
+\begin_layout Plain Layout
+$$o
+\end_layout
-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
+\end_inset
-\backslash
-"
-\family default
-, to enter
-\family typewriter
-#
-\family default
-, use
-\family typewriter
+ The output file
+\end_layout
-\backslash
-#
-\family default
-.
-\layout Standard
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-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.
-\layout Standard
+\begin_layout Plain Layout
+$$b
+\end_layout
-More keywords will be supported in keymap configuration file in future,
- like
-\layout Itemize
+\end_inset
+ The base filename of the input file (i.
+\begin_inset space \thinspace{}
+\end_inset
-\family typewriter
+g., without the extension)
+\end_layout
-\backslash
-kinclude filename
-\family default
-\emph on
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\hfill
+\begin_layout Plain Layout
+$$p
+\end_layout
-\family typewriter
-\emph default
-include
-\family default
- another file
-\layout Itemize
+\end_inset
+ The path to the input file
+\end_layout
-\family typewriter
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\backslash
-kprog program
-\family default
-\emph on
+\begin_layout Plain Layout
+$$r
+\end_layout
-\hfill
+\end_inset
-\family typewriter
-\emph default
-define
-\family default
- an external keymap translation program
-\layout Standard
+ The path to the original input file (this is different from $$p when chain
+ of converters is called).
+\end_layout
-Also, it should look into
-\family typewriter
-lyxrc
-\family default
- file for defaults, too (for example, a
-\family typewriter
+\begin_layout Standard
+In the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\backslash
-kinclude
-\family default
- option to include default keyboard).
-\layout Section
+\begin_layout Plain Layout
+Extra
+\begin_inset space ~
+\end_inset
-International Keymap Stuff
-\begin_inset LatexCommand \label{sec:keymap}
+Flag
+\end_layout
-\end_inset
+\end_inset
+ field you can enter the following flags, separated by commas:
+\end_layout
-\layout Standard
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-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.
-\layout Subsection
+\begin_layout Plain Layout
+latex
+\end_layout
-The .kmap File
-\layout Standard
+\end_inset
-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.
-\layout List
-\labelwidthstring 00.00.0000
+ This converter runs some form of LaTeX.
+ This will make LyX's LaTeX error logs available.
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\shape up
-kmap
-\family default
-\shape default
- Map a character to a string
-\layout LyX-Code
+\begin_layout Plain Layout
+needaux
+\end_layout
+\end_inset
-\backslash
-kmap
-\family roman
-\emph on
-char
-\emph default
-
-\emph on
-string
-\layout Standard
+ Needs the LaTeX
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-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
+\begin_layout Plain Layout
+.aux
+\end_layout
-\backslash
+\end_inset
-\shape default
-)
-\family default
-.
-\layout Standard
+ file for the conversion.
+\end_layout
-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:
-\layout LyX-Code
-
-
-\backslash
-kmap & /
-\layout List
+\begin_layout Labeling
\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+xml
+\end_layout
-\family typewriter
-\shape up
-kmod
-\family default
-\shape default
- Specify an accent character
-\layout LyX-Code
+\end_inset
+ Output is XML.
+\end_layout
-\backslash
-kmod
-\family roman
-
-\emph on
-char accent allowed
-\layout Standard
+\begin_layout Standard
+The following three flags are not really flags at all because they take
+ an argument in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-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
-collapsed true
+\begin_layout Plain Layout
+key
+\begin_inset space ~
+\end_inset
-\layout Standard
+=
+\begin_inset space ~
+\end_inset
-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_inset
+value
+\end_layout
- mechanism.
-
-\layout Standard
+\end_inset
-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.
-
-\layout Standard
+ format:
+\end_layout
-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:
-\layout LyX-Code
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+parselog
+\end_layout
-\backslash
-kmod ' acute aeiouAEIOU
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ If set, the converter's standard error will be redirected to a file
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-ksmod
-\family default
- Specify an exception to the accent character
-\layout LyX-Code
+\begin_layout Plain Layout
+infile.out
+\end_layout
+\end_inset
-\backslash
-kxmod
-\family sans
-\emph on
-
-\family roman
-accent char result
-\layout Standard
+, and the script given as argument will be run as:
+\begin_inset Flex CharStyle:Code
+status collapsed
-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
+\begin_layout Plain Layout
+script <infile.out >infile.log
+\end_layout
-\backslash
-kmod
-\family default
-\shape default
- declaration.
-
-\layout Standard
+\end_inset
-The following command produces causes äi to be produced when you enter acute-i
- ('i):
-\layout LyX-Code
+.
+ The argument may contain
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+$$s
+\end_layout
-\backslash
-kxmod acute i "
-\backslash
+\end_inset
-\backslash
-'{
-\backslash
+.
+\end_layout
-\backslash
-i}"
-\layout List
+\begin_layout Labeling
\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+resultdir
+\end_layout
-\family typewriter
-kcomb
-\family default
- Combine two accent characters
-\layout LyX-Code
+\end_inset
+ The name of the directory in which the converter will dump the generated
+ files.
+ LyX will not create this directory, and it does not copy anything into
+ it, though it will copy this directory to the destination.
+ The argument may contain
+\begin_inset Flex CharStyle:Code
+status collapsed
-\backslash
-kcomb
-\family roman
-\emph on
-accent1 accent2 allowed
-\layout Standard
+\begin_layout Plain Layout
+$$b
+\end_layout
-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
+\end_inset
-\backslash
-kmod
-\family default
-\shape default
- command at
-\family roman
-a
-\emph on
-previous
-\emph default
- point in the
-\family default
-file.
-
-\layout Standard
+, which will be replaced by the base name of the input and output files,
+ respectively, when the directory is copied.
+\begin_inset Newline newline
+\end_inset
-Consider this example from the
-\family typewriter
-\shape up
-greek.kmap
-\family default
-\shape default
- file:
-\layout LyX-Code
+Note that resultdir and usetempdir make no sense together.
+ The latter will be ignored if the former is given.
+\end_layout
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\backslash
-kmod ; acute aeioyvhAEIOYVH
-\backslash
-kmod : umlaut iyIY
-\backslash
-kcomb acute umlaut iyIY
-\layout Standard
+\begin_layout Plain Layout
+resultfile
+\end_layout
-This allows you to press
-\family sans
-\shape up
-;:i
-\family default
-\shape default
- and get the effect of
-\family typewriter
-\shape up
+\end_inset
+
+ Determines the output file name and may, contain
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+$$b
+\end_layout
+
+\end_inset
-\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
.
-\layout Subsection
+ Sensible only with resultdir and optional even then; if not given, it defaults
+ to `index'.
+\end_layout
+
+\begin_layout Standard
+None of these last three are presently used in any of the converters that
+ are installed with LyX.
+
+\end_layout
+
+\begin_layout Standard
+You do not have to define converters between all the formats between which
+ you want to convert.
+ For example, you will note that there is no `LyX to PostScript' converter,
+ but LyX will export PostScript.
+ It does so by first creating a LaTeX file (no converter needs to be defined
+ for this) which is then converted to DVI using the `LaTeX to DVI' converter,
+ and finally converting the resulting DVI file to PostScript.
+ LyX finds such `chains' of converters automatically, and it will always
+ choose the shortest possible chain.
+ You can, though, still define multiple conversion methods between file
+ formats.
+ For example, the standard LyX configuration provides three ways to convert
+ LaTeX to PDF: Directly, using
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+pdflatex
+\end_layout
+
+\end_inset
+
+; via (DVI and) PostScript, using
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+ps2pdf
+\end_layout
+
+\end_inset
+
+; or via DVI, using
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+dvipdfm
+\end_layout
+
+\end_inset
-The .cdef File
-\layout Standard
+.
+ To define such alternate chains, you must define multiple target `file
+ formats', as described in section
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:Formats"
-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.
-\layout Standard
+\end_inset
-In general the
-\family typewriter
-\shape up
-.cdef
-\family sans
-
-\family default
-\shape default
-file is a sequence of declarations of the form
-\layout LyX-Code
+.
+ For example, in the standard configuration, the formats named
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+\begin_layout Plain Layout
+pdf
+\end_layout
-\family roman
-\emph on
-char_index_in_set
-\emph default
-
-\emph on
- string
-\layout Standard
+\end_inset
-For example, in order to map
-\family sans
-\shape up
+,
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\backslash
-'{e}
-\family default
-\shape default
- to the corresponding character in the iso-8859-1 set (233), the following
- declaration is used
-\layout LyX-Code
+\begin_layout Plain Layout
+pdf2
+\end_layout
-233 "
-\backslash
+\end_inset
-\backslash
-'{e}"
-\layout Standard
+, and
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-with
-\family typewriter
+\begin_layout Plain Layout
+pdf3
+\end_layout
-\backslash
+\end_inset
-\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
-\layout LyX-Code
+ are defined, all of which share the extension
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-192 "
-\backslash
+\begin_layout Plain Layout
+.pdf
+\end_layout
-\backslash
-'{
-\backslash
+\end_inset
-\backslash
+, and which correspond to the conversion methods just mentioned.
+\end_layout
-\backslash
-"{i}}"
-\newline
-192 "
-\backslash
+\begin_layout Chapter
+Internationalizing LyX
+\begin_inset CommandInset label
+LatexCommand label
+name "chap:i18n"
-\backslash
+\end_inset
-\backslash
-"{
-\backslash
-\backslash
-'{i}}"
-\layout Standard
+\end_layout
-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.
-\layout Subsection
+\begin_layout Standard
+LyX supports using a translated interface.
+ Last time we checked, LyX provided text in thirty languages.
+ The language of choice is called your
+\emph on
+locale
+\emph default
+.
+ (For further reading on locale settings, see also the documentation for
+ locale that comes with your operating system.
+ For Linux, the manual page for
+\begin_inset Flex CharStyle:Code
+status collapsed
-Dead Keys
-\layout Standard
+\begin_layout Plain Layout
+locale(5)
+\end_layout
-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.
-\layout Standard
+\end_inset
-Suppose you happen to need the circumflex character,
-\begin_inset Quotes eld
-\end_inset
+ could be a good place to start).
+\end_layout
-\i \^{}
+\begin_layout Standard
+Notice that these translations will work, but do contain a few flaws.
+ In particular, all dialogs have been designed with the English text in
+ mind, which means that some of the translated text will be too large to
+ fit within the space allocated.
+ This is only a display problem and will not cause any harm.
+ Also, you will find that some of the translations do not define shortcut
+ keys for everything.
+ Sometimes, there are simply not enough free letters to do it.
+ Other times, the translator just hasn't got around to doing it yet.
+ Our localization team, which you may wish to join,
+\begin_inset Foot
+status collapsed
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+If you are a fluent speaker of a language other than English, joining these
+ teams is a great way to give back to the LyX community!
+\end_layout
-.
- You could bind the
-\family sans
-^
-\family default
--key [a.k.a.\SpecialChar ~
+\end_inset
-\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
+ will of course try to fix these shortcomings in future versions of LyX.
+\end_layout
+\begin_layout Section
+Translating LyX
+\end_layout
-\family sans
-^e
-\family default
+\begin_layout Subsection
+Translating the graphical user interface (text messages).
+\end_layout
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Standard
+LyX uses the GNU
+\begin_inset Flex CharStyle:Code
+status collapsed
- produces the letter:
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Plain Layout
+gettext
+\end_layout
-ê
-\begin_inset Quotes erd
-\end_inset
+\end_inset
-.
- If you tried to type
-\begin_inset Quotes eld
-\end_inset
+ library to handle the internationalization of the interface.
+ To have LyX speak your favorite language in all menus and dialogs, you
+ need a
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+po
+\end_layout
-\family sans
-^t
-\family default
+\end_inset
-\begin_inset Quotes erd
-\end_inset
+-file for that language.
+ When this is available, you'll have to generate a
+\begin_inset Flex CharStyle:Code
+status collapsed
-, however, LyX will complain with a beep, since a
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Plain Layout
+mo
+\end_layout
+\end_inset
-\family sans
-t
-\family default
+-file from it and install the
+\begin_inset Flex CharStyle:Code
+status collapsed
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+mo
+\end_layout
- 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.
-\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
+\end_inset
+-file.
+ The process of doing all of this is explained in the documentation for
+ GNU
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-~
-\family default
+\begin_layout Plain Layout
+gettext
+\end_layout
-\begin_inset Quotes erd
-\end_inset
+\end_inset
- or
-\begin_inset Quotes eld
-\end_inset
+.
+ It is possible to do this just for yourself, but if you're going to do
+ it, you might as well share the results of your labors with the rest of
+ the LyX community.
+ Send a message to the LyX developers' list for more information about how
+ to proceed.
+\end_layout
+
+\begin_layout Standard
+In short, this is what you should do (xx denotes the language code):
+\end_layout
+
+\begin_layout Itemize
+Check out the LyX source code.
+ (See the
+\begin_inset CommandInset href
+LatexCommand href
+name "information on the web"
+target "http://www.lyx.org/devel/cvs.php"
+
+\end_inset
+
+.)
+\end_layout
+
+\begin_layout Itemize
+Copy the file
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+lyx.pot
+\end_layout
+\end_inset
-\family sans
-,
-\family default
+ to the folder of the
+\begin_inset Flex CharStyle:Code
+status collapsed
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+**.po
+\end_layout
- or
-\begin_inset Quotes eld
-\end_inset
+\end_inset
+ files.
+ Then rename it to
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-^
-\family default
+\begin_layout Plain Layout
+xx.po
+\end_layout
-\begin_inset Quotes erd
-\end_inset
+\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
-collapsed true
-
-\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\SpecialChar ~
-Lock
-\family default
- key set up as
-\family typewriter
-Mode_Shift
-\family default
- and a bunch of these
-\begin_inset Quotes eld
-\end_inset
+ (If
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+lyx.pot
+\end_layout
-\family typewriter
-usldead_*
-\family default
+\end_inset
-\begin_inset Quotes erd
-\end_inset
+ doesn't exist anywhere, it can be remade with the console command
+\begin_inset Flex CharStyle:Code
+status collapsed
- symbolic keys bound such things as
-\family sans
-Scroll\SpecialChar ~
-Lock-^
-\family default
- and
-\family sans
-Scroll\SpecialChar ~
-Lock-~
-\family default
-.
- This is how I produce my accented characters.
-\end_inset
+\begin_layout Plain Layout
+make lyx.pot
+\end_layout
- 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.
-\layout Subsection
+\end_inset
-Saving your Language Configuration
-\layout Standard
+ in that directory, or you can use an existing po-file for some other language
+ as a template).
+\end_layout
+\begin_layout Itemize
+Edit
+\begin_inset Flex CharStyle:Code
+status collapsed
-\begin_inset LatexCommand \label{sec:savlang}
+\begin_layout Plain Layout
+xx.po
+\end_layout
-\end_inset
+\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
+.
+\begin_inset Foot
+status collapsed
-\bar under
-P
-\bar default
-references
-\family default
- dialog.
-\layout Chapter
+\begin_layout Plain Layout
+This is just a text file, so it can be edited in any text editor.
+ But there are also specialized programs that support such editing, such
+ as
+\family typewriter
+Poedit
+\family default
+ (for all platforms) or
+\family typewriter
+KBabel
+\family default
+ (for KDE).
+
+\family typewriter
+Emacs
+\family default
+ contains a `mode' for editing
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+po
+\end_layout
-Installing New Document Classes, Layouts, and Templates
-\begin_inset LatexCommand \label{chap:textclass}
+\end_inset
-\end_inset
+ files, as well.
+\end_layout
+\end_inset
-\begin_inset OptArg
-collapsed true
+ For some menu- and widget-labels, there are also shortcut keys that should
+ be translated.
+ Those keys are marked after a `|', and should be translated according to
+ the words and phrases of the language.
+ You should also fill also out the information at the beginning of the new
+
+\begin_inset Flex CharStyle:Code
+status collapsed
-\layout Standard
+\begin_layout Plain Layout
+po
+\end_layout
-Installing New Document Classes
-\end_inset
+\end_inset
+-file with your email-address, etc., so people know where to reach you with
+ suggestions and entertaining flames.
+\end_layout
-\layout Standard
+\begin_layout Standard
+If you are just doing this on your own, then:
+\end_layout
-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
+\begin_layout Itemize
+Generate
+\begin_inset Flex CharStyle:Code
+status collapsed
-draw
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+xx.mo
+\end_layout
- 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
+\end_inset
-text class
-\begin_inset Quotes erd
-\end_inset
+.
+ This can be done with
+\begin_inset Flex CharStyle:Code
+status collapsed
- which is the internal construct LyX uses to render the screen display.
-
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Plain Layout
+msgfmt -o xx.mo < xx.po
+\end_layout
-Layout
-\begin_inset Quotes erd
-\end_inset
+\end_inset
- and
-\begin_inset Quotes eld
-\end_inset
+.
+\end_layout
-text class
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Itemize
+Copy the
+\begin_inset Flex CharStyle:Code
+status collapsed
- 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.
-\layout Section
+\begin_layout Plain Layout
+mo
+\end_layout
-Installing a new LaTeX package
-\layout Standard
+\end_inset
-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.
+-file to your locale-tree, at the correct directory for application messages
+ for the language
+\series bold
-\layout Enumerate
-
-Get the package from CTAN or wherever.
-\begin_inset Foot
-collapsed true
-
-\layout Standard
+\series default
+xx, and under the name
+\begin_inset Flex CharStyle:Code
+status collapsed
-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_inset
+\begin_layout Plain Layout
+lyx.mo
+\end_layout
+\end_inset
-\layout Enumerate
+ (e.
+\begin_inset space \thinspace{}
+\end_inset
-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:
-\begin_deeper
-\layout Enumerate
-
-Set
-\family typewriter
-TEXMFLOCAL
-\family default
- to the directory you chose; e.g.
-
-\newline
+g.
+\begin_inset space \space{}
+\end_inset
-\family typewriter
-TEXMFLOCAL = /usr/local/texmf
-\layout Enumerate
-Make sure
-\family typewriter
-TEXMF
-\family default
- includes the
-\family typewriter
-TEXMFLOCAL
-\family default
- variable; e.g.
-
-\newline
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-TEXMF = {$HOMETEXMF,!!$TEXMFLOCAL,!!$TEXMFMAIN}
-\end_deeper
-\layout Enumerate
+\begin_layout Plain Layout
+/usr/local/share/locale/xx/LC_MESSAGES/lyx.mo
+\end_layout
-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
-).
-\layout Enumerate
+\end_inset
-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.
-\layout Enumerate
-Run:
-\family typewriter
-texhash
-\family default
+\series bold
.
- This should create
-\family typewriter
-/usr/local/texmf/ls-R
-\family default
-amongst others.
-\layout Enumerate
-
-From within LyX, do:
-\family sans
-\bar under
-T
-\bar default
-ools\SpecialChar \menuseparator
+\end_layout
-\bar under
-R
-\bar default
-econfigure
-\family default
-.
- Restart LyX.
-\layout Standard
+\begin_layout Standard
+As said, however, it would be best if the new
+\begin_inset Flex CharStyle:Code
+status collapsed
-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
+\begin_layout Plain Layout
+po
+\end_layout
-\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.
-\layout Section
+\end_inset
-Layouts
-\layout Standard
+-file could be added to the LyX distribution, so others can use it.
+ Adding it involves making additional changes to LyX.
+ So send an email to the developers' mailing list if you're interested in
+ doing that.
+\end_layout
-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.
-
-\layout Standard
+\begin_layout Subsubsection
+Ambiguous messages
+\end_layout
-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.
-\layout Standard
+\begin_layout Standard
+Sometimes it turns out that one English message needs to be translated into
+ different messages in the target language.
+ One example is the message
+\begin_inset Flex CharStyle:Code
+status collapsed
-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
+\begin_layout Plain Layout
+To
+\end_layout
-string
-\begin_inset Quotes erd
-\end_inset
+\end_inset
+ which has the German translation
+\lang german
+Nach
+\lang english
or
+\lang german
+Bis
+\lang english
+, depending upon exactly what the English
\begin_inset Quotes eld
-\end_inset
+\end_inset
-float
+to
\begin_inset Quotes erd
-\end_inset
+\end_inset
-, the default is shown like this:
-\family typewriter
-float=
-\emph on
-default
-\family default
-\emph default
-.
-\layout Subsection
+ means.
+ GNU
+\begin_inset Flex CharStyle:Code
+status collapsed
-Supporting new document classes
-\layout Standard
+\begin_layout Plain Layout
+gettext
+\end_layout
-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.
-\layout Subsection
+\end_inset
-A layout for an
-\family sans
-sty
-\family default
- file
-\layout Standard
+ does not handle such ambiguous translations.
+ Therefore you have to add some context information to the message: Instead
+ of
+\begin_inset Flex CharStyle:Code
+status collapsed
-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.
-\layout LyX-Code
+\begin_layout Plain Layout
+To
+\end_layout
-cp report.layout ~/.lyx/layouts/myclass.layout
-\layout Standard
+\end_inset
-Then edit
-\family typewriter
-myclass.layout
-\family default
- and change the line:
-\layout LyX-Code
+ it becomes
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+To[[as in 'From format x to format y']]
+\end_layout
-\backslash
-DeclareLaTeXClass{report}
-\layout Standard
+\end_inset
-to read
-\layout LyX-Code
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+To[[as in 'From page x to page y']].
+\end_layout
-\backslash
-DeclareLaTeXClass[report, myclass.sty]{report (myclass)}
-\layout Standard
+\end_inset
-Then add:
-\layout LyX-Code
+ Now the two occurrences of
+\begin_inset Flex CharStyle:Code
+status collapsed
-Preamble
-\newline
-
-\backslash
-usepackage{myclass}
-\newline
-EndPreamble
-\layout Standard
+\begin_layout Plain Layout
+To
+\end_layout
-near the top of the file.
-\layout Standard
+\end_inset
-Start LyX and select
-\family sans
-\bar under
-T
-\bar default
-ools\SpecialChar \menuseparator
+ are different for
+\begin_inset Flex CharStyle:Code
+status collapsed
-\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
-collapsed true
+\begin_layout Plain Layout
+gettext
+\end_layout
-\layout Standard
+\end_inset
+ and can be translated correctly to
+\lang german
+Nach
+\lang english
+ and
+\lang german
+Bis
+\lang english
+, respectively.
+\end_layout
+
+\begin_layout Standard
+Of course the context information needs to be stripped off the original
+ message when no translation is used.
+ Therefore you have to put it in double square brackets at the end of the
+ message (see the example above).
+ The translation mechanism of 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
-\family typewriter
-report
-\family default
- in this example
-\end_inset
+\begin_layout Standard
+The online documentation (in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
- works, so you can fiddle around with the settings for the different sections
- if you wish.
- See below for more discussion on this.
-\layout Subsection
+\begin_layout Plain Layout
+Help
+\end_layout
-Layout for a
-\family sans
-cls
-\family default
- file
-\layout Standard
+\end_inset
-In this case, you will probably have to
-\begin_inset Quotes eld
-\end_inset
+-menu) can (and should!) be translated.
+ If there are translated versions of the documentation available
+\begin_inset Foot
+status collapsed
-roll your own
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+As of March 2008, at least some of the documents have been translated into
+ fourteen languages, with the Tutorial available in a few more.
+\end_layout
- 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.
-\layout Section
+\end_inset
-Declaring a new text class
-\layout Standard
+ and the locale is set accordingly, these will be used automagically by
+ LyX.
+ LyX looks for translated versions as
+\begin_inset Flex CharStyle:Code
+status collapsed
-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.
-\layout Standard
+\begin_layout Plain Layout
+LyXDir/doc/xx/DocName.lyx
+\end_layout
-Here we go!
-\layout Standard
+\end_inset
-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:
-\layout LyX-Code
+, where
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+xx
+\end_layout
-\size small
-#% Do not delete the line below; configure depends on this
-\layout LyX-Code
+\end_inset
+ is the code for the language currently in use.
+ If there are no translated documents, the default English versions will
+ be displayed.
+ Note that the translated versions must have the same filenames (
+\begin_inset Flex CharStyle:Code
+status collapsed
-\size small
-#
-\backslash
-DeclareLaTeXClass{article}
-\layout Standard
+\begin_layout Plain Layout
+DocName
+\end_layout
-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
+\end_inset
-article
-\begin_inset Quotes erd
-\end_inset
+ above) as the original.
+ If you feel up to translating the documentation (an excellent way to proof-read
+ the original documentation by the way!), there are a few things you should
+ do right away:
+\end_layout
- 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.
-\layout Standard
+\begin_layout Itemize
+Read
+\begin_inset Flex CharStyle:Code
+status collapsed
-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:
-\layout LyX-Code
+\begin_layout Plain Layout
+DocStyle.lyx
+\end_layout
+\end_inset
-\size small
-#% Do not delete the line below; configure depends on this
-\layout LyX-Code
+, 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 CommandInset href
+LatexCommand href
+name "http://www.lyx.org/Translation"
+target "http://www.lyx.org/Translation"
-\size small
-#
-\backslash
-DeclareLaTeXClass[article]{article (with my own headings)}
-\layout Standard
+\end_inset
-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
+.
+ 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
-article (with my own headings)
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Standard
+Once you get to actually translating, here's a few hints for you that may
+ save you trouble:
+\end_layout
-.
- If your text class depends on several packages, you can declare it as:
-\layout LyX-Code
+\begin_layout Itemize
+Join the documentation team! There is information on how to do that in
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Intro.lyx
+\end_layout
-\size small
-#% Do not delete the line below; configure depends on this
-\layout LyX-Code
+\end_inset
+ (
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\size small
-#
-\backslash
-DeclareLaTeXClass[article,foo.sty]{article (with my own headings)}
-\layout Standard
+\begin_layout Plain Layout
+Help\SpecialChar \menuseparator
-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
-\layout LyX-Code
+\bar under
+I
+\bar default
+ntroduction
+\end_layout
+\end_inset
-\size small
-#% Do not delete the line below; configure depends on this
-\layout LyX-Code
+), 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
-\size small
-#
-\backslash
-DeclareSGMLClass{SGML (LinuxDoc)}
-\layout Standard
+\begin_layout Itemize
+Make a copy of the document.
+ This will be your working copy.
+ You can use this as your personal translated help-file by placing it in
+ your
+\begin_inset Flex CharStyle:Code
+status collapsed
-or
-\layout LyX-Code
+\begin_layout Plain Layout
+UserDir/doc/xx/
+\end_layout
-#% Do not delete the line below; configure depends on this
-\layout LyX-Code
+\end_inset
-#
-\backslash
-DeclareDocBookClass[article]{SGML (DocBook article)}
-\layout Standard
+ directory.
+\end_layout
-Note that these declarations can also be given an optional parameter declaring
- the name of the document class (but not a list).
-\layout Standard
+\begin_layout Itemize
+Sometimes the original document (from the LyX-team) will be updated.
+ Use the source viewer at
+\begin_inset CommandInset href
+LatexCommand href
+name "http://www.lyx.org/trac/timeline"
+target "http://www.lyx.org/trac/timeline"
-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
+\end_inset
-\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.
-\layout Subsection
+ to see what has been changed.
+ That way you can easily see which parts of the translated document need
+ to be updated.
+\end_layout
-General text class parameters
-\layout Standard
+\begin_layout Standard
+If you ever find an error in the original document, fix it and notify the
+ rest of the documentation team of the changes! (You didn't forget to join
+ the documentation team, did you?)
+\end_layout
-These are the general parameters which describe the form of the entire document:
-\layout Standard
+\begin_layout Standard
+\begin_inset Branch OutDated
+status collapsed
+\begin_layout Section
+International Keyboard Support
+\end_layout
-\begin_inset ERT
-status Inlined
+\begin_layout Standard
-\layout Standard
+\emph on
+[Editor's Note: The following section is by
+\emph default
+
+\shape smallcaps
+\emph on
+Ivan Schreter
+\shape default
+.
+ It needs to be fixed to conform to the new Documentation Style sheet and
+ to make use of the new v1.0 features.
+ The whole thing also needs to be merged with the section following it.-jw
+ It may also be badly out of date.-rh (2008)]
+\end_layout
-\backslash
-begin{sloppypar}
-\end_inset
+\begin_layout Subsection
+Defining Own Keymaps: Keymap File Format
+\end_layout
+\begin_layout Standard
+Let's look at a keyboard definition file a little closer.
+ It is a plain text file defining
+\end_layout
-\layout Description
+\begin_layout Itemize
+key-to-key or key-to-string translations
+\end_layout
+\begin_layout Itemize
+dead keys
+\end_layout
-\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
+\begin_layout Itemize
+dead keys exceptions
+\end_layout
-\bar under
-S
-\bar default
-ettings.
-\layout Description
+\begin_layout Standard
+To define key-to-key or key-to-string translation, use this command:
+\end_layout
+\begin_layout Quotation
+\begin_inset Flex CharStyle:Code
+status collapsed
-\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.
-\layout Description
+\begin_layout Plain Layout
+\backslash
+kmap
+\end_layout
-\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.
-\layout Description
-
-
-\family typewriter
-\series medium
-MaxCounter
-\family default
-\series default
- [
-\family typewriter
-\emph on
-Counter_Chapter
-\emph default
-, Counter_Section, Counter_Subsection, Counter_Subsubsection, Counter_Paragraph,
-
-\newline
-Counter_Subparagraph, Counter_EnumI, Counter_EnumII,
-\newline
-Counter_EnumIII, Counter_EnumIV
-\family default
-] The highest level of automatic enumeration.
- Useful values are
-\family typewriter
-Counter_Chapter
-\family default
- for a book or report and
-\family typewriter
-Counter_Section
-\family default
- for an article.
- If there is no enumeration needed at all, for example inside a letter class,
-
-\family typewriter
-MaxCounter
-\family default
- should be set to
-\family typewriter
-Counter_EnumI
-\family default
-.
-
-\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\SpecialChar ~
+\end_inset
-\begin_inset LatexCommand \ref{sec:classoptions}
+
+\begin_inset Flex CharStyle:Code
+status collapsed
-\end_inset
+\begin_layout Plain Layout
+key
+\end_layout
- for a description.
-\layout Description
+\end_inset
+ outstring
+\end_layout
-\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.
-\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.
-\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.
-\layout Description
-
-
-\family typewriter
-\series medium
-DefaultFont
-\family default
-\series default
- This is used to describe the default font of the document.
- See Section\SpecialChar ~
+\begin_layout Standard
+where
+\begin_inset Flex CharStyle:Code
+status collapsed
-\begin_inset LatexCommand \ref{sec:fonts}
+\begin_layout Plain Layout
+key
+\end_layout
-\end_inset
+\end_inset
- for a description.
-\layout Description
+ is the key to be translated and
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+outstring
+\end_layout
-\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.
-\layout Description
+\end_inset
+ is the string to be inserted into the document.
+ To define dead keys, use:
+\end_layout
-\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
-TitleLaTeXCommand
-\family default
- will be inserted after the last layout which has
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Quotation
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\family typewriter
-InTitle 1
-\family default
+\backslash
+kmod
+\end_layout
-\begin_inset Quotes erd
-\end_inset
+\end_inset
-.
-\family typewriter
-Environment
-\family default
- corresponds to the case where the block of paragraphs which have
-\begin_inset Quotes eld
-\end_inset
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+key
+\end_layout
-\family typewriter
-InTitle 1
-\family default
+\end_inset
-\begin_inset Quotes erd
-\end_inset
+ deadkey
+\end_layout
- should be enclosed into the
-\family typewriter
- TitleLaTeXCommand
-\family default
-environment
-\family typewriter
-.
-\layout Description
+\begin_layout Standard
+where
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+key
+\end_layout
-\family typewriter
-\series medium
-TitleLatexCommand
-\family default
-\series default
- [
-\family typewriter
-string="maketitle"
-\family default
-] The name of the command/environment mentionned above.
-\layout Description
+\end_inset
+ is a keyboard key and
+\begin_inset Flex CharStyle:Code
+status collapsed
-\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.
-\layout Description
+\begin_layout Plain Layout
+deadkey
+\end_layout
+\end_inset
-\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.
-\layout Description
+ is dead key name.
+ The following dead keys are supported (shortcut name is in parentheses):
+\end_layout
+\begin_layout Quotation
-\family typewriter
-\series medium
-Style\SpecialChar \ldots{}
-End
-\family default
-\series default
- This sequence defines a new style.
- See Section\SpecialChar ~
+\emph on
+Name
+\begin_inset space \hfill{}
+\end_inset
-\begin_inset LatexCommand \ref{sec:style}
+Example
+\end_layout
-\end_inset
+\begin_layout Quotation
+acute (acu)
+\begin_inset space \hfill{}
+\end_inset
- for details.
-\layout Description
+áéíóú
+\end_layout
+\begin_layout Quotation
+grave (gra)
+\begin_inset space \hfill{}
+\end_inset
-\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.
-\layout Description
+àèìòù
+\end_layout
+\begin_layout Quotation
+macron (mac)
+\begin_inset space \hfill{}
+\end_inset
-\family typewriter
-\series medium
-Float\SpecialChar \ldots{}
-End
-\family default
-\series default
- This sequance defines a new float.
- See Section\SpecialChar ~
+ ō
+\end_layout
-\begin_inset LatexCommand \ref{sec:floats}
+\begin_layout Quotation
+tilde (til)
+\begin_inset space \hfill{}
+\end_inset
-\end_inset
+ñÑ
+\end_layout
- for details.
-\layout Description
+\begin_layout Quotation
+underbar (underb)
+\begin_inset space \hfill{}
+\end_inset
-\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.
-\layout Description
+\begin_inset ERT
+status open
+\begin_layout Plain Layout
-\family typewriter
-\series medium
-Counter\SpecialChar \ldots{}
-End
-\family default
-\series default
- This sequence defines a new counter.
- See Section\SpecialChar ~
-\begin_inset LatexCommand \ref{sec:counter}
+\backslash
+b o
+\end_layout
-\end_inset
+\end_inset
- for details.
-\layout Standard
+\end_layout
-\begin_inset ERT
-status Inlined
+\begin_layout Quotation
+cedilla (ced)
+\begin_inset space \hfill{}
+\end_inset
-\layout Standard
+çÇ
+\end_layout
-\backslash
-end{sloppypar}
-\end_inset
+\begin_layout Quotation
+underdot (underd)
+\begin_inset space \hfill{}
+\end_inset
-\layout Subsection
+\begin_inset ERT
+status open
+\begin_layout Plain Layout
-\family typewriter
-ClassOptions
-\family default
- section
-\layout Standard
+\backslash
+d o
+\end_layout
-\begin_inset LatexCommand \label{sec:classoptions}
+\end_inset
-\end_inset
-The
-\family typewriter
-ClassOptions
-\family default
- section can contain the following entries:
-\layout Description
+\end_layout
+\begin_layout Quotation
+circumflex (circu)
+\begin_inset space \hfill{}
+\end_inset
-\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
+âêîôû
+\end_layout
+\begin_layout Quotation
+circle (circl)
+\begin_inset space \hfill{}
+\end_inset
-\family typewriter
-|
-\family default
+ÅůŮ
+\end_layout
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Quotation
+tie (tie)
+\begin_inset space \hfill{}
+\end_inset
-.
-\layout Description
+\begin_inset ERT
+status open
-\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
+\begin_layout Plain Layout
-\family typewriter
-|
-\family default
+\backslash
+t o
+\end_layout
-\begin_inset Quotes erd
-\end_inset
+\end_inset
-.
-\layout Description
+\end_layout
-\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
+\begin_layout Quotation
+breve (bre)
+\begin_inset space \hfill{}
+\end_inset
-\backslash
-documentclass
-\family default
- command.
-\layout Subsection
+ă
+\begin_inset ERT
+status open
-Specific Paragraph Layouts
-\layout Standard
+\begin_layout Plain Layout
-\begin_inset LatexCommand \label{sec:style}
+\backslash
+u o
+\end_layout
-\end_inset
+\end_inset
-A paragraph layout description looks like this
-\begin_inset Foot
-collapsed true
-\layout Standard
+\end_layout
-Note that this will either define a new layout or modify an existing one.
-\end_inset
+\begin_layout Quotation
+caron (car)
+\begin_inset space \hfill{}
+\end_inset
-:
-\layout LyX-Code
+čšž
+\end_layout
-Style
-\family roman
-\emph on
-name
-\layout LyX-Code
+\begin_layout Quotation
+hungarian umlaut (hug)
+\begin_inset space \hfill{}
+\end_inset
- ...
-\layout LyX-Code
+őű
+\end_layout
-End
-\layout Standard
+\begin_layout Quotation
+umlaut (uml)
+\begin_inset space \hfill{}
+\end_inset
-where the following commands are allowed:
-\layout Standard
+äöü
+\end_layout
+\begin_layout Quotation
+dot (dot)
+\begin_inset space \hfill{}
+\end_inset
+ż
\begin_inset ERT
-status Inlined
+status open
-\layout Standard
+\begin_layout Plain Layout
-\backslash
-begin{sloppypar}
-\end_inset
+\backslash
+.s
+\end_layout
-\layout Description
+\end_inset
-\family typewriter
-\series medium
-CopyStyle
-\family default
-\series default
- This is used to copy all the features of an existing layout into the current
- one.
-
-\layout Description
+\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
-\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
+\begin_layout Quotation
+\begin_inset Flex CharStyle:Code
+status collapsed
-\backslash
+\begin_layout Plain Layout
-\emph on
-LatexName
-\emph default
-{\SpecialChar \ldots{}
-}
-\family default
- and
-\family typewriter
-Environment
-\family default
- means
-\family typewriter
+\backslash
+kxmod
+\end_layout
-\backslash
-begin{
-\emph on
-LatexName
-\emph default
-}\SpecialChar \ldots{}
+\end_inset
-\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
+ deadkey key outstring
+\end_layout
-\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
+\begin_layout Standard
+For example, on Slovak keyboard, if you enter caron-o, it generates circumflex-o
+, so you put in
+\end_layout
-\bar under
-P
-\bar default
-aragraph
-\family default
- dialog.
-
-\family typewriter
-\emph on
-LatexName
-\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.
-\layout Description
+\begin_layout Quotation
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\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
-TitleLatexCommand
-\family default
- global entries)
-\layout Description
+\backslash
+kxmod
+\end_layout
+\end_inset
-\family typewriter
-\series medium
-LatexName
-\family default
-\series default
- The name of the corresponding LaTeX stuff.
- Either the environment or command name.
-\layout Description
+ 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
-\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.
-\layout Description
+\begin_layout Standard
+Oh, and about characters: backslash is escaped, so to enter it, you'll need
+ double backslash.
+ Also, quotes and
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+#
+\end_layout
-\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
+\end_inset
-\bar under
-P
-\bar default
-aragraph\SpecialChar ~
-Settings
-\family default
- dialog.
- This is used to typeset nice lists without tabulators.
+ have different meaning.
-\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
+\begin_inset Flex CharStyle:Code
+status collapsed
-5.4.3.2.1 Very long headline
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+#
+\end_layout
- must have a wider left margin (as wide as
-\begin_inset Quotes eld
-\end_inset
+\end_inset
-5.4.3.2.1
-\begin_inset Quotes erd
-\end_inset
+ marks comments, quotes start and end LaTeX-style commands.
+ To enter quote, you'll need to use
+\begin_inset Flex CharStyle:Code
+status collapsed
- plus the space) than
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Plain Layout
-3.2 Very long headline
-\begin_inset Quotes erd
-\end_inset
+\backslash
+"
+\end_layout
-, 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.
-\layout Description
+\end_inset
+, to enter
+\begin_inset Flex CharStyle:Code
+status collapsed
-\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.
-\layout Description
+\begin_layout Plain Layout
+#
+\end_layout
+\end_inset
-\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.
-\layout Description
+, use
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\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
+\backslash
+#
+\end_layout
-indent
-\begin_inset Quotes erd
-\end_inset
+\end_inset
- or
-\begin_inset Quotes eld
-\end_inset
+.
+\end_layout
-skip
-\begin_inset Quotes erd
-\end_inset
+\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
- to typeset a document.
- When
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Standard
+More keywords will be supported in keymap configuration file in future,
+ like
+\end_layout
-indent
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Itemize
+\begin_inset Flex CharStyle:Code
+status collapsed
- is chosen, this value is completely ignored.
- When
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Plain Layout
-skip
-\begin_inset Quotes erd
-\end_inset
+\backslash
+kinclude filename
+\end_layout
- is chosen, the parindent of a LaTeXtype
-\begin_inset Quotes eld
-\end_inset
+\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.
-\layout Description
+\emph on
+
+\begin_inset space \hfill{}
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+include
+\end_layout
+
+\end_inset
+
+ another file
+\end_layout
+
+\begin_layout Itemize
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+kprog program
+\end_layout
+
+\end_inset
+
+
+\emph on
+
+\begin_inset space \hfill{}
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+define
+\end_layout
+
+\end_inset
+
+ an external keymap translation program
+\end_layout
+
+\begin_layout Standard
+Also, it should look into
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+lyxrc
+\end_layout
+
+\end_inset
+
+ file for defaults, too (for example, a
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+kinclude
+\end_layout
+
+\end_inset
+
+ option to include default keyboard).
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Section
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:keymap"
+
+\end_inset
+
+International Keymap Stuff
+\end_layout
+
+\begin_layout Standard
+\begin_inset Note Note
+status open
+
+\begin_layout Plain Layout
+In doing the revisions on this document in March 2008, I did not look over
+ this stuff, as I do not understand it.
+ It would be good if someone else could do so.
+ (RH)
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+The next two sections describe the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+.kmap
+\end_layout
+
+\end_inset
+
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+.cdef
+\end_layout
+
+\end_inset
+
+ file syntax in detail.
+ These sections should help you design your own key map if the ones provided
+ do not meet your needs.
+\end_layout
+
+\begin_layout Subsection
+The .kmap File
+\end_layout
+
+\begin_layout Standard
+A
+\shape up
+.
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+kmap
+\end_layout
+
+\end_inset
+
+ file maps keystrokes to characters or strings.
+ As the name suggests, it sets a keyboard mapping.
+ The
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.kmap
+\end_layout
+
+\end_inset
+
+
+\shape default
+ file keywords
+\shape up
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+kmap
+\end_layout
+
+\end_inset
+
+
+\shape default
+,
+\shape up
+
+\shape default
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+kmod
+\end_layout
+
+\end_inset
+
+,
+\shape up
+
+\shape default
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+ksmod
+\end_layout
+
+\end_inset
+
+, and
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+kcomb
+\end_layout
+
+\end_inset
+
+ are described in this section.
+\end_layout
+
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+kmap
+\end_layout
+
+\end_inset
+
+ Map a character to a string
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+kmap
+\family roman
+\emph on
+char
+\family default
+\emph default
+
+\family roman
+\emph on
+string
+\end_layout
+
+\begin_layout Standard
+This will ma
+\family roman
+p
+\family default
+
+\family roman
+\emph on
+char
+\family default
+\emph default
+
+\family roman
+to
+\family default
+
+\family roman
+\emph on
+string
+\emph default
+.
+ Note that in
+\family default
+
+\family roman
+\emph on
+string
+\emph default
+,
+\family default
+
+\family roman
+\shape up
+the double-quote (")
+\family default
+\shape default
+
+\family roman
+and
+\family default
+
+\family roman
+\shape up
+the backslash (
+\backslash
+)
+\family default
+\shape default
+
+\family roman
+must be escaped with a preceding backslash (
+\shape up
+
+\backslash
+
+\shape default
+)
+\family default
+.
+\end_layout
+
+\begin_layout Standard
+An example of a
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+kmap
+\end_layout
+
+\end_inset
+
+ statement to cause the symbol
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+/
+\end_layout
+
+\end_inset
+
+ to be output for the keystroke
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+&
+\end_layout
+
+\end_inset
+
+ is:
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+kmap & /
+\end_layout
+
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+kmod
+\end_layout
+
+\end_inset
+
+ Specify an accent character
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+kmod
+\family roman
+\emph on
+char accent allowed
+\end_layout
+
+\begin_layout Standard
+This will make the cha
+\family roman
+racter
+\family default
+
+\family roman
+\emph on
+char
+\family default
+\emph default
+
+\family roman
+\shape up
+\emph on
+be an accent
+\family default
+\shape default
+\emph default
+
+\family roman
+\shape up
+on the
+\family default
+\shape default
+
+\family roman
+\shape up
+\emph on
+allowed
+\family default
+\shape default
+\emph default
+
+\family roman
+\shape up
+cha
+\family default
+racter(s).
+ This is the dead key
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+The term
+\family roman
+\emph on
+dead key
+\family default
+\emph default
+ refers to a key that does not produce a character by itself, but when followed
+ with another key, produces the desired accent character.
+ For example, a German characte
+\family roman
+r with an umlaut like
+\family default
+
+\family roman
+\emph on
+ä
+\family default
+\emph default
+
+\family roman
+can be produced in this manner.
+\end_layout
+
+\end_inset
+
+ mechanism.
+
+\end_layout
+
+\begin_layout Standard
+If you
+\family roman
+hit
+\family default
+
+\family roman
+\emph on
+char
+\family default
+\emph default
+
+\family roman
+and then another key not in
+\family default
+
+\family roman
+\emph on
+allowed
+\emph default
+, you will get a
+\family default
+
+\family roman
+\emph on
+char
+\family default
+\emph default
+
+\family roman
+followed by the other, not allowed key, as output.
+
+\family default
+ Note that a
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+Backspace
+\end_layout
+
+\end_inset
+
+ cancels a dead key, so if
+\family roman
+you hit
+\family default
+
+\family roman
+\emph on
+char
+\family default
+\emph default
+
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+\emph on
+Backspace
+\end_layout
+
+\end_inset
+
+, the cursor will not go one position backwards but will instead cancel
+ the effect t
+\family roman
+hat
+\family default
+
+\family roman
+\shape up
+\emph on
+char
+\family default
+\shape default
+\emph default
+
+\family roman
+\shape up
+might have had on the next keystroke.
+
+\end_layout
+
+\begin_layout Standard
+The following example specifies that the character ' is to be an acute accent,
+ allowed on the characters a, e, i, o, u, A, E, I, O, and U:
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+kmod ' acute aeiouAEIOU
+\end_layout
+
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+ksmod
+\end_layout
+
+\end_inset
+
+ Specify an exception to the accent character
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+kxmod
+\family roman
+\emph on
+accent char result
+\end_layout
+
+\begin_layout Standard
+This defines an exce
+\family roman
+ption for
+\family default
+
+\family roman
+\emph on
+accent
+\family default
+\emph default
+
+\family roman
+on
+\family default
+
+\family roman
+\emph on
+char
+\emph default
+.
+ T
+\shape up
+he
+\family default
+\shape default
+
+\family roman
+\shape up
+\emph on
+accent
+\family default
+\shape default
+\emph default
+
+\family roman
+\shape up
+must
+\family default
+\shape default
+
+\shape up
+have been assigned a keystroke with a previous
+\shape default
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+
+\backslash
+kmo
+\shape default
+d
+\end_layout
+
+\end_inset
+
+ declar
+\family roman
+ation and
+\family default
+
+\family roman
+\emph on
+char
+\family default
+\emph default
+
+\family roman
+must not belong in the
+\family default
+
+\family roman
+\emph on
+allowed
+\family default
+\emph default
+
+\family roman
+set of
+\family default
+
+\family roman
+\emph on
+accent
+\emph default
+.
+ When
+\family default
+
+\family roman
+\shape up
+you enter the
+\family default
+\shape default
+
+\family roman
+\shape up
+\emph on
+accent char
+\family default
+\shape default
+\emph default
+
+\family roman
+\shape up
+sequence,
+\family default
+\shape default
+
+\family roman
+\shape up
+\emph on
+result
+\emph default
+ is produced.
+ If such a declaration does not exist in
+\family default
+\shape default
+
+\shape up
+the
+\shape default
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+.kmap
+\end_layout
+
+\end_inset
+
+ file and yo
+\family roman
+u enter
+\family default
+
+\family roman
+\emph on
+accent char
+\emph default
+, you get
+\family default
+
+\family roman
+\emph on
+accent_key char
+\emph default
+ where
+\family default
+
+\family roman
+\emph on
+accent_key
+\emph default
+ is the first arg
+\family default
+ument of the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+
+\backslash
+kmod
+\end_layout
+
+\end_inset
+
+ declaration.
+
+\end_layout
+
+\begin_layout Standard
+The following command produces causes äi to be produced when you enter acute-i
+ ('i):
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+kxmod acute i "
+\backslash
+
+\backslash
+'{
+\backslash
+
+\backslash
+i}"
+\end_layout
+
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+kcomb
+\end_layout
+
+\end_inset
+
+ Combine two accent characters
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+kcomb
+\family roman
+\emph on
+accent1 accent2 allowed
+\end_layout
+
+\begin_layout Standard
+This one is getting pretty esoteric.
+ It allows you to combine the effect
+\family roman
+of
+\family default
+
+\family roman
+\emph on
+accent1
+\family default
+\emph default
+
+\family roman
+and
+\family default
+
+\family roman
+\emph on
+accent2
+\family default
+\emph default
+
+\family roman
+(in that order!) on
+\family default
+
+\family roman
+\emph on
+allowed
+\family default
+\emph default
+
+\family roman
+chars.
+ The keystrokes for
+\family default
+
+\family roman
+\emph on
+accent1
+\family default
+\emph default
+
+\family roman
+and
+\family default
+
+\family roman
+\emph on
+accent2
+\family default
+\emph default
+
+\family roman
+must have be
+\family default
+en set with a
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+
+\backslash
+kmod
+\end_layout
+
+\end_inset
+
+ command at
+\family roman
+a
+\family default
+
+\family roman
+\emph on
+previous
+\family default
+\emph default
+
+\family roman
+point in the
+\family default
+ file.
+
+\end_layout
+
+\begin_layout Standard
+Consider this example from the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+greek.kmap
+\end_layout
+
+\end_inset
+
+ file:
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+kmod ; acute aeioyvhAEIOYVH
+\backslash
+kmod : umlaut iyIY
+\backslash
+kcomb acute umlaut iyIY
+\end_layout
+
+\begin_layout Standard
+This allows you to press
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+;:i
+\end_layout
+
+\end_inset
+
+ and get the effect of
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+
+\backslash
+'{
+\backslash
+"{i}}
+\end_layout
+
+\end_inset
+
+.
+
+\family roman
+\shape up
+A backspace
+\family default
+\shape default
+ in this case cancels the last dead key, so if you press
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+;: Backspace i
+\end_layout
+
+\end_inset
+
+ you get
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+
+\backslash
+'{i}
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsection
+The .cdef File
+\end_layout
+
+\begin_layout Standard
+After the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+.kmap
+\end_layout
+
+\end_inset
+
+ mapping is performed, a
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+.cde
+\shape default
+f
+\end_layout
+
+\end_inset
+
+ file maps the strings that the symbols generate to characters in the current
+ font.
+ The LyX distribution currently includes at least the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+iso8859-1.cdef
+\end_layout
+
+\end_inset
+
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+iso8859-2.cdef
+\end_layout
+
+\end_inset
+
+ files.
+\end_layout
+
+\begin_layout Standard
+In general the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+.cdef
+\end_layout
+
+\end_inset
+
+ file is a sequence of declarations of the form
+\end_layout
+
+\begin_layout LyX-Code
+
+\family roman
+\emph on
+char_index_in_set
+\family default
+\emph default
+
+\family roman
+\emph on
+ string
+\end_layout
+
+\begin_layout Standard
+For example, in order to map
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+
+\shape up
+
+\backslash
+'{e}
+\end_layout
+
+\end_inset
+
+ to the corresponding character in the iso-8859-1 set (233), the following
+ declaration is used
+\end_layout
+
+\begin_layout LyX-Code
+233 "
+\backslash
+
+\backslash
+'{e}"
+\end_layout
+
+\begin_layout Standard
+with
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+
+\end_layout
+
+\end_inset
+
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+"
+\end_layout
+
+\end_inset
+
+ being escap
+\family roman
+ed in
+\family default
+
+\family roman
+\emph on
+string
+\emph default
+.
+ Note that
+\family default
+ the same character can apply to more than one string.
+ In the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+i
+\shape up
+so-8859-7.cdef
+\end_layout
+
+\end_inset
+
+ file you have
+\end_layout
+
+\begin_layout LyX-Code
+192 "
+\backslash
+
+\backslash
+'{
+\backslash
+
+\backslash
+
+\backslash
+"{i}}"
+\begin_inset Newline newline
+\end_inset
+
+192 "
+\backslash
+
+\backslash
+
+\backslash
+"{
+\backslash
+
+\backslash
+'{i}}"
+\end_layout
+
+\begin_layout Standard
+If LyX cannot find a mapping for the string produced by the keystroke or
+ a deadkey sequence, it will check if it looks like an accented char and
+ try to draw an accent over the character on screen.
+\end_layout
+
+\begin_layout Subsection
+Dead Keys
+\end_layout
+
+\begin_layout Standard
+There is a second way to add support for international characters through
+ so-called dead-keys.
+ A dead-key works in combination with a letter to produce an accented character.
+ Here, we'll explain how to create a really simple dead-key to illustrate
+ how they work.
+\end_layout
+
+\begin_layout Standard
+Suppose you happen to need the circumflex character,
+\begin_inset Quotes eld
+\end_inset
+
+ ̂
+\begin_inset Quotes erd
+\end_inset
+
+.
+ You could bind the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+^
+\end_layout
+
+\end_inset
+
+-key [a.k.a.
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Shift-6
+\end_layout
+
+\end_inset
+
+] to the LyX command
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+accent-circumflex
+\end_layout
+
+\end_inset
+
+ in your
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+lyxrc
+\end_layout
+
+\end_inset
+
+ file.
+ Now, whenever you type the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+^
+\end_layout
+
+\end_inset
+
+-key followed by a letter, that letter will have a circumflex accent on
+ it.
+ For example, the sequence
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+^e
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+ produces the letter:
+\begin_inset Quotes eld
+\end_inset
+
+ê
+\begin_inset Quotes erd
+\end_inset
+
+.
+ If you tried to type
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+^t
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+, however, LyX will complain with a beep, since a
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+t
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+ never takes a circumflex accent.
+ Hitting
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Space
+\end_layout
+
+\end_inset
+
+ after a dead-key produces the bare-accent.
+ Please note this last point! If you bind a key to a dead-key, you'll need
+ to rebind the character on that key to yet another key.
+ Binding the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+,-key
+\end_layout
+
+\end_inset
+
+ to a cedilla is a bad idea, since you'll only get cedillas instead of commas.
+\end_layout
+
+\begin_layout Standard
+One common way to bind dead-keys is to use
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Meta-
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Ctrl-
+\end_layout
+
+\end_inset
+
+, and
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Shift-
+\end_layout
+
+\end_inset
+
+ in combination with an accent, like
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+~
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+ or
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+,
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+ or
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+^
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+ Another way involves using
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+xmodmap
+\end_layout
+
+\end_inset
+
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+xkeycaps
+\end_layout
+
+\end_inset
+
+ to set up the special
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Mode_Switch
+\end_layout
+
+\end_inset
+
+ key.
+ The
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Mode_Switch
+\end_layout
+
+\end_inset
+
+ acts in some ways just like
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Shift
+\end_layout
+
+\end_inset
+
+ and permits you to bind keys to accented characters.
+ You can also turn keys into dead-keys by binding them to something like
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+usldead_cedilla
+\end_layout
+
+\end_inset
+
+ and then binding this symbolic key to the corresponding LyX command.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Note from
+\noun on
+John Weiss
+\noun default
+: This is exactly what I do in my
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+~/.lyx/lyxrc
+\end_layout
+
+\end_inset
+
+ and my
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+~/.xmodmap
+\end_layout
+
+\end_inset
+
+ files.
+ I have my
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Scroll
+\begin_inset space ~
+\end_inset
+
+Lock
+\end_layout
+
+\end_inset
+
+ key set up as
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Mode_Shift
+\end_layout
+
+\end_inset
+
+ and a bunch of these
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+usldead_*
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+ symbolic keys bound such things as
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Scroll
+\begin_inset space ~
+\end_inset
+
+Lock-^
+\end_layout
+
+\end_inset
+
+ and
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Scroll
+\begin_inset space ~
+\end_inset
+
+Lock-~
+\end_layout
+
+\end_inset
+
+.
+ This is how I produce my accented characters.
+\end_layout
+
+\end_inset
+
+ You can make just about anything into the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Mode_Switch
+\end_layout
+
+\end_inset
+
+ key: One of the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Ctrl-
+\end_layout
+
+\end_inset
+
+ keys, a spare function key, etc.
+ As for the LyX commands that produce accents, check the entry for
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+accent-acute
+\end_layout
+
+\end_inset
+
+ in the
+\emph on
+Reference Manual
+\emph default
+.
+ You'll find the complete list there.
+\end_layout
+
+\begin_layout Subsection
+Saving your Language Configuration
+\end_layout
+
+\begin_layout Standard
+You can edit your preferences so that your desired language environment
+ is automatically configured when LyX starts up, via the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Edit\SpecialChar \menuseparator
+Preferences
+\end_layout
+
+\end_inset
+
+ dialog.
+\end_layout
+
+\begin_layout Chapter
+Installing New Document Classes, Layouts, and Templates
+\begin_inset CommandInset label
+LatexCommand label
+name "chap:textclass"
+
+\end_inset
+
+
+\begin_inset OptArg
+status collapsed
+
+\begin_layout Plain Layout
+Installing New Document Classes
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+In this chapter, we describe the procedures for creating and installing
+ new 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
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.cls
+\end_layout
+
+\end_inset
+
+ or
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.sty
+\end_layout
+
+\end_inset
+
+) that 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 that corresponds to a LaTeX document class
+ and that 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 that contains a set of predefined
+ entries for a given document class—entries that are generally required
+ for that class.
+ Templates are especially useful for things like journal manuscripts that
+ are to be submitted electronically.
+\end_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 package for preparing slides or
+ viewgraphs for overhead projectors.
+ Modern LaTeX distributions like TeXLive (2008 or newer) or MiKTeX provide
+ a user interface for that.
+ For example on MiKTeX you start its program
+\begin_inset Quotes eld
+\end_inset
+
+Browse Packages
+\begin_inset Quotes erd
+\end_inset
+
+ to get a list of available packages.
+ To install one, right click on it or use the installing toolbar button.
+ When the package you want to install is not in the list, but you have it
+ in form of a
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.cls
+\end_layout
+
+\end_inset
+
+ or
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.sty
+\end_layout
+
+\end_inset
+
+-file, then copy these files to a subfolder of your LaTeX distribution,
+ for example to the folder
+\family sans
+~
+\backslash
+tex
+\backslash
+latex
+\family default
+.
+ Then update the file name database of your LaTeX-distribution.
+ For example on MiKTeX this is done by pressing the button
+\family sans
+Refresh
+\begin_inset space ~
+\end_inset
+
+FNDB
+\family default
+ that you find in MiKTeX's
+\begin_inset Quotes eld
+\end_inset
+
+Settings
+\begin_inset Quotes erd
+\end_inset
+
+ program.
+ In both cases you need afterwards to reconfigure LyX using the menu
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
+Reconfigure
+\end_layout
+
+\end_inset
+
+ and then to restart LyX.
+\end_layout
+
+\begin_layout Standard
+If your LaTeX distribution doesn't provide a user interface, then you can
+ follow these steps by using a UNIX/Linux console.
+\end_layout
+
+\begin_layout Enumerate
+Get the package from
+\begin_inset CommandInset href
+LatexCommand href
+name "CTAN"
+target "http://www.ctan.org/"
+
+\end_inset
+
+ or wherever.
+\end_layout
+
+\begin_layout Enumerate
+You can install this package in several different places.
+ If you want it to be available for all users on your system, then you should
+ install it in your `local' TeX tree; if you want (or need) it to be available
+ just for you, then you can install it in your own `user' TeX tree.
+ Where these should be created, if they do not already exist, depends upon
+ the details of your system.
+ To find out, look in the file
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+texmf.cnf
+\end_layout
+
+\end_inset
+
+.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+This usually lives in the directory
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+$TEXMF/web2c
+\end_layout
+
+\end_inset
+
+, though you can run
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+kpsewhich texmf.cnf
+\end_layout
+
+\end_inset
+
+ to locate it.
+\end_layout
+
+\end_inset
+
+ The location of the `local' TeX tree is defined by
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TEXMFLOCAL
+\end_layout
+
+\end_inset
+
+; this is usually somewhere like
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+/usr/local/share/texmf/
+\end_layout
+
+\end_inset
+
+.
+ The `user' TeX tree is defined by
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TEXMFHOME
+\end_layout
+
+\end_inset
+
+ and is commonly at
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+$HOME/texmf/
+\end_layout
+
+\end_inset
+
+.
+ (If these variables are not predefined, you can define them.) You'll probably
+ need root permissions to create or modify the `local' tree; but your `user'
+ tree shouldn't have such limitations.
+\end_layout
+
+\begin_layout Enumerate
+Make sure
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TEXMF
+\end_layout
+
+\end_inset
+
+ includes the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TEXMFLOCAL
+\end_layout
+
+\end_inset
+
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TEXMFHOME
+\end_layout
+
+\end_inset
+
+ variables; e.
+\begin_inset space \thinspace{}
+\end_inset
+
+g.
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TEXMF = {$TEXMFHOME,!!$TEXMFLOCAL,!!$TEXMFMAIN}
+\end_layout
+
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+But, again, most of this will
+\begin_inset Quotes eld
+\end_inset
+
+just work
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Enumerate
+Create your local
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+We'll assume henceforth that you're defining `local' TeX tree.
+ If you're defining a user tree, just adjust as necessary.
+\end_layout
+
+\end_inset
+
+ TeX tree.
+ You must follow the directory structure of your existing
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+texmf
+\end_layout
+
+\end_inset
+
+ directory, which will be found at
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TEXMFMAIN
+\end_layout
+
+\end_inset
+
+.
+ For example, latex packages should go under
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+$TEXMFLOCAL/tex/latex/
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Enumerate
+Install the package.
+ For example, you would unpack the FoilTeX tarball and copy it to
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+$TEXMFLOCAL/tex/latex/foiltex
+\end_layout
+
+\end_inset
+
+.
+ The
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+foiltex
+\end_layout
+
+\end_inset
+
+ directory contains various files.
+\end_layout
+
+\begin_layout Enumerate
+Run:
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+texhash
+\end_layout
+
+\end_inset
+
+.
+ This should create
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+$TEXMFLOCAL/ls-R
+\end_layout
+
+\end_inset
+
+ amongst others.
+\end_layout
+
+\begin_layout Standard
+Your package is now installed and available to LaTeX.
+ To make it available to LyX, you need to create a Layout file, if one is
+ not already available.
+ (See the next section.) Once you have a layout file, you need only reconfigure
+ (
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
+Reconfigure
+\end_layout
+
+\end_inset
+
+) and then restart LyX.
+ You should then see your new package—for example
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+slides (FoilTeX)
+\end_layout
+
+\end_inset
+
+—under
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Document\SpecialChar \menuseparator
+Settings
+\end_layout
+
+\end_inset
+
+ in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Document Class
+\end_layout
+
+\end_inset
+
+ drop box.
+
+\end_layout
+
+\begin_layout Section
+Layouts
+\end_layout
+
+\begin_layout Standard
+This section describes how to write and install your own LyX layout files
+ and walks through the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+article
+\end_layout
+
+\end_inset
+
+ text class format as an example.
+ The
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.layout
+\end_layout
+
+\end_inset
+
+ files describe what paragraph and character 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
+ that we can't hope to cover every different possibility or problem you
+ might encounter.
+ (The LyX users' list is frequented by people with lots of experience with
+ layout design who are willing to share what they've learned.)
+\end_layout
+
+\begin_layout Standard
+As you prepare 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.
+ There is also a
+\begin_inset CommandInset href
+LatexCommand href
+name "section on the LyX wiki"
+target "http://wiki.lyx.org/Layouts/Layouts"
+
+\end_inset
+
+ for this kind of material.
+\end_layout
+
+\begin_layout Standard
+All the tags described in this chapter are case-insensitive; this means
+ that
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Style
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+style
+\end_layout
+
+\end_inset
+
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+StYlE
+\end_layout
+
+\end_inset
+
+ 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
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+emphasized
+\end_layout
+
+\end_inset
+
+.
+ If the argument has a data type like
+\begin_inset Quotes eld
+\end_inset
+
+string
+\begin_inset Quotes erd
+\end_inset
+
+ or
+\begin_inset Quotes eld
+\end_inset
+
+float
+\begin_inset Quotes erd
+\end_inset
+
+, the default is shown like this:
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+float=
+\emph on
+default
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsection
+\begin_inset CommandInset label
+LatexCommand label
+name "sub:Layout-modules"
+
+\end_inset
+
+Layout modules
+\end_layout
+
+\begin_layout Standard
+Similar to layout files, and new with LyX 1.6, are layout
+\emph on
+modules
+\emph default
+.
+ Modules are to LaTeX packages much as layouts are to LaTeX classes, and
+ some modules—such as the endnotes module—provide support for just such
+ a package.
+ In a sense, layout modules are similar to included files—files like
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+stdsections.inc
+\end_layout
+
+\end_inset
+
+—in that modules are not specific to a given document layout but may be
+ used with many different layouts.
+ The difference is that using a layout module does not require editing the
+ layout file.
+ Rather, modules are selected in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Document\SpecialChar \menuseparator
+Settings
+\end_layout
+
+\end_inset
+
+ dialog.
+\end_layout
+
+\begin_layout Standard
+Building modules is the easiest way to get started with layout editing,
+ since it can be as simple as adding a single new paragraph or flex inset.
+ But modules may, in principle, contain anything a layout file can contain.
+\end_layout
+
+\begin_layout Standard
+A module must begin with a line like the following:
+\end_layout
+
+\begin_layout LyX-Code
+#
+\backslash
+DeclareLyXModule[endnotes.sty]{Endnotes}
+\end_layout
+
+\begin_layout Standard
+The argument in square brackets is optional: It declares any LaTeX packages
+ on which the module depends.
+ The mandatory argument, in curly brackets, is the name of the module, as
+ it should appear in
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Document\SpecialChar \menuseparator
+Settings
+\end_layout
+
+\end_inset
+
+.
+
+\end_layout
+
+\begin_layout Standard
+The module declaration should then be followed by lines like the following:
+\end_layout
+
+\begin_layout LyX-Code
+#DescriptionBegin
+\end_layout
+
+\begin_layout LyX-Code
+#Adds an endnote command, in addition to footnotes.
+
+\end_layout
+
+\begin_layout LyX-Code
+#You will need to add
+\backslash
+theendnotes in TeX code where you
+\end_layout
+
+\begin_layout LyX-Code
+#want the endnotes to appear.
+
+\end_layout
+
+\begin_layout LyX-Code
+#DescriptionEnd
+\end_layout
+
+\begin_layout LyX-Code
+#Requires: somemodule | othermodule
+\end_layout
+
+\begin_layout LyX-Code
+#Excludes: badmodule
+\end_layout
+
+\begin_layout Standard
+The description is used in
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Document\SpecialChar \menuseparator
+Settings
+\end_layout
+
+\end_inset
+
+ to provide the user with information about what the module does.
+ The
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Requires
+\end_layout
+
+\end_inset
+
+ line is used to identify other modules with which this one must be used;
+ the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Excludes
+\end_layout
+
+\end_inset
+
+ line is used to identify modules with which this one may not be used.
+ Both are optional, and, as shown, multiple modules should be separated
+ with the pipe symbol: |.
+ Note that the required modules are treated disjunctively:
+\emph on
+at least one
+\emph default
+ of the required modules must be used.
+ Similarly,
+\emph on
+no
+\emph default
+ excluded module may be used.
+ Note that modules are identified here by their
+\emph on
+filenames
+\emph default
+ without the .module extension.
+ So
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+somemodule
+\end_layout
+
+\end_inset
+
+ is really
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+somemodule.module
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+After creating a new module, you will need to reconfigure and then restart
+ LyX for the module to appear in the menu.
+ However, changes you make to the module will be seen immediately, if you
+ open
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Document\SpecialChar \menuseparator
+Settings
+\end_layout
+
+\end_inset
+
+, highlight something, and then hit
+\begin_inset Quotes eld
+\end_inset
+
+OK
+\begin_inset Quotes erd
+\end_inset
+
+.
+
+\emph on
+It is strongly recommended that you save your work before doing so
+\emph default
+.
+ In fact,
+\emph on
+it is strongly recommended that you not attempt to edit modules while simultaneo
+usly working on documents
+\emph default
+.
+ Though of course the developers strive to keep LyX stable in such situations,
+ syntax errors and the like in your module file could cause strange behavior.
+\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 (
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.cls
+\end_layout
+
+\end_inset
+
+) and style (
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.sty
+\end_layout
+
+\end_inset
+
+) files.
+ Supporting a style file is usually fairly easy.
+ Supporting a new document class is a bit harder.
+\end_layout
+
+\begin_layout Subsection
+A layout for a
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+sty
+\end_layout
+
+\end_inset
+
+ 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—for the sake of the example,
+ we'll assume that the style file is called
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+myclass.sty
+\end_layout
+
+\end_inset
+
+ and it is meant to be used with
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+report.cls
+\end_layout
+
+\end_inset
+
+, which is a standard class—start by copying the existing class's layout
+ file into your local directory:
+\end_layout
+
+\begin_layout LyX-Code
+cp report.layout ~/.lyx/layouts/myclass.layout
+\end_layout
+
+\begin_layout Standard
+Then edit
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+myclass.layout
+\end_layout
+
+\end_inset
+
+ and change the line:
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+DeclareLaTeXClass{report}
+\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
+\begin_inset Newline newline
+\end_inset
+
+
+\backslash
+usepackage{myclass}
+\begin_inset Newline newline
+\end_inset
+
+EndPreamble
+\end_layout
+
+\begin_layout Standard
+near the top of the file.
+\end_layout
+
+\begin_layout Standard
+Start LyX and select
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
+Reconfigure
+\end_layout
+
+\end_inset
+
+.
+ Then restart LyX and try creating a new document.
+ You should see "
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+report (myclass)
+\end_layout
+
+\end_inset
+
+" as a document class option in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Document\SpecialChar \menuseparator
+Settings
+\end_layout
+
+\end_inset
+
+ dialog.
+ It is likely that some of the sectioning commands and such in your new
+ class will work differently from how they worked in the base class—
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+report
+\end_layout
+
+\end_inset
+
+ in this example—so you can fiddle around with the settings for the different
+ sections if you wish.
+\end_layout
+
+\begin_layout Subsection
+Layout for a
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+cls
+\end_layout
+
+\end_inset
+
+ file
+\end_layout
+
+\begin_layout Standard
+There are two possibilities here.
+ One is that the class file is itself based upon an existing document class.
+ For example, many thesis classes are based upon
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+book.cls
+\end_layout
+
+\end_inset
+
+.
+ To see whether yours is, look for a line like
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+LoadClass{book}
+\end_layout
+
+\begin_layout Standard
+in the file.
+ If so, then you may proceed largely as in the previous section, though
+ the DeclareLaTeXClass line will be different.
+ If your new class is thesis, and it is based upon book, then the line should
+ read:
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+And it will be easiest if you save the file to
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+thesis.layout
+\end_layout
+
+\end_inset
+
+: LyX assumes that the document class has the same name as the layout file.
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+DeclareLaTeXClass[thesis,book]{thesis}
+\end_layout
+
+\begin_layout Standard
+If, on the other hand, the new class is not based upon an existing class,
+ you will probably have to
+\begin_inset Quotes eld
+\end_inset
+
+roll your own
+\begin_inset Quotes erd
+\end_inset
+
+ layout.
+ We strongly suggest copying an existing layout file which uses a similar
+ LaTeX class and then modifying it, if you can do so.
+ At least use an existing file as a starting point so you can find out what
+ items you need to worry about.
+ Again, the specifics are covered below.
+\end_layout
+
+\begin_layout 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
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+#
+\end_layout
+
+\end_inset
+
+ 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
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+chkconfig.ltx
+\end_layout
+
+\end_inset
+
+, in a special mode where
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+#
+\end_layout
+
+\end_inset
+
+ 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
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+article.layout
+\end_layout
+
+\end_inset
+
+, then they define a text class of name
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+article
+\end_layout
+
+\end_inset
+
+ (the name of the layout file) which uses the LaTeX document class
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+article.cls
+\end_layout
+
+\end_inset
+
+ (the default is to use the same name as the layout).
+ The string
+\begin_inset Quotes eld
+\end_inset
+
+article
+\begin_inset Quotes erd
+\end_inset
+
+ that appears above is used as a description of the text class in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Document\SpecialChar \menuseparator
+Settings
+\end_layout
+
+\end_inset
+
+ dialog.
+\end_layout
+
+\begin_layout Standard
+Let's assume that you wrote your own text class that uses the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+article.cls
+\end_layout
+
+\end_inset
+
+ document class, but where you changed the appearance of the section headings.
+ If you put it in a file
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+myarticle.layout
+\end_layout
+
+\end_inset
+
+, the header of this file should be:
+\end_layout
+
+\begin_layout LyX-Code
+
+\size small
+#% Do not delete the line below; configure depends on this
+\end_layout
+
+\begin_layout LyX-Code
+
+\size small
+#
+\backslash
+DeclareLaTeXClass[article]{article (with my own headings)}
+\end_layout
+
+\begin_layout Standard
+This declares a text class
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+myarticle
+\end_layout
+
+\end_inset
+
+, associated with the LaTeX document class
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+article.cls
+\end_layout
+
+\end_inset
+
+ and described as
+\begin_inset Quotes eld
+\end_inset
+
+article (with my own headings)
+\begin_inset Quotes erd
+\end_inset
+
+.
+ If your text class depends on several packages, you can declare it as:
+\end_layout
+
+\begin_layout LyX-Code
+
+\size small
+#% Do not delete the line below; configure depends on this
+\end_layout
+
+\begin_layout LyX-Code
+
+\size small
+#
+\backslash
+DeclareLaTeXClass[article,foo.sty]{article (with my own headings)}
+\end_layout
+
+\begin_layout Standard
+This indicates that your text class uses the foo.sty package.
+ Finally, it is also possible to declare classes for 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
+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
+So, to be as explicit as possible, the form of the layout declaration is:
+\end_layout
+
+\begin_layout LyX-Code
+
+\size small
+#
+\backslash
+DeclareLaTeXClass[class,package.sty]{layout description}
+\end_layout
+
+\begin_layout Standard
+The class need only be specified if the name of the LaTeX class file and
+ the name of the layout file are different; if the name of the class file
+ is not specified, then LyX will simply assume that it is the same as the
+ name of the layout file.
+\end_layout
+
+\begin_layout Standard
+When the text class has been modified to your taste, all you have to do
+ is to copy it either to
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LyXDir/layouts/
+\end_layout
+
+\end_inset
+
+ or to
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+UserDir/layouts
+\end_layout
+
+\end_inset
+
+, run
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
+Reconfigure
+\end_layout
+
+\end_inset
+
+, exit LyX and restart it.
+ Then your new text class should be available along with the others.
+\end_layout
+
+\begin_layout Standard
+In versions of LyX prior to 1.6, you had to restart LyX to see any changes
+ you made to your layout files.
+ As a result, editing layout files could be very time consuming.
+ Beginning with 1.6, however, you can force a reload of the layout currently
+ in use by using the LyX function
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+layout-reload
+\end_layout
+
+\end_inset
+
+.
+ There is no default binding for this function—though, of course, you can
+ bind it to a key yourself.
+ If you want to use this function, then, you should simply enter it in the
+ mini-buffer.
+
+\emph on
+Warning
+\emph default
+: This is very much an `advanced feature'.
+ It is
+\emph on
+strongly
+\emph default
+ recommended that you save your work before using this function.
+ In fact, it is
+\emph on
+strongly
+\emph default
+ recommended that you not attempt to edit your layout while simultaneously
+ working on a document that you care about.
+ Use a test document.
+ Syntax errors and the like in your layout file could cause peculiar behavior.
+ In particular, such errors could cause LyX to regard the current layout
+ as invalid and to attempt to switch to some other layout.
+ The LyX team strives to keep LyX stable in such situations, but safe is
+ better than sorry.
+\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
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Format
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+int
+\end_layout
+
+\end_inset
+
+] This tag was introduced with LyX 1.4.0 (layout files of LyX 1.3.x and earlier
+ don't have an explicit file format).
+ The file format that is documented here is format 12.
+\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 Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+AddToPreamble
+\end_layout
+
+\end_inset
+
+ Adds information to the document preamble.
+ Must end with
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+EndPreamble
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+ClassOptions
+\end_layout
+
+\end_inset
+
+ Describes various global options supported by the document class.
+ See Section
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:classoptions"
+
+\end_inset
+
+ for a description.
+ Must end with
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+End
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Columns
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+1
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+2
+\end_layout
+
+\end_inset
+
+] Whether the class should default to having one or two columns.
+ Can be changed in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Document\SpecialChar \menuseparator
+Settings
+\end_layout
+
+\end_inset
+
+ dialog.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Counter
+\end_layout
+
+\end_inset
+
+ This sequence defines a new counter.
+ See Section
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:counter"
+
+\end_inset
+
+ for details.
+ Must end with
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+End
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+DefaultFont
+\end_layout
+
+\end_inset
+
+ Sets the default font used to display the document.
+ See Section
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:fonts"
+
+\end_inset
+
+ for how to declare fonts.
+ Must end with
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+EndFont
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+DefaultModule
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string]
+\end_layout
+
+\end_inset
+
+ Specifies a module to be included by default with this document class,
+ which should be specified by filename without the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.module
+\end_layout
+
+\end_inset
+
+ extension.
+ The user can still remove the module, but it will be active at the outset.
+ (This applies only when new files are created, or when this class is chosen
+ for an existing document.)
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+DefaultStyle
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] This is the style that will be assigned to new paragraphs, usually
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Standard
+\end_layout
+
+\end_inset
+
+.
+ This will default to the first defined style if not given, but you are
+ highly encouraged to use this directive.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+ExcludesModule
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] Indicates that the module in question—which should be specified by filename
+ without the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.module
+\end_layout
+
+\end_inset
+
+ extension—cannot be used with this document class.
+ This might be used in a journal-specific layout file to prevent, say, the
+ use of the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+theorems-sec
+\end_layout
+
+\end_inset
+
+ module that numbers theorems by section.
+ This tag may
+\emph on
+not
+\emph default
+ be used in a module.
+ Modules have their own way of excluding other modules (see
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:Layout-modules"
+
+\end_inset
+
+).
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Float
+\end_layout
+
+\end_inset
+
+ Defines a new float.
+ See Section
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:floats"
+
+\end_inset
+
+ for details.
+ Must end with
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+End
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Input
+\end_layout
+
+\end_inset
+
+ 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,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+stdclass.inc
+\end_layout
+
+\end_inset
+
+, which contains most of the basic layouts.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+InsetLayout
+\end_layout
+
+\end_inset
+
+ This section (re-)defines the layout of an inset.
+ It can be applied to an existing inset of to a new, user-defined inset,
+ e.
+\begin_inset space \thinspace{}
+\end_inset
+
+g.
+\begin_inset space \space{}
+\end_inset
+
+a new character style.
+ See Section
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:charstyle"
+
+\end_inset
+
+ for more information.
+ Must end with
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+End
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LeftMargin
+\end_layout
+
+\end_inset
+
+ A string that indicates the width of the left margin on the screen, for
+ example,
+\begin_inset Quotes eld
+\end_inset
+
+MMMMM
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+NoFloat
+\end_layout
+
+\end_inset
+
+ 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
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+NoStyle
+\end_layout
+
+\end_inset
+
+ 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
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+OutputType
+\end_layout
+
+\end_inset
+
+ A string indicating what sort of output documents using this class will
+ produce.
+ At present, the options are: `docbook', `latex', and `literate'.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\series medium
+PageStyle
+\end_layout
+
+\end_inset
+
+ [
+\emph on
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+plain
+\end_layout
+
+\end_inset
+
+
+\emph default
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+empty
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+headings
+\end_layout
+
+\end_inset
+
+] The class default pagestyle.
+ Can be changed in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Document\SpecialChar \menuseparator
+Settings
+\end_layout
+
+\end_inset
+
+ dialog.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Preamble
+\end_layout
+
+\end_inset
+
+ Sets the preamble for the LaTeX document.
+ Note that this will completely override any prior
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Preamble
+\end_layout
+
+\end_inset
+
+ or
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+AddToPreamble
+\end_layout
+
+\end_inset
+
+ declarations.
+ Must end with
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+EndPreamble
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Provides
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+0
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+1
+\end_layout
+
+\end_inset
+
+] Whether the class already provides the feature
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+.
+ A feature is in general the name of a package (
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+amsmath
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+makeidx
+\end_layout
+
+\end_inset
+
+, \SpecialChar \ldots{}
+) or a macro (
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+url
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+boldsymbol
+\end_layout
+
+\end_inset
+
+,\SpecialChar \ldots{}
+); the complete list of supported features is unfortunately not documented
+ outside the LyX source code—but see
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LaTeXFeatures.cpp
+\end_layout
+
+\end_inset
+
+ if you're interested.
+
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Help\SpecialChar \menuseparator
+LaTeX Configuration
+\end_layout
+
+\end_inset
+
+ also gives an overview of the supported packages.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+ProvidesModule
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] Indicates that this layout provides the functionality of the module mentioned,
+ which should be specified by the filename without the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.module
+\end_layout
+
+\end_inset
+
+ extension.
+ This will typically be used if the layout includes the module directly,
+ rather than using the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+DefaultModule
+\end_layout
+
+\end_inset
+
+ tag to indicate that it ought to be used.
+ It could be used in a module that provided an alternate implementation
+ of the same functionality.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Requires
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] Whether the class requires the feature
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+.
+ Multiple features must be separated by commas.
+ Note that you can only request supported features.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+RightMargin
+\end_layout
+
+\end_inset
+
+ A string that indicates the width of the right margin on the screen, for
+ example,
+\begin_inset Quotes eld
+\end_inset
+
+MMMMM
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+SecNumDepth
+\end_layout
+
+\end_inset
+
+ Sets which divisions get numbered.
+ Corresponds to the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+secnumdepth
+\end_layout
+
+\end_inset
+
+ counter in LaTeX.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Sides
+\end_layout
+
+\end_inset
+
+ [
+\emph on
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+1
+\end_layout
+
+\end_inset
+
+
+\emph default
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+2
+\end_layout
+
+\end_inset
+
+] Whether the class-default should be printing on one or both sides of the
+ paper.
+ Can be changed in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Document\SpecialChar \menuseparator
+Settings
+\end_layout
+
+\end_inset
+
+ dialog.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Style
+\end_layout
+
+\end_inset
+
+ This sequence defines a new paragraph style.
+ If the style already exists, it will redefine some of its parameters instead.
+ See Section
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:style"
+
+\end_inset
+
+ for details.
+ Must end with
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+End
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TitleLatexName
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string="maketitle"
+\end_layout
+
+\end_inset
+
+] The name of the command or environment to be used with
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TitleLatexType
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TitleLatexType
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+CommandAfter
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Environment
+\end_layout
+
+\end_inset
+
+] Indicates what kind of markup is used to define the title of a document.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+CommandAfter
+\end_layout
+
+\end_inset
+
+ means that the macro with name
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TitleLatexName
+\end_layout
+
+\end_inset
+
+ will be inserted after the last layout which has
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+InTitle 1
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Environment
+\end_layout
+
+\end_inset
+
+ corresponds to the case where the block of paragraphs which have
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+InTitle 1
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+ should be enclosed into the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TitleLatexName
+\end_layout
+
+\end_inset
+
+ environment.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TocDepth
+\end_layout
+
+\end_inset
+
+ Sets which divisions are included in the table of contents.
+ Corresponds to the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+tocdepth
+\end_layout
+
+\end_inset
+
+ counter in LaTeX.
+\end_layout
+
+\begin_layout Subsection
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+ClassOptions
+\end_layout
+
+\end_inset
+
+ section
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:classoptions"
+
+\end_inset
+
+The
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+ClassOptions
+\end_layout
+
+\end_inset
+
+ section can contain the following entries:
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+FontSize
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string="10|11|12"
+\end_layout
+
+\end_inset
+
+] The list of available font sizes for the document's main font, separated
+ by
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+|
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Header
+\end_layout
+
+\end_inset
+
+ Used to set the DTD line with XML-based output classes.
+ E.
+\begin_inset space \thinspace{}
+\end_inset
+
+g.: PUBLIC
+\begin_inset Quotes eld
+\end_inset
+
+-//OASIS//DTD DocBook V4.2//EN
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+PageStyle
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string="empty|plain|headings|fancy"
+\end_layout
+
+\end_inset
+
+] The list of available page styles, separated by
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+|
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Other
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string=""
+\end_layout
+
+\end_inset
+
+] Some document class options, separated by a comma, that will be added
+ to the optional part of the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+documentclass
+\end_layout
+
+\end_inset
+
+ command.
+\end_layout
+
+\begin_layout Standard
+The
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+ClassOptions
+\end_layout
+
+\end_inset
+
+ section must end with
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+End
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsection
+Paragraph Styles
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:style"
+
+\end_inset
+
+A paragraph style description looks like this:
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+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 Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Align
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+block
+\emph default
+, left, right, center
+\end_layout
+
+\end_inset
+
+] Paragraph alignment.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+AlignPossible
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+block
+\emph default
+, left, right, center
+\end_layout
+
+\end_inset
+
+] A comma separated list of permitted alignments.
+ (Some LaTeX styles prohibit certain alignments, since those wouldn't make
+ sense.
+ For example a right-aligned or centered enumeration isn't possible.)
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+BottomSep
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+float=0
+\end_layout
+
+\end_inset
+
+]
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Note that a `float' here is a real number, such as: 1.5.
+\end_layout
+
+\end_inset
+
+ The vertical space with which the last of a chain of paragraphs with this
+ layout is separated from the following paragraph.
+ If the next paragraph has another layout, the separations are not simply
+ added, but the maximum is taken.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Category
+\end_layout
+
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+[string]
+\end_layout
+
+\end_inset
+
+ The category for this style.
+ This is used to group related styles in the Layout combobox on the toolbar.
+ Any string can be used, but you may want to use existing categories with
+ your own styles.
+
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+CommandDepth
+\end_layout
+
+\end_inset
+
+ Depth of XML command.
+ Used only with XML-type formats.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+CopyStyle
+\end_layout
+
+\end_inset
+
+
+\begin_inset CommandInset label
+LatexCommand label
+name "des:CopyStyle"
+
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+[string]
+\end_layout
+
+\end_inset
+
+ Copies all the features of an existing style into the current one.
+
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+DependsOn
+\end_layout
+
+\end_inset
+
+ The name of a style whose preamble should be output
+\emph on
+before
+\emph default
+ this one.
+ This allows to ensure some ordering of the preamble snippets when macros
+ definitions depend on one another.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Note that, besides that functionality, there is no way to ensure any ordering
+ of preambles.
+ The ordering that you see in a given version of LyX may change without
+ warning in later versions.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+EndLabeltype
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+No_Label
+\emph default
+, Box, Filled_Box, Static
+\end_layout
+
+\end_inset
+
+] The type of label that stands at the end of the paragraph (or sequence
+ of paragraphs if
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LatexType
+\end_layout
+
+\end_inset
+
+ is
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Environment
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Item_Environment
+\end_layout
+
+\end_inset
+
+ or
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+List_Environment
+\end_layout
+
+\end_inset
+
+).
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+No_Label
+\end_layout
+
+\end_inset
+
+ means
+\begin_inset Quotes eld
+\end_inset
+
+nothing
+\begin_inset Quotes erd
+\end_inset
+
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Box
+\end_layout
+
+\end_inset
+
+ (resp.
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+\begin_inset space ~
+\end_inset
+
+Filled_Box
+\end_layout
+
+\end_inset
+
+) is a white (resp.
+\begin_inset space ~
+\end_inset
+
+black) square suitable for end of proof markers,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Static
+\end_layout
+
+\end_inset
+
+ is an explicit text string.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+EndLabelString
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string=""
+\end_layout
+
+\end_inset
+
+] The string used for a label with a
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Static
+\end_layout
+
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+EndLabelType
+\end_layout
+
+\end_inset
+
+.
+
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Fill_Bottom
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+0
+\emph default
+,1
+\end_layout
+
+\end_inset
+
+] Similar to
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Fill_Top
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Fill_Top
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+0
+\emph default
+,1
+\end_layout
+
+\end_inset
+
+] With this parameter the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Fill
+\end_layout
+
+\end_inset
+
+ value of the
+\begin_inset Quotes eld
+\end_inset
+
+Vertical space above
+\begin_inset Quotes erd
+\end_inset
+
+ list of the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Edit\SpecialChar \menuseparator
+Paragraph
+\begin_inset space ~
+\end_inset
+
+Settings
+\end_layout
+
+\end_inset
+
+ dialog can be set when initializing a paragraph with this style.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+Note from Jean-Marc:
+\emph default
+ I'm not sure that this setting has much use, and it should probably be
+ removed in later versions.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Font
+\end_layout
+
+\end_inset
+
+ The font used for both the text body
+\emph on
+and
+\emph default
+ the label.
+ See section
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:fonts"
+
+\end_inset
+
+.
+ Note that defining this font automatically defines the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelFont
+\end_layout
+
+\end_inset
+
+ to the same value.
+ So you should define this one first if you also want to define
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelFont
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+FreeSpacing
+\end_layout
+
+\end_inset
+
+
+\begin_inset CommandInset label
+LatexCommand label
+name "des:FreeSpacing"
+
+\end_inset
+
+[
+\emph on
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+0
+\end_layout
+
+\end_inset
+
+
+\emph default
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+1
+\end_layout
+
+\end_inset
+
+] Usually LyX doesn't allow you to insert more than one space between words,
+ since a space is considered as the separation between two words, not a
+ character or symbol of its own.
+ This is a very fine thing but sometimes annoying, for example, when typing
+ program code or plain LaTeX code.
+ For this reason,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+FreeSpacing
+\end_layout
+
+\end_inset
+
+ can be enabled.
+ Note that LyX will create protected blanks for the additional blanks when
+ in another mode than LaTeX-mode.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+I18NPreamble
+\end_layout
+
+\end_inset
+
+ Language dependent information to be included in the LaTeX preamble when
+ this style is used.
+ Note that this will completely override any prior
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+I18NPreamble
+\end_layout
+
+\end_inset
+
+ declarations.
+ Must end with
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+EndI18NPreamble
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+ The contents of this tag will occur once in the LaTeX preamble for each
+ language used by the document.
+ Each time, the following substitutions are made:
+\end_layout
+
+\begin_deeper
+\begin_layout Itemize
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+$$lang
+\end_layout
+
+\end_inset
+
+ is replaced by the language name (as used by the babel package).
+\end_layout
+
+\begin_layout Itemize
+The
+\begin_inset Quotes eld
+\end_inset
+
+Function
+\begin_inset Quotes erd
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+_()
+\end_layout
+
+\end_inset
+
+ replaces its argument by the translation of the argument to the current
+ language.
+\end_layout
+
+\begin_layout Standard
+If the style defines text that appears in the typeset document, it may use
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+I18NPreamble
+\end_layout
+
+\end_inset
+
+ to support non-english and even multilanguage documents correctly.
+ The following excerpt (from the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+theorems-ams.inc
+\end_layout
+
+\end_inset
+
+ file) shows how this works:
+\end_layout
+
+\begin_layout LyX-Code
+Preamble
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+providecommand{
+\backslash
+claimname}{Claim}
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+theoremstyle{remark}
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+newtheorem{claim}[thm]{
+\backslash
+protect
+\backslash
+claimname}
+\end_layout
+
+\begin_layout LyX-Code
+EndPreamble
+\end_layout
+
+\begin_layout LyX-Code
+I18nPreamble
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+AtBeginDocument{
+\backslash
+ifx
+\backslash
+LdfInit
+\backslash
+undefined
+\backslash
+relax
+\backslash
+else%
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+addto
+\backslash
+captions$$lang{
+\backslash
+renewcommand{
+\backslash
+claimname}{_(Claim)}}%
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+fi}
+\end_layout
+
+\begin_layout LyX-Code
+EndI18nPreamble
+\end_layout
+
+\begin_layout Standard
+The key to correct translation of the user visible text is the definition
+ of the command
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+claimname
+\end_layout
+
+\end_inset
+
+ in the standard preamble.
+ This command holds the name of the theorem that will appear in the output.
+ The
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+I18NPreamble
+\end_layout
+
+\end_inset
+
+ then uses the commands offered by the babel package to redefine
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+claimname
+\end_layout
+
+\end_inset
+
+ for each used language.
+ The
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+ifx
+\backslash
+LdfInit
+\end_layout
+
+\end_inset
+
+ test ensures that no LaTeX error occurs in documents that do not use babel.
+ Since LyX loads babel after the style-specific preamble, the whole command
+ is deferred to the actual start of the document with
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+AtBeginDocument
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\end_deeper
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+InnerTag
+\end_layout
+
+\end_inset
+
+ [[FIXME]] (Used only with XML-type formats.)
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+InTitle
+\end_layout
+
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+[1, 0]
+\end_layout
+
+\end_inset
+
+ If 1, marks the layout as being part of a title block (see also the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TitleLatexType
+\end_layout
+
+\end_inset
+
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TitleLatexName
+\end_layout
+
+\end_inset
+
+ global entries).
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+ItemSep
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+float=0
+\end_layout
+
+\end_inset
+
+] This provides extra space between paragraphs that have the same layout.
+ If you put other layouts into an environment, each is separated with the
+ environment's
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Parsep
+\end_layout
+
+\end_inset
+
+.
+ But the whole items of the environment are additionally separated with
+ this
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Itemsep
+\end_layout
+
+\end_inset
+
+.
+ Note that this is a
+\emph on
+ multiplier.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+ItemTag
+\end_layout
+
+\end_inset
+
+ [[FIXME]] (Used only with XML-type formats.)
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+KeepEmpty
+\end_layout
+
+\end_inset
+
+
+\begin_inset CommandInset label
+LatexCommand label
+name "des:KeepEmpty"
+
+\end_inset
+
+[
+\emph on
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+0
+\end_layout
+
+\end_inset
+
+
+\emph default
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+1
+\end_layout
+
+\end_inset
+
+] Usually LyX 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
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelBottomsep
+\end_layout
+
+\end_inset
+
+ [float=0] The vertical space between the label and the text body.
+ Only used for labels that are above the text body (
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Top_Environment
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Centered_Top_Environment
+\end_layout
+
+\end_inset
+
+).
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelCounter
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string=""
+\end_layout
+
+\end_inset
+
+]
+\begin_inset Newline newline
+\end_inset
+
+The name of the counter for automatic numbering (see Section
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:counter"
+
+\end_inset
+
+ for details).
+ This must be given if
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Labeltype
+\end_layout
+
+\end_inset
+
+ is
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Counter
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelFont
+\end_layout
+
+\end_inset
+
+ The font used for the label.
+ See section
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:fonts"
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelIndent
+\end_layout
+
+\end_inset
+
+ Text that indicates how far a label should be indented.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Labelsep
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string=""
+\end_layout
+
+\end_inset
+
+] 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
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelString
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string=""
+\end_layout
+
+\end_inset
+
+] The string used for a label with a
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Static
+\end_layout
+
+\end_inset
+
+ labeltype.
+ When
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelCounter
+\end_layout
+
+\end_inset
+
+ is set, this string can be contain the special formatting commands described
+ in Section
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:counter"
+
+\end_inset
+
+.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+For the sake of backwards compatibility, the string
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+@
+\emph on
+style-name
+\emph default
+@
+\end_layout
+
+\end_inset
+
+ will be replaced by the expanded
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelString
+\end_layout
+
+\end_inset
+
+ of style
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+style-name
+\end_layout
+
+\end_inset
+
+.
+ This feature is now obsolete and should be replaced by the mechanisms of
+ Section
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:counter"
+
+\end_inset
+
+.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelStringAppendix
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string=""
+\end_layout
+
+\end_inset
+
+] This is used inside the appendix instead of
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelString
+\end_layout
+
+\end_inset
+
+.
+ Note that every
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelString
+\end_layout
+
+\end_inset
+
+ statement resets
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelStringAppendix
+\end_layout
+
+\end_inset
+
+ too.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelTag
+\end_layout
+
+\end_inset
+
+ [FIXME] (Used only with XML-type formats.)
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Labeltype
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+No_Label
+\emph default
+, Manual, Static, Top_Environment,
+\begin_inset Newline newline
+\end_inset
+
+Centered_Top_Environment, Sensitive, Counter
+\end_layout
+
+\end_inset
+
+]
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Manual
+\end_layout
+
+\end_inset
+
+ means the label is the very first word (up to the first real blank).
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Use protected spaces if you want more than one word as the label.
+\end_layout
+
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Static
+\end_layout
+
+\end_inset
+
+ means it is defined in the layout (see
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelString
+\end_layout
+
+\end_inset
+
+).
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Top_Environment
+\end_layout
+
+\end_inset
+
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Centered_Top_Environment
+\end_layout
+
+\end_inset
+
+ are special cases of
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Static
+\end_layout
+
+\end_inset
+
+.
+ 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
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Abstract
+\end_layout
+
+\end_inset
+
+ layout or the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Bibliography
+\end_layout
+
+\end_inset
+
+ layout.
+ This is also the case for
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Manual
+\end_layout
+
+\end_inset
+
+ labels with latex type
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Environment
+\end_layout
+
+\end_inset
+
+, in order to make layouts for theorems work correctly.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Sensitive
+\end_layout
+
+\end_inset
+
+ is a special case for the caption-labels
+\begin_inset Quotes eld
+\end_inset
+
+Figure
+\begin_inset Quotes erd
+\end_inset
+
+ and
+\begin_inset Quotes eld
+\end_inset
+
+Table
+\begin_inset Quotes erd
+\end_inset
+
+.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Sensitive
+\end_layout
+
+\end_inset
+
+ means the (hardcoded) label string depends on the kind of float.
+ The
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Counter
+\end_layout
+
+\end_inset
+
+ label type defines automatically numbered labels.
+ See Section
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:counter"
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LatexName
+\end_layout
+
+\end_inset
+
+ The name of the corresponding LaTeX stuff.
+ Either the environment or command name.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LatexParam
+\end_layout
+
+\end_inset
+
+ An optional parameter for the corresponding
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LatexName
+\end_layout
+
+\end_inset
+
+ stuff.
+ This parameter cannot be changed from within LyX.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LatexType
+\end_layout
+
+\end_inset
+
+
+\begin_inset CommandInset label
+LatexCommand label
+name "des:LatexType"
+
+\end_inset
+
+[
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+Paragraph
+\emph default
+, Command, Environment, Item_Environment,
+\end_layout
+
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+List_Environment
+\end_layout
+
+\end_inset
+
+] How the layout should be translated into LaTeX.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Paragraph
+\end_layout
+
+\end_inset
+
+ means nothing special.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Command
+\end_layout
+
+\end_inset
+
+ means
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+
+\emph on
+LatexName
+\emph default
+{\SpecialChar \ldots{}
+}
+\end_layout
+
+\end_inset
+
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Environment
+\end_layout
+
+\end_inset
+
+ means
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+begin{
+\emph on
+LatexName
+\emph default
+}\SpecialChar \ldots{}
+
+\backslash
+end{
+\emph on
+LatexName
+\emph default
+}
+\end_layout
+
+\end_inset
+
+.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Item_Environment
+\end_layout
+
+\end_inset
+
+ is the same as
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Environment
+\end_layout
+
+\end_inset
+
+, except that a
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+item
+\end_layout
+
+\end_inset
+
+ is generated for each paragraph of this environment.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+List_Environment
+\end_layout
+
+\end_inset
+
+ is the same as
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Item_Environment
+\end_layout
+
+\end_inset
+
+, except that
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelWidthString
+\end_layout
+
+\end_inset
+
+ is passed as an argument to the environment.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelWidthString
+\end_layout
+
+\end_inset
+
+ can be defined in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+
+\bar under
+L
+\bar default
+ayout\SpecialChar \menuseparator
+
+\bar under
+P
+\bar default
+aragraph
+\end_layout
+
+\end_inset
+
+ dialog.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+LatexType
+\end_layout
+
+\end_inset
+
+ is perhaps a bit misleading, since these rules apply to SGML classes, too.
+ Visit the SGML class files for specific examples.
+\end_layout
+
+\begin_layout Standard
+Putting the last few things together, the LaTeX output will be either:
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+latexname[latexparam]{\SpecialChar \ldots{}
+}
+\end_layout
+
+\begin_layout Standard
+or:
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+begin{latexname}[latexparam] \SpecialChar \ldots{}
+
+\backslash
+end{latexname}.
+\end_layout
+
+\begin_layout Standard
+depending upon the LaTeX type.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LeftMargin
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string=""
+\end_layout
+
+\end_inset
+
+] 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 margin is defined as
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Manual
+\end_layout
+
+\end_inset
+
+ or
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Dynamic
+\end_layout
+
+\end_inset
+
+.
+ Then it is added to the manual or dynamic margin.
+
+\begin_inset Newline newline
+\end_inset
+
+The argument is passed as a string.
+ For example
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+MM
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+ means that the paragraph is indented with the width of
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+MM
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+ in the normal font.
+ You can get a negative width by prefixing the string with
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+-
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+ This way was chosen so that the look is the same with each used screen
+ font.
+
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Margin
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+Static
+\emph default
+, Manual, Dynamic, First_Dynamic, Right_Address_Box
+\end_layout
+
+\end_inset
+
+]
+\begin_inset Newline newline
+\end_inset
+
+The kind of margin that the layout has on the left side.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Static
+\end_layout
+
+\end_inset
+
+ just means a fixed margin.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Manual
+\end_layout
+
+\end_inset
+
+ means that the left margin depends on the string entered in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Edit\SpecialChar \menuseparator
+Paragraph
+\begin_inset space ~
+\end_inset
+
+Settings
+\end_layout
+
+\end_inset
+
+ dialog.
+ This is used to typeset nice lists without tabulators.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Dynamic
+\end_layout
+
+\end_inset
+
+ means that the margin depends on the size of the label.
+ This is used for automatic enumerated headlines.
+ It is obvious that the headline
+\begin_inset Quotes eld
+\end_inset
+
+5.4.3.2.1 Very long headline
+\begin_inset Quotes erd
+\end_inset
+
+ must have a wider left margin (as wide as
+\begin_inset Quotes eld
+\end_inset
+
+5.4.3.2.1
+\begin_inset Quotes erd
+\end_inset
+
+ plus the space) than
+\begin_inset Quotes eld
+\end_inset
+
+3.2 Very long headline
+\begin_inset Quotes erd
+\end_inset
+
+, even if standard
+\begin_inset Quotes eld
+\end_inset
+
+word processors
+\begin_inset Quotes erd
+\end_inset
+
+ are not able to do this.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+First_Dynamic
+\end_layout
+
+\end_inset
+
+ is similar, but only the very first row of the paragraph is dynamic, while
+ the others are static; this is used, for example, for descriptions.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Right_Address_Box
+\end_layout
+
+\end_inset
+
+ means the margin is chosen in a way that the longest row of this paragraph
+ fits to the right margin.
+ This is used to typeset an address on the right edge of the page.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+NeedProtect
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+0
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+1
+\end_layout
+
+\end_inset
+
+] Whether fragile commands in this layout should be
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+protect
+\end_layout
+
+\end_inset
+
+'ed.
+ (Note: This is
+\emph on
+not
+\emph default
+ whether this command should itself be protected.)
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Newline
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+0
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+1
+\end_layout
+
+\end_inset
+
+] Whether newlines are translated into LaTeX newlines (
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+
+\backslash
+
+\end_layout
+
+\end_inset
+
+) or not.
+ The translation can be switched off to allow more comfortable LaTeX editing
+ inside LyX.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+NextNoIndent
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+1
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\emph on
+0
+\end_layout
+
+\end_inset
+
+] Whether the following Paragraph is allowed to indent its very first row.
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+1
+\end_layout
+
+\end_inset
+
+ means that it is not allowed to do so;
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+0
+\end_layout
+
+\end_inset
+
+ means it could do so if it wants to.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+ObsoletedBy
+\end_layout
-\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.
-\layout Description
+\end_inset
+ Name of a layout that has replaced this layout.
+ This is used to rename a layout, while keeping backward compatibility.
+\end_layout
-\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.
-\layout Description
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+OptionalArgs
+\end_layout
+
+\end_inset
-\family typewriter
-\series medium
-Parsep
-\family default
-\series default
[
-\family typewriter
-float=0
-\family default
-] The vertical space between two paragraphs of this layout.
-\layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+int=0
+\end_layout
-\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
-.
-
-\layout Description
+\end_inset
+] 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
-\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
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-.
- 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
+\begin_layout Plain Layout
ParIndent
-\family default
-.
-\layout Description
+\end_layout
+\end_inset
-\family typewriter
-\series medium
-RightMargin
-\family default
-\series default
[
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
string=""
-\family default
-] Similar to
-\family typewriter
-LeftMargin
-\family default
-.
-\layout Description
+\end_layout
+\end_inset
-\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_Chapter,
-\newline
-Counter_Section, Counter_Subsection, Counter_Subsubsection,
-\newline
-Counter_Paragraph, Counter_Subparagraph, Counter_EnumI,
-\family default
-
-\family typewriter
-
-\newline
-Counter_EnumII, Counter_EnumIII, Counter_EnumIV
-\family default
-]
-\newline
+] The indent of the very first line of a paragraph.
+ The
+\begin_inset Flex CharStyle:Code
+status collapsed
-\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
+\begin_layout Plain Layout
+Parindent
+\end_layout
-Figure
-\begin_inset Quotes erd
-\end_inset
+\end_inset
- and
-\begin_inset Quotes eld
-\end_inset
+ will be fixed for a certain layout.
+ The exception is Standard layout, since the indentation of a Standard layout
+ paragraph can be prohibited with
+\begin_inset Flex CharStyle:Code
+status collapsed
-Table
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+NextNoIndent
+\end_layout
+
+\end_inset
.
-
-\family typewriter
-Sensitive
-\family default
- means the (hardcoded) label string depends on the kind of float.
- The
-\family typewriter
-Counter_xxx
-\family default
- label types should be self explanatory.
-\layout Description
+ Also, Standard layout paragraphs inside environments use the
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Parindent
+\end_layout
-\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.
-\layout Description
+\end_inset
+ of the environment, not their native one.
+ For example, Standard paragraphs inside an enumeration are not indented.
+\end_layout
-\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
-).
-\layout Description
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Parsep
+\end_layout
-\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\SpecialChar ~
-Settings
-\family default
- dialog.
- When the labeltype is
-\family typewriter
-Counter_
-\emph on
-xxx
-\family default
-\emph default
-, this string is prepended to the counter.
-\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
+\end_inset
-nothing
-\begin_inset Quotes erd
-\end_inset
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
-,
-\family typewriter
-Box
-\family default
- (resp.
-\family typewriter
-\SpecialChar ~
-Filled_Box
-\family default
-) is a white (resp.\SpecialChar ~
-black) square suitable for end of proof markers,
-\family typewriter
-Static
-\family default
- is an explicit text string.
-\layout Description
+\begin_layout Plain Layout
+float=0
+\end_layout
+\end_inset
-\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
-.
-
-\layout Description
+] The vertical space between two paragraphs of this layout.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\series medium
-Align
-\family default
-\series default
- [
-\family typewriter
-\emph on
-block
-\emph default
-, left, right, center
-\family default
-] Paragraph alignment.
-\layout Description
+\begin_layout Plain Layout
+Parskip
+\end_layout
+\end_inset
-\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.
-\layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+float=0
+\end_layout
+\end_inset
-\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
+] LyX allows the user to choose either
\begin_inset Quotes eld
-\end_inset
+\end_inset
-Vertical space above
+indent
\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\SpecialChar ~
-Settings
-\family default
- dialog can be set when initializing a paragraph with this layout
-\begin_inset Foot
-collapsed true
+\end_inset
-\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_inset
+ or
+\begin_inset Quotes eld
+\end_inset
-.
-
-\layout Description
+skip
+\begin_inset Quotes erd
+\end_inset
+ to typeset a document.
+ When
+\begin_inset Quotes eld
+\end_inset
-\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
-.
-\layout Description
+indent
+\begin_inset Quotes erd
+\end_inset
+ is chosen, this value is completely ignored.
+ When
+\begin_inset Quotes eld
+\end_inset
-\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
+skip
+\begin_inset Quotes erd
+\end_inset
-\backslash
-protect
-\family default
-'ed.
-\layout Description
+ is chosen, the parindent of a LaTeXtype
+\begin_inset Quotes eld
+\end_inset
+Paragraph
+\begin_inset Quotes erd
+\end_inset
-\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
+ layout is ignored and all paragraphs are separated by this parskip argument.
+ The vertical space is calculated with
+\begin_inset Flex CharStyle:Code
+status collapsed
-\backslash
+\begin_layout Plain Layout
+value
+\begin_inset space ~
+\end_inset
-\backslash
+* DefaultHeight
+\end_layout
-\family default
-) or not.
- The translation can be switched off to allow more comfortable LaTeX editing
- inside LyX.
-\layout Description
+\end_inset
+ where
+\begin_inset Flex CharStyle:Code
+status collapsed
-\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.
-\layout Description
+\begin_layout Plain Layout
+DefaultHeight
+\end_layout
+\end_inset
-\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.
-\layout Description
+ is the height of a row with the normal font.
+ This way, the look stays the same with different screen fonts.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\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.
-\layout Description
+\begin_layout Plain Layout
+PassThru
+\end_layout
+\end_inset
-\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
-.
-\layout Description
+
+\begin_inset CommandInset label
+LatexCommand label
+name "des:PathThru"
+\end_inset
-\family typewriter
-\series medium
-Font
-\series default
[
-\family default
- The font used for both the text body
-\emph on
-and
-\emph default
- the label.
- See section\SpecialChar ~
+\emph on
-\begin_inset LatexCommand \ref{sec:fonts}
+\begin_inset Flex CharStyle:Code
+status collapsed
-\end_inset
+\begin_layout Plain Layout
-.
- Note that defining this font automatically defines the
-\family typewriter
-LabelFont
-\family default
- to the same value.
-\layout Description
+\emph on
+0
+\end_layout
+\end_inset
-\family typewriter
-\series medium
-TextFont
-\family default
-\series default
- The font used for the text body .
- See section\SpecialChar ~
-\begin_inset LatexCommand \ref{sec:fonts}
+\emph default
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+1
+\end_layout
-\end_inset
+\end_inset
-.
-\layout Description
+] Whether the contents of this paragraph should be output in raw form, meaning
+ without special translations that LaTeX would require.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\series medium
-LabelFont
-\family default
-\series default
- The font used for the label.
- See section\SpecialChar ~
+\begin_layout Plain Layout
+Preamble
+\end_layout
-\begin_inset LatexCommand \ref{sec:fonts}
+\end_inset
-\end_inset
+
+\begin_inset CommandInset label
+LatexCommand label
+name "des:Preamble"
-.
-\layout Description
+\end_inset
+Information to be included in the LaTeX preamble when this style is used.
+ Used to define macros, load packages, etc., required by this particular
+ style.
+ Must end with
+\begin_inset Quotes eld
+\end_inset
-\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.
-\layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\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
-collapsed true
+\begin_layout Plain Layout
+EndPreamble
+\end_layout
-\layout Standard
+\end_inset
-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_inset
+
+\begin_inset Quotes erd
+\end_inset
.
-\layout Standard
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\begin_inset ERT
-status Inlined
+\begin_layout Plain Layout
+Requires
+\end_layout
-\layout Standard
+\end_inset
-\backslash
-end{sloppypar}
-\end_inset
+[
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+string
+\end_layout
-\layout Subsection
+\end_inset
-Floats
-\layout Standard
+]
+\begin_inset CommandInset label
+LatexCommand label
+name "des:Requires"
+\end_inset
-\begin_inset LatexCommand \label{sec:floats}
+Whether the layout requires the feature
+\begin_inset Flex CharStyle:Code
+status collapsed
-\end_inset
+\begin_layout Plain Layout
+string
+\end_layout
-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
-\layout LyX-Code
+\end_inset
-Input stdfloats.inc
-\layout Standard
+.
+ See the description of
+\begin_inset Flex CharStyle:Code
+status collapsed
-at a reasonable location of the text class.
-\begin_inset Foot
-collapsed true
+\begin_layout Plain Layout
+Provides
+\end_layout
-\layout Standard
+\end_inset
-Don't forget to also have a look at counters in next section.
-\end_inset
+ above (page
+\begin_inset CommandInset ref
+LatexCommand pageref
+reference "des:FreeSpacing"
- 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:
-\layout Description
+\end_inset
+
+) for information on `features'.
+
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+RightMargin
+\end_layout
+
+\end_inset
-\family typewriter
-\series medium
-Type
-\family default
-\series default
[
-\family typewriter
-string
-\family default
-=
-\begin_inset Quotes erd
-\end_inset
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+string=""
+\end_layout
-\begin_inset Quotes erd
-\end_inset
+\end_inset
-] type - The
-\begin_inset Quotes eld
-\end_inset
+] Similar to
+\begin_inset Flex CharStyle:Code
+status collapsed
-type
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+LeftMargin
+\end_layout
- of the new class of floats, like program or algorithm.
- After the appropriate
-\family typewriter
+\end_inset
-\backslash
-newfloat
-\family default
-, commands such as
-\family typewriter
+.
+\end_layout
-\backslash
-begin{program}
-\family default
- or
-\family typewriter
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\backslash
-end{algorithm*}
-\family default
- will be available.
-\layout Description
+\begin_layout Plain Layout
+Spacing
+\end_layout
+\end_inset
-\family typewriter
-\series medium
-GuiName
-\family default
-\series default
[
-\family typewriter
-string
-\family default
-=
-\begin_inset Quotes erd
-\end_inset
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\begin_inset Quotes erd
-\end_inset
+\emph on
+single
+\emph default
+, onehalf, double, other
+\end_layout
-] The string that will be used in the menus and also for the caption.
-\layout Description
+\end_inset
+
+
+\emph on
+value
+\emph default
+] This defines what the default spacing should be in the layout.
+ The arguments
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+single
+\end_layout
+
+\end_inset
-\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
-.
-\layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+onehalf
+\end_layout
-\family typewriter
-\series medium
-NumberWithin
-\family default
-\series default
- [
-\family typewriter
-string
-\family default
-=
-\begin_inset Quotes erd
-\end_inset
+\end_inset
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+double
+\end_layout
-] 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.
-
-\layout Description
+\end_inset
+ correspond respectively to a multiplier value of 1, 1.25 and 1.667.
+ If you specify the argument
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\series medium
-Style
-\family default
-\series default
- [
-\family typewriter
-string
-\family default
-=
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+other
+\end_layout
+\end_inset
-\begin_inset Quotes erd
-\end_inset
+, then you should also provide a numerical argument which will be the actual
+ multiplier value.
+ Note that, contrary to other parameters,
+\begin_inset Flex CharStyle:Code
+status collapsed
-] The style used when defining the float using
-\family typewriter
+\begin_layout Plain Layout
+Spacing
+\end_layout
-\backslash
-newfloat
-\family default
-.
-\layout Description
+\end_inset
+ implies the generation of specific LaTeX code, using the package
+\family roman
-\family typewriter
-\series medium
-Placement
-\family default
-\series default
- [
-\family typewriter
-string
-\family default
-=
-\begin_inset Quotes erd
-\end_inset
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+setspace.sty
+\end_layout
-\begin_inset Quotes erd
-\end_inset
+\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
-collapsed true
+.
+\end_layout
-\layout Standard
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-Note that the order of these letters in the string is irrelevant, like in
- LaTeX.
-\end_inset
+\begin_layout Plain Layout
+TextFont
+\end_layout
- 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
+\end_inset
-here
-\begin_inset Quotes erd
-\end_inset
+ The font used for the text body .
+ See section
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:fonts"
+
+\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
.
-\layout Description
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\series medium
-Extension
-\family default
-\series default
- [
-\family typewriter
-string
-\family default
-=
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+\series medium
+TocLevel [int]
+\end_layout
-\begin_inset Quotes erd
-\end_inset
+\end_inset
-] The file name extension of an auxiliary file for the list of figures (or
- whatever).
- LaTeX writes the captions to this file.
-\layout Description
+ The level of the style in the table of contents.
+ This is used for automatic numbering of section headings.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+TopSep
+\end_layout
+
+\end_inset
-\family typewriter
-\series medium
-ListName
-\family default
-\series default
[
-\family typewriter
-string
-\family default
-=
-\begin_inset Quotes erd
-\end_inset
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+float=0
+\end_layout
-\begin_inset Quotes erd
-\end_inset
+\end_inset
-] The heading used for the list of floats.
-\layout Subsection
+] 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
-Counters
-\layout Standard
+\begin_layout Subsection
+Floats
+\end_layout
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:floats"
-\begin_inset LatexCommand \label{sec:counter}
+\end_inset
-\end_inset
+Since version 1.3.0 of LyX, it is has been both possible and necessary to
+ define the floats (
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-Since version 1.3.0 of LyX, it is necessary to define the counters (
-\family sans
-chapter
-\family default
-,
-\family sans
+\begin_layout Plain Layout
figure
-\family default
+\end_layout
+
+\end_inset
+
+,
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+table
+\end_layout
+
+\end_inset
+
, \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
-\layout LyX-Code
+ Standard floats are included in the file
+\begin_inset Flex CharStyle:Code
+status collapsed
-Input stdcounters.inc
-\layout Standard
+\begin_layout Plain Layout
+stdfloats.inc
+\end_layout
-The definition of counters if presently a bit primitive in LyX, since many
- things are still hardcoded.
- The following two parameters can be used:
-\layout Description
+\end_inset
+, so you may have to do no more than add
+\end_layout
-\family typewriter
-\series medium
-Name
-\family default
-\series default
- [
-\family typewriter
-string
-\family default
-=
-\begin_inset Quotes erd
-\end_inset
+\begin_layout LyX-Code
+Input stdfloats.inc
+\end_layout
+\begin_layout Standard
+to your layout file.
+ If you want to implement a text class that proposes some other float types
+ (like the AGU class bundled with LyX), the information below will hopefully
+ help you:
+\end_layout
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-] The name of the counter
-\layout Description
+\begin_layout Plain Layout
+Extension
+\end_layout
+\end_inset
-\family typewriter
-\series medium
-Within
-\family default
-\series default
[
-\family typewriter
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
string
-\family default
-=
-\begin_inset Quotes erd
-\end_inset
+\end_layout
+\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?).
-\layout Subsection
+\end_inset
-Font description
-\layout Standard
+\begin_inset Quotes erd
+\end_inset
-\begin_inset LatexCommand \label{sec:fonts}
+] The file name extension of an auxiliary file for the list of figures (or
+ whatever).
+ LaTeX writes the captions to this file.
+\end_layout
-\end_inset
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-A font description looks like that:
-\layout LyX-Code
+\begin_layout Plain Layout
+GuiName
+\end_layout
-Font
-\family roman
-\emph on
- or
-\family default
-\emph default
-LabelFont
-\layout LyX-Code
+\end_inset
- ...
-\layout LyX-Code
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
-EndFont
-\layout Standard
+\begin_layout Plain Layout
+string
+\end_layout
-and the following commands are available:
-\layout Description
+\end_inset
+=
+\begin_inset Quotes erd
+\end_inset
-\family typewriter
-\series medium
-Family
-\family default
-\series default
- [
-\family typewriter
-\emph on
-Roman
-\emph default
-, Sans, Typewriter
-\family default
-]
-\layout Description
+\begin_inset Quotes erd
+\end_inset
-\family typewriter
-\series medium
-Series
-\family default
-\series default
- [
-\family typewriter
-\emph on
-Medium
-\emph default
-, Bold
-\family default
-]
-\layout Description
+] The string that will be used in the menus and also for the caption.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-\series medium
-Shape
-\family default
-\series default
- [
-\family typewriter
-\emph on
-Up
-\emph default
-, Italic, SmallCaps, Slanted
-\family default
-]
-\layout Description
+\begin_layout Plain Layout
+LaTeXBuiltin
+\end_layout
+\end_inset
-\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
-]
-\layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\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
-]
-\layout Section
+\emph on
+0
+\end_layout
-Creating Templates
-\begin_inset LatexCommand \label{sec:templates}
+\end_inset
-\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+1
+\end_layout
-\layout Standard
+\end_inset
-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
+] Set to
+\begin_inset Flex CharStyle:Code
+status collapsed
-\backslash
-fontscheme
-\family default
- or
-\family typewriter
+\begin_layout Plain Layout
+1
+\end_layout
-\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
-.
-
-\layout Standard
+\end_inset
-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
+ if the float is already defined by the LaTeX document class.
+ If this is set to
+\begin_inset Flex CharStyle:Code
+status collapsed
-\bar under
-P
-\bar default
-references
-\family default
-dialog (tabs
-\family sans
-Input
-\family default
-,
-\family sans
-Path
-\family default
-).
-
-\layout Standard
+\begin_layout Plain Layout
+0
+\end_layout
-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.
-\layout Chapter
+\end_inset
-Including External Material
-\layout Section
-
-Background
-\layout Standard
-
-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:
-\layout Itemize
-
-If you want to change the figure, you have to invoke an external program
- by hand
-\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
-\layout Itemize
-
-The graphics stuff does not provide any mechanisms for coping with different
- exported formats such as DocBook, HTML or raw Ascii
-\layout Standard
-
-The external material facility attempts to solve all of these problems
-\begin_inset Foot
-collapsed true
+, the float will be defined using the LaTeX package
+\begin_inset Flex CharStyle:Code
+status collapsed
-\layout Standard
+\begin_layout Plain Layout
+float
+\end_layout
-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_inset
+\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.
-\layout Section
-
-How does it work?
-\layout Standard
+\end_layout
-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
-\SpecialChar ~
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\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.
-\layout Standard
+\begin_layout Plain Layout
+ListName
+\end_layout
-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.
-\layout Standard
+\end_inset
-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.
-\layout Standard
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
-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.
-\layout Standard
-
-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.
-\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
-\SpecialChar ~
+\begin_layout Plain Layout
+string
+\end_layout
-\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.
-\layout Section
-
-The external material dialog
-\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.
-\layout Standard
-
-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
+\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.
-\layout Standard
-
-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.
-\layout Standard
-
-At the right side of the dialog, you'll find three buttons:
-\family sans
-Edit
-\family default
-\SpecialChar ~
+\end_inset
-\family sans
-file
-\family default
-,
-\family sans
-View
-\family default
-\SpecialChar ~
-\family sans
-result
-\family default
-, and
-\family sans
-Update
-\family default
-\SpecialChar ~
+\begin_inset Quotes erd
+\end_inset
-\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
-\SpecialChar ~
-
-\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
-\SpecialChar ~
+] The heading used for the list of floats.
+\end_layout
-\family sans
-result
-\family default
- or
-\family sans
-Update
-\family default
-\SpecialChar ~
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-result
-\family default
- buttons.
-\layout Section
+\begin_layout Plain Layout
+NumberWithin
+\end_layout
-Examples
-\layout Standard
+\end_inset
-In this section, we should include some examples of use of the external
- material.
- Those examples could include:
-\layout Itemize
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
-External raster images
-\layout Itemize
+\begin_layout Plain Layout
+string
+\end_layout
-External XFig figures
-\layout Itemize
+\end_inset
-Chess diagrams
-\layout Itemize
+=
+\begin_inset Quotes erd
+\end_inset
-Sound samples
-\layout Itemize
-The use of makefiles
-\layout Itemize
+\begin_inset Quotes erd
+\end_inset
-Recursive external LyX templates
-\layout Section
+] 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
+\begin_inset Flex CharStyle:Code
+status collapsed
-The external template configuration file
-\layout Standard
+\begin_layout Plain Layout
+chapter
+\end_layout
-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.
-\layout Standard
+\end_inset
-Having said that, we encourage you to submit any interesting templates that
- you create.
+, the floats will be numbered within chapters.
-\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
-.
- At some point in time, hopefully somebody will document the template contents,
- and the syntax used to define your templates.
-\layout Section
+\end_layout
-The substitution mechanism
-\layout Standard
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-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.
-\layout Standard
+\begin_layout Plain Layout
+Placement
+\end_layout
-Also, whenever external material is to be displayed, the name will be produced
- by the substitution mechanism.
-\layout Standard
+\end_inset
-The available macros are the following:
-\layout Description
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
-$$FName The filename of the file specified in the external material dialog.
-\layout Description
+\begin_layout Plain Layout
+string
+\end_layout
-$$Basename The filename without the extension.
-\layout Description
+\end_inset
-$$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.
-\layout Description
+=
+\begin_inset Quotes erd
+\end_inset
-$$Contents(
-\begin_inset Quotes eld
-\end_inset
-filename.ext
\begin_inset Quotes erd
-\end_inset
+\end_inset
-) This macro will expand to the contents of the file with the name
-\family typewriter
-filename.ext
-\family default
-.
-\layout Description
+] The default placement for the given class of floats.
+ The string should be as in standard LaTeX:
+\begin_inset Flex CharStyle:Code
+status collapsed
-$$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.
-\layout Standard
+\begin_layout Plain Layout
+t
+\end_layout
-In addition to these, the facility will expand general environment variables
- with a syntax like
-\family typewriter
-${PATH}
-\family default
-.
-\layout Section
+\end_inset
-Security discussion
-\layout Standard
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-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.
-\layout Standard
+\begin_layout Plain Layout
+b
+\end_layout
-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.
-\layout Standard
+\end_inset
-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.
-\layout Standard
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-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.
-\layout Standard
+\begin_layout Plain Layout
+p
+\end_layout
-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.
-\layout Chapter
+\end_inset
+
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+h
+\end_layout
+
+\end_inset
+
+ for top, bottom, page, and here, respectively.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Note that the order of these letters in the string is irrelevant, like in
+ LaTeX.
+\end_layout
-The LyX Server
-\layout Section
+\end_inset
-Introduction
-\layout Standard
+ On top of that there is a new type,
+\begin_inset Flex CharStyle:Code
+status collapsed
-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.
-\layout Section
+\begin_layout Plain Layout
+H
+\end_layout
-Starting the LyX Server
-\layout Standard
+\end_inset
-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
+, which does not really correspond to a float, since it means: put it
\begin_inset Quotes eld
-\end_inset
+\end_inset
+
+here
+\begin_inset Quotes erd
+\end_inset
+ and nowhere else.
+ Note however that the
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-.lyxpipe.in
-\family default
+\begin_layout Plain Layout
+H
+\end_layout
-\begin_inset Quotes erd
-\end_inset
+\end_inset
- and
+ specifier is special and, because of implementation details, cannot be
+ used in non-built in float types.
+ If you do not understand what this means, just use
\begin_inset Quotes eld
-\end_inset
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+tbp
+\end_layout
+
+\end_inset
-\family typewriter
-.lyxpipe.out
-\family default
\begin_inset Quotes erd
-\end_inset
+\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
+\end_layout
-\bar under
-P
-\bar default
-references
-\family default
- dialog, for example
-\family typewriter
-"/home/myhome/.lyxpipe"
-\family default
-.
-\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.
-\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 4096.
-\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.
-\layout Standard
-
-Other than this, there are a few points to consider:
-\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.
-\layout Itemize
-
-On OS/2, only one client can connect to LyXServer at a time.
-\layout Itemize
-
-On OS/2, clients must open inpipe with
-\family typewriter
-O_WRONLY
-\family default
- mode.
-\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
-.
-\layout Section
-
-Normal communication
-\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:
-\layout Quote
-
-LYXCMD:
-\emph on
-clientname
-\emph default
-:
-\emph on
-function
-\emph default
-:
-\emph on
-argument
-\layout Standard
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-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.
-\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.
-\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
+\begin_layout Plain Layout
+Style
+\end_layout
-self-insert
-\begin_inset Quotes erd
-\end_inset
-
- which will insert the argument as text at the cursor position.)
-\layout Standard
-
-The answer from LyX will arrive in the output pipe and be of the form
-\layout Quote
-
-INFO:
-\emph on
-clientname
-\emph default
-:
-\emph on
-function
-\emph default
-:
-\emph on
-data
-\layout Standard
+\end_inset
-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
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
-font-state
-\begin_inset Quotes erd
-\end_inset
-
-, while other will return an empty data-response.
- This means that the command execution went fine.
-\layout Standard
-
-In case of errors, the response from LyX will have this form
-\layout Quote
-
-ERROR:
-\emph on
-clientname
-\emph default
-:
-\emph on
-function
-\emph default
-:
-\emph on
-error message
-\layout Standard
-
-where the
-\emph on
-error message
-\emph default
- should contain an explanation of why the command failed.
-\layout Standard
-
-Examples:
-\layout LyX-Code
-
-echo "LYXCMD:test:beginning-of-buffer:" >~/.lyxpipe.in
-\layout LyX-Code
-
-echo "LYXCMD:test:get-xy:" >~/.lyxpipe.in
-\newline
-read a <~/.lyxpipe.out
-\newline
-echo $a
-\layout Section
-
-Notification
-\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
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
-notify
+=
\begin_inset Quotes erd
-\end_inset
+\end_inset
-.
- The format of the string LyX sends is as follows:
-\layout Quote
+\begin_inset Quotes erd
+\end_inset
-\family typewriter
-NOTIFY:
-\family default
-\emph on
-key-sequence
-\layout Standard
+] The style used when defining the float using
+\begin_inset Flex CharStyle:Code
+status collapsed
-where
-\emph on
-key-sequence
-\emph default
- is the printed representation of the key sequence that was actually typed
- by the user.
-\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
+\begin_layout Plain Layout
-notify
-\begin_inset Quotes erd
-\end_inset
+\backslash
+newfloat
+\end_layout
-, 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.
-\layout Section
+\end_inset
-The simple LyX Server Protocol
-\layout Standard
+.
+\end_layout
-LyX implements a simple protocol that can be used for session management.
- All messages are of the form
-\layout Quote
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-LYXSRV:
-\emph on
-clientname
-\emph default
-:
-\emph on
-protocol message
-\layout Standard
+\begin_layout Plain Layout
+Type
+\end_layout
-where
-\emph on
-protocol message
-\emph default
- can be
-\begin_inset Quotes eld
-\end_inset
+\end_inset
-hello
-\begin_inset Quotes erd
-\end_inset
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
- or
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Plain Layout
+string
+\end_layout
-bye
+\end_inset
+
+=
\begin_inset Quotes erd
-\end_inset
+\end_inset
-.
- If
-\begin_inset Quotes eld
-\end_inset
-hello
\begin_inset Quotes erd
-\end_inset
+\end_inset
- is received from a client, LyX will report back to inform the client that
- it's listening to it's messages, while
+] The
\begin_inset Quotes eld
-\end_inset
+\end_inset
-bye
+type
\begin_inset Quotes erd
-\end_inset
-
- sent from LyX will inform clients that LyX is closing.
-\layout Chapter
-\start_of_appendix
-Bindings
-\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.
-\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.
-\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.
-\layout Section
+\end_inset
-Toolbar
-\layout LyX-Code
+ of the new class of floats, like program or algorithm.
+ After the appropriate
+\begin_inset Flex CharStyle:Code
+status collapsed
-Toolbar
-\layout LyX-Code
+\begin_layout Plain Layout
- Layouts
-\layout LyX-Code
+\backslash
+newfloat
+\end_layout
- Icon "buffer-open"
-\layout LyX-Code
+\end_inset
- Icon "buffer-write"
-\layout LyX-Code
+, commands such as
+\begin_inset Flex CharStyle:Code
+status collapsed
- Icon "buffer-print"
-\layout LyX-Code
+\begin_layout Plain Layout
- Separator
-\layout LyX-Code
+\backslash
+begin{program}
+\end_layout
- Icon "cut"
-\layout LyX-Code
+\end_inset
- Icon "copy"
-\layout LyX-Code
+ or
+\begin_inset Flex CharStyle:Code
+status collapsed
- Icon "paste"
-\layout LyX-Code
+\begin_layout Plain Layout
- Separator
-\layout LyX-Code
+\backslash
+end{algorithm*}
+\end_layout
- Icon "font-emph"
-\layout LyX-Code
+\end_inset
- Icon "font-noun"
-\layout LyX-Code
+ will be available.
+\end_layout
- Icon "font-free"
-\layout LyX-Code
+\begin_layout Standard
+Note that defining a float with type
+\begin_inset Flex CharStyle:Code
+status collapsed
- Separator
-\layout LyX-Code
+\begin_layout Plain Layout
- Icon "tex-mode"
-\layout LyX-Code
+\emph on
+type
+\end_layout
- Icon "math-mode"
-\layout LyX-Code
+\end_inset
- Separator
-\layout LyX-Code
+ automatically defines the corresponding counter with name
+\begin_inset Flex CharStyle:Code
+status collapsed
- Icon "footnote-insert"
-\layout LyX-Code
+\begin_layout Plain Layout
- Icon "marginpar-insert"
-\layout LyX-Code
+\emph on
+type
+\end_layout
- Icon "depth-next"
-\layout LyX-Code
+\end_inset
- Separator
-\layout LyX-Code
+.
+\end_layout
- Icon "figure-insert"
-\layout LyX-Code
+\begin_layout Subsection
+Flex insets and InsetLayout
+\end_layout
- Icon "dialog-tabular-insert"
-\layout LyX-Code
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:charstyle"
-End
-\layout Section
+\end_inset
-Menu
-\layout Subsection
+LyX has supported character styles since version 1.4.0; as of version 1.6.0,
+ these are called Flex insets.
+
+\end_layout
-File
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+Flex insets come in three different kinds:
+\end_layout
+\begin_layout Itemize
+character style (
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-f\SpecialChar ~
-a
-\family typewriter
-buffer-write-as
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+CharStyle
+\end_layout
+\end_inset
-\family sans
-M-f\SpecialChar ~
-c
-\family default
+): These define semantic markup corresponding to such LaTeX commands as
-\family typewriter
-buffer-close
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\family sans
-M-f\SpecialChar ~
-d
-\family default
-
-\family typewriter
-buffer-reload
-\layout List
-\labelwidthstring 00.00.0000
+\backslash
+noun
+\end_layout
+\end_inset
-\family sans
-M-f\SpecialChar ~
-e
-\family default
-
-\family typewriter
-file_export
-\family default
- submenu
-\layout List
-\labelwidthstring 00.00.0000
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\family sans
-M-f\SpecialChar ~
-f
-\family typewriter
-buffer-export fax
-\layout List
-\labelwidthstring 00.00.0000
+\backslash
+code
+\end_layout
+\end_inset
-\family sans
-M-f\SpecialChar ~
-i
-\family default
-
-\family typewriter
-file_import
-\family default
- submenu
-\layout List
-\labelwidthstring 00.00.0000
+.
+\end_layout
+\begin_layout Itemize
+user custom (
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-f\SpecialChar ~
-n
-\family typewriter
-buffer-new
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Custom
+\end_layout
+\end_inset
-\family sans
-M-f\SpecialChar ~
-o
-\family default
-
-\family typewriter
-buffer-open
-\layout List
-\labelwidthstring 00.00.0000
+): These can be used to define custom collapsible insets, similar to TeX
+ code, footnote, and the like.
+ An obvious example is an endnote inset, which is defined in the
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+endnote
+\end_layout
-\family sans
-M-f\SpecialChar ~
-p
-\family default
-
-\family typewriter
-buffer-print
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ module.
+\end_layout
-\family sans
-M-f\SpecialChar ~
-s
-\family default
-
-\family typewriter
-buffer-write
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Itemize
+XML elements (
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Element
+\end_layout
-\family sans
-M-f\SpecialChar ~
-t
-\family typewriter
-buffer-new-template
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+): For use with DocBook classes.
+\end_layout
-\family sans
-M-f\SpecialChar ~
-v
-\family typewriter
- file_vc
-\family default
- submenu
-\begin_deeper
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+Flex insets are defined using the
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+InsetLayout
+\end_layout
-\family sans
-h
-\family typewriter
- vc-history
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ tag, which shall be explained in a moment.
+\end_layout
-\family sans
-i
-\family typewriter
- vc-check-in
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+The
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+InsetLayout
+\end_layout
-\family sans
-l
-\family typewriter
- vc-revert
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ tag also serves another function: It can be used to customize the general
+ layout of many different types of insets.
+ Currently,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-o
-\family typewriter
- vc-check-out
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+InsetLayout
+\end_layout
+\end_inset
-\family sans
-r
-\family typewriter
- vc-register
-\layout List
-\labelwidthstring 00.00.0000
+ can be used to customize the layout parameters for footnotes, marginal
+ notes, note insets, TeX code (ERT) insets, branches, listings, indexes,
+ boxes, tables, algorithms, URLs, and optional arguments, as well as to
+ define Flex insets.
+\end_layout
+\begin_layout Standard
+The
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-u
-\family typewriter
- vc-undo-last
-\end_deeper
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+InsetLayout
+\end_layout
+\end_inset
-\family sans
-M-f\SpecialChar ~
-x
-\family typewriter
-lyx-quit
-\layout Subsection
+ definition must begin with a line of the form:
+\end_layout
-Edit
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout LyX-Code
+InsetLayout <Type>
+\end_layout
+\begin_layout Standard
+Here
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-e\SpecialChar ~
-a
-\family default
-
-\family typewriter
-paste
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+<Type>
+\end_layout
+\end_inset
-\family sans
-M-e\SpecialChar ~
-c
-\family default
-
-\family typewriter
-cut
-\layout List
-\labelwidthstring 00.00.0000
+ indicates the inset whose layout is being defined, and here there are two
+ cases.
+\end_layout
+\begin_layout Enumerate
+The layout for a pre-existing inset is being modified.
+ In this case, can be
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-e\SpecialChar ~
-d
-\family default
-
-\family typewriter
-redo
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+<Type>
+\end_layout
+\end_inset
-\family sans
-M-e\SpecialChar ~
-e
-\family default
-
-\family typewriter
-error-remove-all
-\layout List
-\labelwidthstring 00.00.0000
+ any one of the following:
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Algorithm
+\end_layout
-\family sans
-M-e\SpecialChar ~
-f
-\family default
-
-\family typewriter
-find-replace
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Branch
+\end_layout
-\family sans
-M-e\SpecialChar ~
-h
-\family default
-
-\family typewriter
-buffer-chktex
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-e\SpecialChar ~
-i
-\family default
-
-\family typewriter
-edit_floats
-\family default
- submenu
-\begin_deeper
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Box
+\end_layout
+\end_inset
-\family sans
-a
-\family default
-
-\family typewriter
-tabular-feature append-row
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Box:shaded
+\end_layout
-\family sans
-b
-\family default
-
-\family typewriter
-tabular-feature toggle-line-bottom
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-c
-\family default
-
-\family typewriter
-tabular-feature align-center
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+ERT
+\end_layout
+\end_inset
-\family sans
-d
-\family default
-
-\family typewriter
-tabular-feature delete-column
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Figure
+\end_layout
-\family sans
-e
-\family default
-
-\family typewriter
-tabular-feature align-left
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-i
-\family default
-
-\family typewriter
-tabular-feature align-right
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Foot
+\end_layout
+\end_inset
-\family sans
-l
-\family default
-
-\family typewriter
-tabular-feature toggle-line-left
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Index
+\end_layout
-\family sans
-m
-\family default
-
-\family typewriter
-tabular-feature multicolumn
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-n
-\family default
-
-\family typewriter
-tabular-feature valign-center
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Info
+\end_layout
+\end_inset
-\family sans
-o
-\family default
-
-\family typewriter
-tabular-feature valign-top
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Info:menu
+\end_layout
-\family sans
-r
-\family default
-
-\family typewriter
-tabular-feature toggle-line-right
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-t
-\family default
-
-\family typewriter
-tabular-feature toggle-line-top
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Info:shortcut
+\end_layout
+\end_inset
-\family sans
-u
-\family default
-
-\family typewriter
-tabular-feature append-column
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Info:shortcuts
+\end_layout
-\family sans
-v
-\family default
-
-\family typewriter
-tabular-feature valign-bottom
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-w
-\family default
-
-\family typewriter
-tabular-feature delete-row
-\end_deeper
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Listings
+\end_layout
+\end_inset
-\family sans
-M-e\SpecialChar ~
-l
-\family default
-
-\family typewriter
-math-panel
-\begin_deeper
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Marginal
+\end_layout
-\family sans
-a
-\family typewriter
- floats-operate openfoot
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-c
-\family typewriter
- floats-operate closefoot
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Note:Comment
+\end_layout
+\end_inset
-\family sans
-f
-\family typewriter
- floats-operate openfig
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Note:Note
+\end_layout
-\family sans
-m
-\family typewriter
- melt
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-o
-\family typewriter
- open-stuff
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Note:GreyedOut
+\end_layout
+\end_inset
-\family sans
-t
-\family typewriter
- floats-operate closefig
-\end_deeper
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+OptArg
+\end_layout
-\family sans
-M-e\SpecialChar ~
-o
-\family default
-
-\family typewriter
-copy
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-e\SpecialChar ~
-p
-\family default
-
-\family typewriter
-dialog-preferences
-\family sans
-
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Table
+\end_layout
+\end_inset
-\family sans
-M-e\SpecialChar ~
-r
-\family default
-
-\family typewriter
-reconfigure
-\layout List
-\labelwidthstring 00.00.0000
+, or
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+URL
+\end_layout
-\family sans
-M-e\SpecialChar ~
-s
-\family default
+\end_inset
+
+.
-\family typewriter
-spellchecker
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Enumerate
+The layout for a Flex inset is being defined.
+ In this case,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-e\SpecialChar ~
-t
-\family default
-
-\family typewriter
-edit_tabular
-\family default
- submenu
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+<Type>
+\end_layout
+\end_inset
-\family sans
-M-e\SpecialChar ~
-u
-\family typewriter
-undo
-\layout List
-\labelwidthstring 00.00.0000
+ can be any valid identifier not used by a pre-existing inset.
+ Note that the definition of a flex inset must
+\emph on
+ als
+\emph default
+o include a
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+LyXType
+\end_layout
-\family sans
-M-e\SpecialChar ~
-x
-\family typewriter
-edit_paste
-\family default
- submenu
-\begin_deeper
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ entry.
+\end_layout
-\family sans
-l
-\family default
-
-\family typewriter
-primary-selection-paste
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+The
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+InsetLayout
+\end_layout
-\family sans
-p
-\family default
-
-\family typewriter
-primary-selection-paste paragraph
-\end_deeper
-\layout Subsection
+\end_inset
-Insert
-\layout List
-\labelwidthstring 00.00.0000
+ definition can contain the following entries:
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-i\SpecialChar ~
-a
-\family default
-
-\family typewriter
-insert_floats
-\family default
- submenu
-\begin_deeper
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+BgColor
+\end_layout
+\end_inset
-\family sans
-a
-\family default
-
-\family typewriter
-buffer-float-insert algorithm
-\layout List
-\labelwidthstring 00.00.0000
+ The color for the inset's background.
+ The valid colors are defined in
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+src/ColorCode.h
+\end_layout
-\family sans
-d
-\family default
-
-\family typewriter
-buffer-float-insert wide-tab
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+.
+\end_layout
-\family sans
-f
-\family default
-
-\family typewriter
-buffer-float-insert figure
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+CopyStyle
+\end_layout
-\family sans
-t
-\family default
-
-\family typewriter
-buffer-float-insert table
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ As with paragraph styles (see page
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "des:CopyStyle"
-\family sans
-w
-\family default
-
-\family typewriter
-buffer-float-insert wide-fig
-\end_deeper
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+).
+\end_layout
-\family sans
-M-i\SpecialChar ~
-b
-\family default
-
-\family typewriter
-dialog-tabular-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+CustomPars
+\end_layout
-\family sans
-M-i\SpecialChar ~
-c
-\family default
-
-\family typewriter
-citation-insert
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\family sans
-M-i\SpecialChar ~
-d
-\family default
-
-\family typewriter
-math-display
-\layout List
-\labelwidthstring 00.00.0000
+\emph on
+0
+\end_layout
+\end_inset
-\family sans
-M-i\SpecialChar ~
-e
-\family default
-
-\family typewriter
-buffer-child-insert
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+1
+\end_layout
-\family sans
-M-i\SpecialChar ~
-f
-\family default
-
-\family typewriter
-footnote-insert
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+] Indicates whether the user may employ the Paragraph Settings dialog to
+ customize the paragraph.
+\end_layout
-\family sans
-M-i\SpecialChar ~
-g
-\family default
-
-\family typewriter
-figure-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Decoration
+\end_layout
-\family sans
-M-i\SpecialChar ~
-h
-\family default
-
-\family typewriter
-math-mode
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ can be
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-i\SpecialChar ~
-i
-\family default
-
-\family typewriter
-index-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Classic
+\end_layout
+\end_inset
-\family sans
-M-i\SpecialChar ~
-l
-\family default
-
-\family typewriter
-label-insert
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Minimalistic
+\end_layout
-\family sans
-M-i\SpecialChar ~
-m
-\family default
-
-\family typewriter
-marginpar-insert
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+, or
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-i\SpecialChar ~
-n
-\family default
-
-\family typewriter
-note-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Conglomerate
+\end_layout
+\end_inset
-\family sans
-M-i\SpecialChar ~
-o
-\family default
-
-\family typewriter
-insert_toc
-\family default
- submenu
-\begin_deeper
-\layout List
-\labelwidthstring 00.00.0000
+, describing the rendering style used for the inset's frame and buttons.
+ Footnotes generally use
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Classic
+\end_layout
-\family sans
-a
-\family default
-
-\family typewriter
-loa-insert
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+, ERT insets generally
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-b
-\family default
-
-\family typewriter
-bibtex-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Minimalistic
+\end_layout
+\end_inset
-\family sans
-c
-\family default
-
-\family typewriter
-toc-insert
-\layout List
-\labelwidthstring 00.00.0000
+, and character styles
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Conglomerate
+\end_layout
-\family sans
-f
-\family default
-
-\family typewriter
-lof-insert
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+.
+\end_layout
-\family sans
-i
-\family default
-
-\family typewriter
-index-print
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+End
+\end_layout
-\family sans
-t
-\family default
-
-\family typewriter
-lot-insert
-\end_deeper
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ Required at the end of the InsetLayout declarations.
+\end_layout
-\family sans
-M-i\SpecialChar ~
-r
-\family default
-
-\family typewriter
-reference-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Font
+\end_layout
-\family sans
-M-i\SpecialChar ~
-s
-\family default
-
-\family typewriter
-insert_special
-\family default
- submenu
-\begin_deeper
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ The font used for both the text body
+\emph on
+and
+\emph default
+ the label.
+ See section
+\begin_inset space ~
+\end_inset
-\family sans
-b
-\family default
-
-\family typewriter
-protected-space-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:fonts"
-\family sans
-e
-\family default
-
-\family typewriter
-end-of-sentence-period-insert
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+.
+ Note that defining this font automatically defines the
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-h
-\family default
-
-\family typewriter
-hfill-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+LabelFont
+\end_layout
+\end_inset
-\family sans
-i
-\family default
-
-\family typewriter
-dots-insert
-\layout List
-\labelwidthstring 00.00.0000
+ to the same value, so define this first and define
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+LabelFont
+\end_layout
-\family sans
-l
-\family default
-
-\family typewriter
-break-line
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ later if you want them to be different.
+\end_layout
-\family sans
-m
-\family default
-
-\family typewriter
-menu-separator-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+ForceLTR
+\end_layout
-\family sans
-p
-\family default
-
-\family typewriter
-hyphenation-point-insert
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ Force the
+\begin_inset Quotes eld
+\end_inset
-\family sans
-q
-\family default
-
-\family typewriter
-quote-insert
-\layout List
-\labelwidthstring 00.00.0000
+latex
+\begin_inset Quotes erd
+\end_inset
+ language, leading to Left-to-Right (latin) output, e.
+\begin_inset space \thinspace{}
+\end_inset
-\family sans
-s
-\family default
-
-\family typewriter
-command-sequence math-insert ^;math-mode;
-\layout List
-\labelwidthstring 00.00.0000
+g.
+\begin_inset space \space{}
+\end_inset
+in TeX code or URL.
+ A kludge.
+\end_layout
-\family sans
-u
-\family default
-
-\family typewriter
-command-sequence math-insert _;math-mode;
-\end_deeper
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+ForcePlain
+\end_layout
-\family sans
-M-i\SpecialChar ~
-t
-\family default
-
-\family typewriter
-insert_file
-\family default
- submenu
-\begin_deeper
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-l
-\family default
-
-\family typewriter
-file-insert-ascii lines
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+\emph on
+0
+\end_layout
-\family sans
-p
-\family default
-
-\family typewriter
-file-insert-ascii paragraphs
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-x
-\family default
-
-\family typewriter
-file-insert
-\end_deeper
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+1
+\end_layout
+\end_inset
-\family sans
-M-i\SpecialChar ~
-u
-\family default
-
-\family typewriter
-url-insert
-\layout List
-\labelwidthstring 00.00.0000
+] Indicates whether the PlainLayout should be used or, instead, the user
+ can change the paragraph style used in the inset.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-i\SpecialChar ~
-w
-\family default
-
-\family typewriter
-index-insert-last
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+FreeSpacing
+\end_layout
+\end_inset
-\family sans
-M-i\SpecialChar ~
-x
-\family default
-
-\family typewriter
-external-insert
-\layout Subsection
+ As with paragraph styles (see page
+\begin_inset CommandInset ref
+LatexCommand pageref
+reference "des:FreeSpacing"
-Layout
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+).
+\end_layout
-\family sans
-M-l\SpecialChar ~
-a
-\family default
-
-\family typewriter
-appendix
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+InToc
+\end_layout
-\family sans
-M-l\SpecialChar ~
-b
-\family default
-
-\family typewriter
-font-bold
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-l\SpecialChar ~
-c
-\family default
-
-\family typewriter
-layout-character
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+\emph on
+0
+\end_layout
-\family sans
-M-l\SpecialChar ~
-d
-\family default
-
-\family typewriter
-layout-document
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-l\SpecialChar ~
-e
-\family default
-
-\family typewriter
-font-emph
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+1
+\end_layout
+\end_inset
-\family sans
-M-l\SpecialChar ~
-l
-\family default
-
-\family typewriter
-layout-preamble
-\layout List
-\labelwidthstring 00.00.0000
+] Whether to include the contents of this inset in the strings generated
+ for the `Outline' pane.
+ One would not, for example, want the content of a footnote in a section
+ header to be included in the TOC displayed in the outline, but one would
+ normally want the content of a character style displayed.
+ Default is false: not to include.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-l\SpecialChar ~
-n
-\family default
-
-\family typewriter
-font-noun
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+KeepEmpty
+\end_layout
+\end_inset
-\family sans
-M-l\SpecialChar ~
-p
-\family default
-
-\family typewriter
-layout-paragraph
-\layout List
-\labelwidthstring 00.00.0000
+ As with paragraph styles (see page
+\begin_inset CommandInset ref
+LatexCommand pageref
+reference "des:KeepEmpty"
+\end_inset
-\family sans
-M-l\SpecialChar ~
-s
-\family default
-
-\family typewriter
-layout-save-default
-\layout List
-\labelwidthstring 00.00.0000
+).
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-l\SpecialChar ~
-t
-\family default
-
-\family typewriter
-layout-tabular
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+LabelFont
+\end_layout
+\end_inset
-\family sans
-M-l\SpecialChar ~
-v
-\family default
-
-\family typewriter
-depth-increment
-\layout List
-\labelwidthstring 00.00.0000
+ The font used for the label.
+ See section
+\begin_inset space ~
+\end_inset
-\family sans
-M-l\SpecialChar ~
-x
-\family default
-
-\family typewriter
-tex-mode
-\layout Subsubsection
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:fonts"
-L
-\family sans
-ayout\SpecialChar \menuseparator
-Character
-\family default
-
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+.
+ Note that this definition can never appear before
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-c\SpecialChar ~
-b
-\family typewriter
-font-bold
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Font
+\end_layout
+\end_inset
-\family sans
-M-c\SpecialChar ~
-c
-\family typewriter
-font-noun
-\layout List
-\labelwidthstring 00.00.0000
+, lest it be ineffective.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-c\SpecialChar ~
-e
-\family typewriter
-font-emph
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+LabelString
+\end_layout
+\end_inset
-\family sans
-M-c\SpecialChar ~
-m
-\family typewriter
-math-mode
-\layout List
-\labelwidthstring 00.00.0000
+ What will be displayed on the button or elsewhere as the inset label.
+ Some inset types (TeX code and Branch) modify this label on the fly.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-c\SpecialChar ~
-p
-\family default
-
-\family typewriter
-font-code
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+LatexName
+\end_layout
+\end_inset
-\family sans
-M-c\SpecialChar ~
-r
-\family typewriter
-font-roman
-\layout List
-\labelwidthstring 00.00.0000
+ The name of the corresponding LaTeX stuff.
+ Either the environment or command name.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-c\SpecialChar ~
-s
-\family typewriter
-font-sans
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+LatexParam
+\end_layout
+\end_inset
-\family sans
-M-c\SpecialChar ~
-t
-\family typewriter
-tex-mode
-\layout List
-\labelwidthstring 00.00.0000
+ The optional parameter for the corresponding
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+LatexName
+\end_layout
-\family sans
-M-c\SpecialChar ~
-u
-\family typewriter
-font-underline
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ stuff, including possible bracket pairs like
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-c\SpecialChar ~
-space
-\family typewriter
-font-default
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+[]
+\end_layout
+\end_inset
-\family sans
-M-c\SpecialChar ~
-Down
-\family typewriter
-word-lowcase
-\layout List
-\labelwidthstring 00.00.0000
+.
+ This parameter cannot be changed from within LyX.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-c\SpecialChar ~
-Up
-\family typewriter
-word-upcase
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+LatexType
+\end_layout
+\end_inset
-\family sans
-M-c\SpecialChar ~
-Right
-\family typewriter
-word-capitalize
-\layout List
-\labelwidthstring 00.00.0000
+ As with paragraph styles (see page
+\begin_inset CommandInset ref
+LatexCommand pageref
+reference "des:LatexType"
+\end_inset
-\family sans
-M-s\SpecialChar ~
-h
-\family typewriter
-font-size huge
-\layout List
-\labelwidthstring 00.00.0000
+).
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-s\SpecialChar ~
-l
-\family default
-
-\family typewriter
-font-size large
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+LyxType
+\end_layout
+\end_inset
-\family sans
-M-s\SpecialChar ~
-n
-\family default
-
-\family typewriter
-font-size normal
-\layout List
-\labelwidthstring 00.00.0000
+ Can be
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+charstyle
+\end_layout
-\family sans
-M-s\SpecialChar ~
-s
-\family default
-
-\family typewriter
-font-size small
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-s\SpecialChar ~
-t
-\family default
-
-\family typewriter
-font-size tiny
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+custom
+\end_layout
+\end_inset
-\family sans
-M-s\SpecialChar ~
-0
-\family typewriter
-font-size huger
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+element
+\end_layout
-\family sans
-M-s\SpecialChar ~
-1
-\family default
-
-\family typewriter
-font-size tiny
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+, or
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-s\SpecialChar ~
-2
-\family default
-
-\family typewriter
-font-size smallest
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+end
+\end_layout
+\end_inset
-\family sans
-M-s\SpecialChar ~
-3
-\family typewriter
-font-size smaller
-\layout List
-\labelwidthstring 00.00.0000
+ (indicating a dummy definition ending definitions of charstyles, etc).
+ This entry is required in and is only meaningful for Flex insets.
+ Among other things, it determines on which menu this inset will appear.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-s\SpecialChar ~
-4
-\family default
-
-\family typewriter
-font-size small
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+MultiPar
+\end_layout
+\end_inset
-\family sans
-M-s\SpecialChar ~
-5
-\family default
-
-\family typewriter
-font-size normal
-\layout List
-\labelwidthstring 00.00.0000
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\family sans
-M-s\SpecialChar ~
-6
-\family default
-
-\family typewriter
-font-size large
-\layout List
-\labelwidthstring 00.00.0000
+\emph on
+0
+\end_layout
+\end_inset
-\family sans
-M-s\SpecialChar ~
-7
-\family default
-
-\family typewriter
-font-size larger
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+1
+\end_layout
-\family sans
-M-s\SpecialChar ~
-8
-\family typewriter
-font-size largest
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+] Whether multiple paragraphs are permitted in this inset.
+ This will also set CustomPars to the same value and ForcePlain to the opposite
+ value.
+ These can be reset to other values, if they are used
+\emph on
+after
+\emph default
+ MultiPar.
+\end_layout
-\family sans
-M-s\SpecialChar ~
-9
-\family typewriter
-font-size huge
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+NeedProtect
+\end_layout
-\family sans
-M-s\SpecialChar ~
-S-H
-\family default
-
-\family typewriter
-font-size huger
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-s\SpecialChar ~
-S-L
-\family default
-
-\family typewriter
-font-size larger
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+\emph on
+0
+\end_layout
-\family sans
-M-s\SpecialChar ~
-S-S
-\family default
-
-\family typewriter
-font-size smaller
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-s\SpecialChar ~
-plus
-\family typewriter
-font-size increase
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+1
+\end_layout
+\end_inset
-\family sans
-M-s\SpecialChar ~
-minus
-\family typewriter
-font-size decrease
-\layout Subsection
+] Whether fragile commands in this layout should be
+\begin_inset Flex CharStyle:Code
+status collapsed
-View
-\layout Subsection
+\begin_layout Plain Layout
-Navigate
-\layout Subsection
+\backslash
+protect
+\end_layout
-Help
-\layout Subsection
+\end_inset
-Paragraph Style
-\layout List
-\labelwidthstring 00.00.0000
+'ed.
+ (Note: This is
+\emph on
+not
+\emph default
+ whether the command should itself be protected.)
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-p\SpecialChar ~
-a
-\family default
-
-\family typewriter
-layout Abstract
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+PassThru
+\end_layout
+\end_inset
-\family sans
-M-p\SpecialChar ~
-b
-\family default
-
-\family typewriter
-layout Itemize
-\layout List
-\labelwidthstring 00.00.0000
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\family sans
-M-p\SpecialChar ~
-c
-\family default
-
-\family typewriter
-layout LyX-Code
-\layout List
-\labelwidthstring 00.00.0000
+\emph on
+0
+\end_layout
+\end_inset
-\family sans
-M-p\SpecialChar ~
-d
-\family default
-
-\family typewriter
-layout Description
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+1
+\end_layout
-\family sans
-M-p\SpecialChar ~
-e
-\family default
-
-\family typewriter
-layout Enumerate
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+] As with paragraph styles (see page
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "des:PathThru"
-\family sans
-M-p\SpecialChar ~
-f
-\family default
-
-\family typewriter
-layout ShortFoilhead
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+).
+\end_layout
-\family sans
-M-p\SpecialChar ~
-i
-\family default
-
-\family typewriter
-layout Itemize
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Preamble
+\end_layout
-\family sans
-M-p\SpecialChar ~
-l
-\family default
-
-\family typewriter
-layout List
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ As with paragraph styles (see page
+\begin_inset CommandInset ref
+LatexCommand pageref
+reference "des:Preamble"
-\family sans
-M-p\SpecialChar ~
-n
-\family default
-
-\family typewriter
-layout Enumerate
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+).
+\end_layout
-\family sans
-M-p\SpecialChar ~
-q
-\family default
-
-\family typewriter
-layout Quote
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Requires
+\end_layout
+\end_inset
-\family sans
-M-p\SpecialChar ~
-r
-\family default
-
-\family typewriter
-layout ShortRotatefoilhead
-\layout List
-\labelwidthstring 00.00.0000
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+string
+\end_layout
-\family sans
-M-p\SpecialChar ~
-s
-\family default
-
-\family typewriter
-layout Standard
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+] As with paragraph styles (see page
+\begin_inset CommandInset ref
+LatexCommand pageref
+reference "des:Requires"
-\family sans
-M-p\SpecialChar ~
-t
-\family default
-
-\family typewriter
-layout Title
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+).
+\end_layout
-\family sans
-M-p\SpecialChar ~
-v
-\family default
-
-\family typewriter
-layout Verse
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Subsection
+Counters
+\end_layout
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:counter"
-\family sans
-M-p\SpecialChar ~
-space
-\family default
-
-\family typewriter
-drop-layouts-choice
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+Since version 1.3.0 of LyX, it is both possible and necessary to define the
+ counters (
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\family sans
-M-p
-\noun on
-\SpecialChar ~
-0
-\family default
-\noun default
-
-\family typewriter
-layout Part
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+chapter
+\end_layout
+\end_inset
-\family sans
-M-p
-\noun on
-\SpecialChar ~
-1
-\family default
-\noun default
-
-\family typewriter
-layout Chapter
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+\begin_layout Plain Layout
+figure
+\end_layout
-\family sans
-M-p\SpecialChar ~
-2
-\family default
-
-\family typewriter
-layout Section
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+, \SpecialChar \ldots{}
+) in the text class itself.
+ The standard counters are defined in the file
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-p\SpecialChar ~
-3
-\family default
-
-\family typewriter
-layout Subsection
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+stdcounters.inc
+\end_layout
+\end_inset
-\family sans
-M-p\SpecialChar ~
-4
-\family default
-
-\family typewriter
-layout Subsubsection
-\layout List
-\labelwidthstring 00.00.0000
+, so you may have to do no more than add
+\end_layout
+\begin_layout LyX-Code
+Input stdcounters.inc
+\end_layout
-\family sans
-M-p\SpecialChar ~
-5
-\family default
-
-\family typewriter
-layout Paragraph
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+to your layout file to get them to work.
+ But if you want to define custom counters, then you can do so.
+ The counter declaration must begin with:
+\end_layout
+\begin_layout LyX-Code
+Counter name
+\end_layout
-\family sans
-M-p\SpecialChar ~
-6
-\family default
-
-\family typewriter
-layout Subparagraph
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+where of course `name' is replaced by the name of the counter.
+ And it must end with
+\begin_inset Quotes eld
+\end_inset
-\family sans
-M-p\SpecialChar ~
-asterisk\SpecialChar ~
-0
-\family default
-
-\family typewriter
-layout Part*
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+End
+\end_layout
-\family sans
-M-p\SpecialChar ~
-asterisk\SpecialChar ~
-1
-\family default
-
-\family typewriter
-layout Chapter*
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
-\family sans
-M-p\SpecialChar ~
-asterisk\SpecialChar ~
-2
-\family default
-
-\family typewriter
-layout Section*
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset Quotes erd
+\end_inset
+.
+ The following parameters can also be used:
+\end_layout
-\family sans
-M-p\SpecialChar ~
-asterisk\SpecialChar ~
-3
-\family default
-
-\family typewriter
-layout Subsection*
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+LabelString [string=""]
+\end_layout
-\family sans
-M-p\SpecialChar ~
-asterisk\SpecialChar ~
-4
-\family default
-
-\family typewriter
-layout Subsubsection*
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ when this is defined, this string defines how the counter is displayed.
+ Setting this value sets
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-p\SpecialChar ~
-asterisk\SpecialChar ~
-5
-\family default
-
-\family typewriter
-layout Paragraph*
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+LabelStringAppendix
+\end_layout
+\end_inset
-\family sans
-M-p\SpecialChar ~
-asterisk\SpecialChar ~
-6
-\family default
-
-\family typewriter
-layout Subparagraph*
-\layout List
-\labelwidthstring 00.00.0000
+ to the same value.
+ The following special constructs can be used in the string:
+\end_layout
+\begin_deeper
+\begin_layout Itemize
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-p\SpecialChar ~
-S-A
-\family default
-
-\family typewriter
-layout Author
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+\backslash
+thecounter
+\end_layout
-\family sans
-M-p\SpecialChar ~
-S-B
-\family default
-
-\family typewriter
-layout Bibliography
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ will be replaced by the expansion of the
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-p\SpecialChar ~
-S-C
-\family default
-
-\family typewriter
-layout Comment
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+LabelString
+\end_layout
+\end_inset
-\family sans
-M-p\SpecialChar ~
-S-D
-\family default
-
-\family typewriter
-layout Date
-\layout List
-\labelwidthstring 00.00.0000
+ (or
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+LabelStringAppendix
+\end_layout
-\family sans
-M-p\SpecialChar ~
-S-F
-\family default
-
-\family typewriter
-layout Foilhead
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+) of the counter
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-p\SpecialChar ~
-S-L
-\family default
-
-\family typewriter
-layout LaTeX
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+counter
+\end_layout
+\end_inset
-\family sans
-M-p\SpecialChar ~
-S-Q
-\family default
+.
-\family typewriter
-layout Quotation
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Itemize
+counter values can be expressed using LaTeX-like macros
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-p\SpecialChar ~
-S-R
-\family default
-
-\family typewriter
-layout Rotatefoilhead
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+\backslash
-\family sans
-M-p\SpecialChar ~
-C-a
-\family default
-
-\family typewriter
-layout RightAddress
-\layout List
-\labelwidthstring 00.00.0000
+\emph on
+numbertype
+\emph default
+{
+\emph on
+counter
+\emph default
+}
+\end_layout
+\end_inset
-\family sans
-M-p\SpecialChar ~
-M-a
-\family default
-
-\family typewriter
-layout Address
-\layout List
-\labelwidthstring 00.00.0000
+, where
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\family sans
-M-p\SpecialChar ~
-M-c
-\family default
-
-\family typewriter
-layout Caption
-\layout List
-\labelwidthstring 00.00.0000
+\emph on
+numbertype
+\end_layout
+\end_inset
-\family sans
-M-p\SpecialChar ~
-Left
-\family default
-
-\family typewriter
-depth-decrement
-\layout List
-\labelwidthstring 00.00.0000
+ can be:
+\begin_inset Foot
+status collapsed
+\begin_layout Plain Layout
-\family sans
-M-p\SpecialChar ~
-Right
-\family default
-
-\family typewriter
-depth-increment
-\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: any
+\family default
+\series default
+\shape default
+\emph default
+\bar default
+
+\size default
+\emph on
+\noun default
+\color inherit
+numbertype
+\family roman
+\series medium
+\shape up
+\size normal
+\emph off
+\bar no
+\noun off
+ other than those described below will produce arabic numerals.
+ It would not be surprising to see this change in the future.
+\end_layout
+
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+arabic
+\end_layout
+
+\end_inset
+
+: 1, 2, 3,\SpecialChar \ldots{}
+;
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+alph
+\end_layout
+
+\end_inset
+
+ for lower-case letters: a, b, c, \SpecialChar \ldots{}
+;
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Alph
+\end_layout
+
+\end_inset
+
+ for upper-case letters: A, B, C, \SpecialChar \ldots{}
+;
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+roman
+\end_layout
+
+\end_inset
+
+ for lower-case roman numerals: i, ii, iii, \SpecialChar \ldots{}
+;
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Roman
+\end_layout
-These ones are kept for backwards compatibility, but only make sense on
- a qwerty keyboard:
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ for upper-case roman numerals: I, II, III\SpecialChar \ldots{}
+;
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-p\SpecialChar ~
-S-at
-\family default
-
-\family typewriter
-layout Section*
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+hebrew
+\end_layout
+\end_inset
-\family sans
-M-p\SpecialChar ~
-S-dollar
-\family default
-
-\family typewriter
-layout Subsubsection*
-\layout List
-\labelwidthstring 00.00.0000
+ for hebrew numerals.
+\end_layout
+\end_deeper
+\begin_layout Standard
+If LabelString is not defined, a default value is constructed as follows:
+ if the counter has a master counter
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-p\SpecialChar ~
-S-numbersign
-\family default
-
-\family typewriter
-layout Subsection*
-\layout Section
+\begin_layout Plain Layout
+master
+\end_layout
-Keyboard
-\layout Subsection
+\end_inset
-Specific to
-\family typewriter
-emacs.bind
-\layout List
-\labelwidthstring 00.00.0000
+ (defined via
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Within
+\end_layout
-\family sans
-C-a
-\family default
-
-\family typewriter
-line-begin
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+), the string
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-b
-\family default
-
-\family typewriter
-char-backward
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+\backslash
+themaster.
+\backslash
+arabic{counter}
+\end_layout
-\family sans
-C-d
-\family default
-
-\family typewriter
-delete-forward
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ is used; otherwise the string
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-e
-\family default
-
-\family typewriter
-line-end
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+\backslash
+arabic{counter}
+\end_layout
-\family sans
-C-f
-\family default
-
-\family typewriter
-char-forward
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ is used.
+\end_layout
-\family sans
-C-g
-\family default
-
-\family typewriter
-cancel
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+LabelStringAppendix [string=""]
+\end_layout
-\family sans
-C-h
-\family default
-
-\family typewriter
-hyphenation-point-insert
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ Same as
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-i
-\family default
-
-\family typewriter
-hfill-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+LabelString
+\end_layout
+\end_inset
-\family sans
-C-k
-\family default
-
-\family typewriter
-line-delete-forward
-\layout List
-\labelwidthstring 00.00.0000
+, but for use in the Appendix.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-l
-\family default
-
-\family typewriter
-screen-recenter
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Within
+\end_layout
+\end_inset
-\family sans
-C-m
-\family default
-
-\family typewriter
-mark-toggle
-\layout List
-\labelwidthstring 00.00.0000
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+string
+\end_layout
-\family sans
-C-n
-\family default
-
-\family typewriter
-down
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+
+=
+\begin_inset Quotes erd
+\end_inset
-\family sans
-C-o
-\family default
-
-\family typewriter
-open-stuff
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset Quotes erd
+\end_inset
+] If this is set to the name of another counter, the present counter will
+ be reset every time the other one is increased.
+ For example,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-p
-\family default
-
-\family typewriter
-up
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+subsection
+\end_layout
+\end_inset
-\family sans
-C-q
-\family typewriter
- quote-insert
-\layout List
-\labelwidthstring 00.00.0000
+ is numbered inside
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+section
+\end_layout
-\family sans
-C-s
-\family default
-
-\family typewriter
-find-replace
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+.
+\end_layout
-\family sans
-C-u
-\family default
-
-\family typewriter
-font-underline
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Subsection
+Font description
+\end_layout
+\begin_layout Standard
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:fonts"
-\family sans
-C-v
-\family default
-
-\family typewriter
-screen-down
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+A font description looks like this:
+\end_layout
-\family sans
-C-w
-\family default
-
-\family typewriter
-cut
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout LyX-Code
+Font
+\family roman
+\emph on
+or
+\family default
+\emph default
+ LabelFont
+\end_layout
+\begin_layout LyX-Code
+ ...
+\end_layout
-\family sans
-C-y
-\family default
-
-\family typewriter
-paste
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout LyX-Code
+EndFont
+\end_layout
+\begin_layout Standard
+The following commands are available:
+\end_layout
-\family sans
-C-S-Y
-\family default
-
-\family typewriter
-layout-paste
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Color
+\end_layout
-\family sans
-C-x\SpecialChar ~
-a
-\family default
-
-\family typewriter
-buffer-auto-save
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-x\SpecialChar ~
-b
-\family default
-
-\family typewriter
-buffer-previous
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+\emph on
+none
+\end_layout
-\family sans
-C-x\SpecialChar ~
-c
-\family default
-
-\family typewriter
-lyx-quit
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-x\SpecialChar ~
-d
-\family default
-
-\family typewriter
-buffer-new
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+black
+\end_layout
+\end_inset
-\family sans
-?\SpecialChar ~
-C-x\SpecialChar ~
-f
-\family default
-
-\family typewriter
-buffer-open
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+white
+\end_layout
-\family sans
-C-x\SpecialChar ~
-g
-\family default
-
-\family typewriter
-buffer-view-ps
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-x\SpecialChar ~
-k
-\family default
-
-\family typewriter
-buffer-close
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+red
+\end_layout
+\end_inset
-\family sans
-C-x\SpecialChar ~
-p
-\family default
-
-\family typewriter
-buffer-view
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+green
+\end_layout
-\family sans
-C-x\SpecialChar ~
-r
-\family default
-
-\family typewriter
-buffer-typeset
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-?\SpecialChar ~
-C-x\SpecialChar ~
-s
-\family default
-
-\family typewriter
-buffer-write
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+blue
+\end_layout
+\end_inset
-\family sans
-C-x\SpecialChar ~
-t
-\family default
-
-\family typewriter
-buffer-typeset
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+cyan
+\end_layout
-\family sans
-C-x\SpecialChar ~
-u
-\family default
-
-\family typewriter
-undo
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-x\SpecialChar ~
-v\SpecialChar ~
-c
-\family default
-
-\family typewriter
-vc-undo-last
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+magenta
+\end_layout
+\end_inset
-\family sans
-C-x\SpecialChar ~
-v\SpecialChar ~
-h
-\family default
-
-\family typewriter
-vc-history
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+yellow
+\end_layout
-\family sans
-C-x\SpecialChar ~
-v\SpecialChar ~
-i
-\family default
-
-\family typewriter
-vc-register
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+]
+\end_layout
-\family sans
-C-x\SpecialChar ~
-v\SpecialChar ~
-u
-\family default
-
-\family typewriter
-vc-revert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Family
+\end_layout
-\family sans
-C-x\SpecialChar ~
-v\SpecialChar ~
-v
-\family default
-
-\family typewriter
-vc-check-in
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ [
+\emph on
-\family sans
-?\SpecialChar ~
-C-x\SpecialChar ~
-w
-\family default
-
-\family typewriter
-buffer-write-as
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\family sans
-C-x\SpecialChar ~
-bracketleft
-\family default
-
-\family typewriter
-screen-up
-\layout List
-\labelwidthstring 00.00.0000
+\emph on
+Roman
+\end_layout
+\end_inset
-\family sans
-C-x\SpecialChar ~
-bracketright
-\family default
-
-\family typewriter
-screen-down
-\layout List
-\labelwidthstring 00.00.0000
+\emph default
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-x\SpecialChar ~
-C-a
-\family default
-
-\family typewriter
-buffer-auto-save
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Sans
+\end_layout
+\end_inset
-\family sans
-C-x\SpecialChar ~
-C-b
-\family default
-
-\family typewriter
-menu-open Documents
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Typewriter
+\end_layout
-\family sans
-C-x\SpecialChar ~
-C-c
-\family default
-
-\family typewriter
-lyx-quit
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+]
+\end_layout
-\family sans
-C-x\SpecialChar ~
-C-d
-\family default
-
-\family typewriter
-buffer-new
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Misc
+\end_layout
-\family sans
-C-x\SpecialChar ~
-C-f
-\family default
-
-\family typewriter
-buffer-open
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-x\SpecialChar ~
-C-g
-\family default
-
-\family typewriter
-buffer-view-ps
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+string
+\end_layout
+\end_inset
-\family sans
-C-x\SpecialChar ~
-C-p
-\family default
-
-\family typewriter
-buffer-view
-\layout List
-\labelwidthstring 00.00.0000
+] Valid argument are:
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+emph
+\end_layout
-\family sans
-C-x\SpecialChar ~
-C-q
-\family default
-
-\family typewriter
-buffer-toggle-read-only
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-x\SpecialChar ~
-C-s
-\family default
-
-\family typewriter
-buffer-write
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+noun
+\end_layout
+\end_inset
-\family sans
-C-x\SpecialChar ~
-C-t
-\family default
-
-\family typewriter
-buffer-typeset
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+underbar
+\end_layout
-\family sans
-C-x\SpecialChar ~
-C-w
-\family default
-
-\family typewriter
-buffer-write-as
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-Home
-\family default
-
-\family typewriter
-buffer-begin
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+no_emph
+\end_layout
+\end_inset
-\family sans
-End
-\family default
-
-\family typewriter
-buffer-end
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+no_noun
+\end_layout
-\family sans
-S-Home
-\family default
-
-\family typewriter
-line-begin-select
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-S-End
-\family default
-
-\family typewriter
-line-end-select
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+no_bar
+\end_layout
+\end_inset
-\family sans
-S-Up
-\family default
-
-\family typewriter
-up-select
-\layout List
-\labelwidthstring 00.00.0000
+.
+ Each of these turns on or off the corresponding attribute.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-S-Down
-\family default
-
-\family typewriter
-down-select
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Series
+\end_layout
+\end_inset
-\family sans
-S-Next
-\family default
-
-\family typewriter
-screen-down-select
-\layout List
-\labelwidthstring 00.00.0000
+ [
+\emph on
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-S-Prior
-\family default
-
-\family typewriter
-screen-up-select
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+\emph on
+Medium
+\end_layout
-\family sans
-S-Left
-\family default
-
-\family typewriter
-backward-select
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
-\family sans
-S-Right
-\family default
-
-\family typewriter
-forward-select
-\layout List
-\labelwidthstring 00.00.0000
+\emph default
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Bold
+\end_layout
-\family sans
-C-Up
-\family default
-
-\family typewriter
-paragraph-up
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+]
+\end_layout
-\family sans
-C-Down
-\family default
-
-\family typewriter
-paragraph-down
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Shape
+\end_layout
-\family sans
-C-Left
-\family default
-
-\family typewriter
-word-backward
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ [
+\emph on
-\family sans
-C-Right
-\family default
-
-\family typewriter
-word-forward
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\family sans
-C-Delete
-\family default
-
-\family typewriter
-word-delete-forward
-\layout List
-\labelwidthstring 00.00.0000
+\emph on
+Up
+\end_layout
+\end_inset
-\family sans
-C-BackSpace
-\family default
-
-\family typewriter
-word-delete-backward
-\layout List
-\labelwidthstring 00.00.0000
+\emph default
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-Return
-\family default
-
-\family typewriter
-break-line
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Italic
+\end_layout
+\end_inset
-\family sans
-C-period
-\family default
-
-\family typewriter
-end-of-sentence-period-insert
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+SmallCaps
+\end_layout
-\family sans
-C-space
-\family default
-
-\family typewriter
-protected-space-insert
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-S-at
-\family default
-
-\family typewriter
-mark-on
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Slanted
+\end_layout
+\end_inset
-\family sans
-C-S-greater
-\family default
-
-\family typewriter
-reference-goto
-\layout List
-\labelwidthstring 00.00.0000
+]
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-S-less
-\family default
-
-\family typewriter
-reference-back
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Size
+\end_layout
+\end_inset
-\family sans
-C-S-slash
-\family default
-
-\family typewriter
-undo
-\layout List
-\labelwidthstring 00.00.0000
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+tiny
+\end_layout
-\family sans
-C-S-underscore
-\family default
-
-\family typewriter
-undo
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-S-quotedbl
-\family default
-
-\family typewriter
-quote-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+small
+\end_layout
+\end_inset
-\family sans
-C-S-Home
-\family default
-
-\family typewriter
-buffer-begin-select
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\family sans
-C-S-End
-\family default
-
-\family typewriter
-buffer-end-select
-\layout List
-\labelwidthstring 00.00.0000
+\emph on
+normal
+\end_layout
+\end_inset
-\family sans
-C-S-Up
-\family default
-
-\family typewriter
-paragraph-up-select
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+large
+\end_layout
-\family sans
-C-S-Down
-\family default
-
-\family typewriter
-paragraph-down-select
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-S-Left
-\family default
-
-\family typewriter
-word-backward-select
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+larger
+\end_layout
+\end_inset
-\family sans
-C-S-Right
-\family default
-
-\family typewriter
-word-forward-select
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+largest
+\end_layout
-\family sans
-Escape
-\family default
-
-\family typewriter
-meta-prefix
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-d
-\family default
-
-\family typewriter
-word-delete-forward
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+huge
+\end_layout
+\end_inset
-\family sans
-M-w
-\family default
-
-\family typewriter
-copy
-\layout List
-\labelwidthstring 00.00.0000
+,
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+giant
+\end_layout
-\family sans
-M-x
-\family default
-
-\family typewriter
-command-execute
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+]
+\end_layout
-\family sans
-M-S-W
-\family default
-
-\family typewriter
-layout-copy
-\layout List
-\labelwidthstring 00.00.0000
+\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 since LyX 1.4.0: If LyX reads an old format
+ layout file it will call the conversion tool
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-period
-\family default
-
-\family typewriter
-dots-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+LyXDir/scripts/layout2layout.py
+\end_layout
+\end_inset
-\family sans
-M-Return
-\family default
-
-\family typewriter
-break-paragraph-keep-layout
-\layout List
-\labelwidthstring 00.00.0000
+ and convert it to a temporary file in current format.
+ The original file is left untouched.
+ 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
-\family sans
-M-S-percent
-\family typewriter
-find-replace
-\layout Subsection
+\begin_layout Standard
+(You need to replace
+\begin_inset Flex CharStyle:Code
+status collapsed
-Specific to
-\family typewriter
-cua.bind
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$LyXDir
+\end_layout
+\end_inset
-\family sans
-C-b
-\family default
-
-\family typewriter
-font-bold
-\layout List
-\labelwidthstring 00.00.0000
+ with the name of your LyX system directory, unless you happen to have defined
+ such an environment variable.) Then copy
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+myclassnew.layout
+\end_layout
-\family sans
-C-c
-\family default
-
-\family typewriter
-copy
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ to
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-d
-\family default
-
-\family typewriter
-buffer-view
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+UserDir/layouts/
+\end_layout
+\end_inset
-\family sans
-C-e
-\family default
-
-\family typewriter
-font-emph
-\layout List
-\labelwidthstring 00.00.0000
+.
+\end_layout
+\begin_layout Standard
+The automatic conversion only handles syntax changes.
+ It cannot handle the case where the contents of included files was changed,
+ so these will have to be converted separately.
+\end_layout
-\family sans
-C-f
-\family default
-
-\family typewriter
-find-replace
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Section
+Creating Templates
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:templates"
+\end_inset
-\family sans
-C-g
-\family default
-
-\family typewriter
-error-next
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
-\family sans
-C-i
-\family default
-
-\family typewriter
-open-stuff
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+Templates are created just like usual documents.
+ The only difference is that usual documents contain all possible settings,
+ including the font scheme and the paper size.
+ Usually a user doesn't want a template to overwrite his defaults in these
+ cases.
+ For that reason, the designer of a template should remove the corresponding
+ commands like
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\family sans
-C-k
-\family default
-
-\family typewriter
-font-noun
-\layout List
-\labelwidthstring 00.00.0000
+\backslash
+fontscheme
+\end_layout
+\end_inset
-\family sans
-C-l
-\family default
-
-\family typewriter
-tex-mode
-\layout List
-\labelwidthstring 00.00.0000
+ or
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
-\family sans
-C-m
-\family default
-
-\family typewriter
-math-mode
-\layout List
-\labelwidthstring 00.00.0000
+\backslash
+papersize
+\end_layout
+\end_inset
-\family sans
-C-n
-\family default
-
-\family typewriter
-buffer-new
-\layout List
-\labelwidthstring 00.00.0000
+ from the template LyX file.
+ This can be done with any simple text-editor, for example
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+vi
+\end_layout
-\family sans
-C-o
-\family default
-
-\family typewriter
-buffer-open
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ or
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-p
-\family default
-
-\family typewriter
-buffer-print
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+xedit
+\end_layout
+\end_inset
-\family sans
-C-q
-\family default
+.
-\family typewriter
-lyx-quit
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Standard
+Put the edited template files you create in
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-r
-\family default
-
-\family typewriter
-buffer-reload
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+UserDir/templates/
+\end_layout
+\end_inset
-\family sans
-C-s
-\family default
-
-\family typewriter
-buffer-write
-\layout List
-\labelwidthstring 00.00.0000
+, copy the ones you use from the global template directory in
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+LyXDir/templates/
+\end_layout
-\family sans
-C-t
-\family default
-
-\family typewriter
-buffer-view-ps
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ to the same place, and redefine the template path in the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\family sans
-C-u
-\family default
-
-\family typewriter
-font-underline
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Tools\SpecialChar \menuseparator
+Preferences\SpecialChar \menuseparator
+Paths
+\end_layout
+\end_inset
-\family sans
-C-v
-\family default
-
-\family typewriter
-paste
-\layout List
-\labelwidthstring 00.00.0000
+ dialog.
+\end_layout
+\begin_layout Standard
+Note that there is a template which has a particular meaning:
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-w
-\family default
-
-\family typewriter
-buffer-close
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+defaults.lyx
+\end_layout
+\end_inset
-\family sans
-C-x
-\family default
-
-\family typewriter
-cut
-\layout List
-\labelwidthstring 00.00.0000
+.
+ This template is loaded every time you create a new document with
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+\begin_layout Plain Layout
+File\SpecialChar \menuseparator
+New
+\end_layout
-\family sans
-C-z
-\family default
-
-\family typewriter
-undo
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ 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
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-\family sans
-C-space
-\family default
-
-\family typewriter
-protected-space-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Save as Document Defaults
+\end_layout
+\end_inset
-\family sans
-C-S-C
-\family default
-
-\family typewriter
-layout-copy
-\layout List
-\labelwidthstring 00.00.0000
+ button.
+\end_layout
+\begin_layout Chapter
+Including External Material
+\end_layout
+
+\begin_layout Standard
+\begin_inset Box Shadowbox
+position "t"
+hor_pos "c"
+has_inner_box 1
+inner_pos "t"
+use_parbox 0
+width "100col%"
+special "none"
+height "1in"
+height_special "totalheight"
+status open
+
+\begin_layout Plain Layout
+WARNING: This portion of the documentation has not been updated for some
+ time.
+ We certainly hope that it is still accurate, but there are no guarantees.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+The use of material from sources external to LyX is covered in detail in
+ the
+\emph on
+Embedded Objects
+\emph default
+ manual.
+ This part of the manual covers what needs to happen behind the scenes for
+ new sorts of material to be included.
+\end_layout
+
+\begin_layout Section
+How does it work?
+\end_layout
-\family sans
-C-S-D
-\family default
-
-\family typewriter
-buffer-typeset
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+The external material feature is based on the concept of a
+\emph on
+template
+\emph default
+.
+ A template is a specification of how LyX should interface with a certain
+ kind of material.
+ As bundled, LyX comes with predefined templates for Xfig figures, various
+ raster format images, chess diagrams, and LilyPond music notation.
+ You can check the actual list by using the menu
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+\begin_layout Plain Layout
+Insert\SpecialChar \menuseparator
+File\SpecialChar \menuseparator
+External Material
+\end_layout
-\family sans
-C-S-M
-\family default
-
-\family typewriter
-math-display
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+.
+ Furthermore, it is possible to roll your own template to support a specific
+ kind of material.
+ Later we'll describe in more detail what is involved, and hopefully you
+ will submit all the templates you create so we can include them in a later
+ LyX version.
+\end_layout
-\family sans
-C-S-N
-\family default
-
-\family typewriter
-buffer-new-template
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+Another basic idea of the external material feature is to distinguish between
+ the original file that serves as a base for final material and the produced
+ file that is included in your exported or printed document.
+ For example, consider the case of a figure produced with
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Xfig
+\end_layout
-\family sans
-C-S-P
-\family default
-
-\family typewriter
-font-code
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+.
+ The Xfig application itself works on an original file with the
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-S-S
-\family default
-
-\family typewriter
-buffer-write-as
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+.fig
+\end_layout
+\end_inset
-\family sans
-C-S-T
-\family default
-
-\family typewriter
-buffer-typeset-ps
-\layout List
-\labelwidthstring 00.00.0000
+ extension.
+ Within Xfig, you create and change your figure, and when you are done,
+ you save the
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+fig
+\end_layout
-\family sans
-C-S-V
-\family default
-
-\family typewriter
-layout-paste
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+-file.
+ When you want to include the figure in your document, you invoke
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-S-Z
-\family default
-
-\family typewriter
-redo
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+transfig
+\end_layout
+\end_inset
-\family sans
-S-Insert
-\family default
-
-\family typewriter
-paste
-\layout List
-\labelwidthstring 00.00.0000
+ in order to create a PostScript file that can readily be included in your
+ LaTeX file.
+ In this case, the
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+.fig
+\end_layout
-\family sans
-S-Delete
-\family default
-
-\family typewriter
-cut
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ file is the original file, and the PostScript file is the produced file.
+\end_layout
-\family sans
-C-period
-\family default
-
-\family typewriter
-end-of-sentence-period-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+This distinction is important in order to allow updating of the material
+ while you are in the process of writing the document.
+ Furthermore, it provides us with the flexibility that is needed to support
+ multiple export formats.
+ For instance, in the case of a plain text file, it is not exactly an award-winn
+ing idea to include the figure as raw PostScript.
+ Instead, you'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 parametri
+zed on the different export formats that LyX supports.
+\end_layout
+
+\begin_layout Standard
+Besides supporting the production of different products according to the
+ exported format, it supports tight integration with editing and viewing
+ applications.
+ In the case of an Xfig figure, you are able to invoke Xfig on the original
+ file with a single click from within the external material dialog in LyX,
+ and also preview the produced PostScript file with Ghostview with another
+ click.
+ No more fiddling around with the command line and/or file browsers to locate
+ and manipulate the original or produced files.
+ In this way, you are finally able to take full advantage of the many different
+ applications that are relevant to use when you write your documents, and
+ ultimately be more productive.
+\end_layout
+\begin_layout Section
+The external template configuration file
+\end_layout
-\family sans
-C-S-greater
-\family default
+\begin_layout Standard
+It is relatively easy to add custom external template definitions to LyX.
+ However, be aware that doing this in an careless manner most probably
+\emph on
+will
+\emph default
+ introduce an easily exploitable security hole.
+ So before you do this, please read the discussion about security in section
-\family typewriter
-reference-goto
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:Security-discussion"
+\end_inset
-\family sans
-C-S-less
-\family default
+.
+\end_layout
+
+\begin_layout Standard
+Having said that, we encourage you to submit any interesting templates that
+ you create.
-\family typewriter
-reference-back
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Standard
+The external templates are defined in the
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-minus
-\family default
-
-\family typewriter
-hyphenation-point-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+LyXDir/lib/external_templates
+\end_layout
+\end_inset
-\family sans
-C-S-quotedbl
-\family default
-
-\family typewriter
-quote-insert
-\layout List
-\labelwidthstring 00.00.0000
+ file.
+ You can place your own version in
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+UserDir/external_templates
+\end_layout
-\family sans
-C-S-space
-\family default
-
-\family typewriter
-protected-space-insert
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+.
+\end_layout
-\family sans
-M-x
-\family default
-
-\family typewriter
-command-execute
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+A typical template looks like this:
+\end_layout
+\begin_layout LyX-Code
+Template XFig
+\end_layout
-\family sans
-S-Home
-\family default
-
-\family typewriter
-line-begin-select
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout LyX-Code
+GuiName "XFig: $$AbsOrRelPathParent$$Basename"
+\end_layout
+\begin_layout LyX-Code
+HelpText
+\end_layout
-\family sans
-S-End
-\family default
-
-\family typewriter
-line-end-select
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout LyX-Code
+An XFig figure.
+\end_layout
+\begin_layout LyX-Code
+HelpTextEnd
+\end_layout
-\family sans
-S-Up
-\family default
-
-\family typewriter
-up-select
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout LyX-Code
+InputFormat fig
+\end_layout
+\begin_layout LyX-Code
+FileFilter "*.fig"
+\end_layout
-\family sans
-S-Down
-\family default
-
-\family typewriter
-down-select
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout LyX-Code
+AutomaticProduction true
+\end_layout
+\begin_layout LyX-Code
+Transform Rotate
+\end_layout
-\family sans
-S-Delete
-\family default
-
-\family typewriter
-cut
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout LyX-Code
+Transform Resize
+\end_layout
+\begin_layout LyX-Code
+Format LaTeX
+\end_layout
-\family sans
-S-Insert
-\family default
-
-\family typewriter
-paste
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout LyX-Code
+TransformCommand Rotate RotationLatexCommand
+\end_layout
+\begin_layout LyX-Code
+TransformCommand Resize ResizeLatexCommand
+\end_layout
-\family sans
-S-Next
-\family default
-
-\family typewriter
-screen-down-select
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout LyX-Code
+Product "$$RotateFront$$ResizeFront
+\end_layout
+\begin_layout LyX-Code
+
+\backslash
-\family sans
-S-Prior
-\family default
-
-\family typewriter
-screen-up-select
-\layout List
-\labelwidthstring 00.00.0000
+\backslash
+input{$$AbsOrRelPathMaster$$Basename.pstex_t}
+\end_layout
+\begin_layout LyX-Code
+ $$ResizeBack$$RotateBack"
+\end_layout
-\family sans
-S-Left
-\family default
-
-\family typewriter
-backward-select
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout LyX-Code
+UpdateFormat pstex
+\end_layout
+\begin_layout LyX-Code
+UpdateResult "$$AbsPath$$Basename.pstex_t"
+\end_layout
-\family sans
-S-Right
-\family default
-
-\family typewriter
-forward-select
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout LyX-Code
+Requirement "graphicx"
+\end_layout
+
+\begin_layout LyX-Code
+ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
+\end_layout
+
+\begin_layout LyX-Code
+ReferencedFile latex "$$AbsPath$$Basename.eps"
+\end_layout
+
+\begin_layout LyX-Code
+ReferencedFile dvi "$$AbsPath$$Basename.eps"
+\end_layout
+
+\begin_layout LyX-Code
+FormatEnd
+\end_layout
+
+\begin_layout LyX-Code
+Format PDFLaTeX
+\end_layout
+
+\begin_layout LyX-Code
+TransformCommand Rotate RotationLatexCommand
+\end_layout
+
+\begin_layout LyX-Code
+TransformCommand Resize ResizeLatexCommand
+\end_layout
+
+\begin_layout LyX-Code
+Product "$$RotateFront$$ResizeFront
+\end_layout
+
+\begin_layout LyX-Code
+
+\backslash
+
+\backslash
+input{$$AbsOrRelPathMaster$$Basename.pdftex_t}
+\end_layout
+
+\begin_layout LyX-Code
+ $$ResizeBack$$RotateBack"
+\end_layout
+
+\begin_layout LyX-Code
+UpdateFormat pdftex
+\end_layout
+
+\begin_layout LyX-Code
+UpdateResult "$$AbsPath$$Basename.pdftex_t"
+\end_layout
+
+\begin_layout LyX-Code
+Requirement "graphicx"
+\end_layout
+
+\begin_layout LyX-Code
+ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pdftex_t"
+\end_layout
+
+\begin_layout LyX-Code
+ReferencedFile latex "$$AbsPath$$Basename.pdf"
+\end_layout
+
+\begin_layout LyX-Code
+FormatEnd
+\end_layout
+
+\begin_layout LyX-Code
+Format Ascii
+\end_layout
+
+\begin_layout LyX-Code
+Product "$$Contents(
+\backslash
+"$$AbsPath$$Basename.asc
+\backslash
+")"
+\end_layout
+
+\begin_layout LyX-Code
+UpdateFormat asciixfig
+\end_layout
+
+\begin_layout LyX-Code
+UpdateResult "$$AbsPath$$Basename.asc"
+\end_layout
+
+\begin_layout LyX-Code
+FormatEnd
+\end_layout
+
+\begin_layout LyX-Code
+Format DocBook
+\end_layout
+
+\begin_layout LyX-Code
+Product "<graphic fileref=
+\backslash
+"$$AbsOrRelPathMaster$$Basename.eps
+\backslash
+">
+\end_layout
+
+\begin_layout LyX-Code
+ </graphic>"
+\end_layout
+
+\begin_layout LyX-Code
+UpdateFormat eps
+\end_layout
+
+\begin_layout LyX-Code
+UpdateResult "$$AbsPath$$Basename.eps"
+\end_layout
+
+\begin_layout LyX-Code
+ReferencedFile docbook "$$AbsPath$$Basename.eps"
+\end_layout
+
+\begin_layout LyX-Code
+ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
+\end_layout
+
+\begin_layout LyX-Code
+FormatEnd
+\end_layout
+
+\begin_layout LyX-Code
+Product "[XFig: $$FName]"
+\end_layout
+
+\begin_layout LyX-Code
+FormatEnd
+\end_layout
+
+\begin_layout LyX-Code
+TemplateEnd
+\end_layout
+
+\begin_layout Standard
+As you can see, the template is enclosed in
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Template
+\end_layout
+\end_inset
-\family sans
-C-Home
-\family default
+ \SpecialChar \ldots{}
-\family typewriter
-buffer-begin
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+TemplateEnd
+\end_layout
-\family sans
-C-End
-\family default
-
-\family typewriter
-buffer-end
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+.
+ It contains a header specifying some general settings and, for each supported
+ primary document file format, a section
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-Up
-\family default
-
-\family typewriter
-paragraph-up
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Format
+\end_layout
+\end_inset
-\family sans
-C-Down
-\family default
+ \SpecialChar \ldots{}
-\family typewriter
-paragraph-down
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+FormatEnd
+\end_layout
-\family sans
-C-Delete
-\family default
-
-\family typewriter
-word-delete-forward
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+.
+\end_layout
-\family sans
-C-BackSpace
-\family default
-
-\family typewriter
-word-delete-backward
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Subsection
+The template header
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-Insert
-\family default
-
-\family typewriter
-copy
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+AutomaticProduction
+\begin_inset space ~
+\end_inset
+true|false
+\end_layout
-\family sans
-C-Return
-\family default
-
-\family typewriter
-break-line
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ Whether the file represented by the template must be generated by LyX.
+ This command must occur exactly once.
+\end_layout
-\family sans
-C-Left
-\family default
-
-\family typewriter
-word-backward
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+FileFilter
+\begin_inset space ~
+\end_inset
-\family sans
-C-Right
-\family default
-
-\family typewriter
-word-forward
-\layout List
-\labelwidthstring 00.00.0000
+<pattern>
+\end_layout
+\end_inset
-\family sans
-C-S-Down
-\family default
-
-\family typewriter
-paragraph-down-select
-\layout List
-\labelwidthstring 00.00.0000
+ A glob pattern that is used in the file dialog to filter out the desired
+ files.
+ If there is more than one possible file extension (e.
+\begin_inset space \thinspace{}
+\end_inset
+g.
+\begin_inset space \space{}
+\end_inset
-\family sans
-C-S-End
-\family default
-
-\family typewriter
-buffer-end-select
-\layout List
-\labelwidthstring 00.00.0000
+tgif has
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+.obj
+\end_layout
-\family sans
-C-S-Home
-\family default
-
-\family typewriter
-buffer-begin-select
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-S-Left
-\family default
-
-\family typewriter
-word-backward-select
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+.tgo
+\end_layout
+\end_inset
-\family sans
-C-S-Right
-\family default
-
-\family typewriter
-word-forward-select
-\layout List
-\labelwidthstring 00.00.0000
+), use something like
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+"*.{obj,tgo}"
+\end_layout
-\family sans
-C-S-Up
-\family default
-
-\family typewriter
-paragraph-up-select
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+.
+ This command must occur exactly once.
+\end_layout
-\family sans
-C-S-quotedbl
-\family default
-
-\family typewriter
-quote-insert
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+GuiName
+\begin_inset space ~
+\end_inset
-\family sans
-M-Return
-\family default
-
-\family typewriter
-break-paragraph-keep-layout
-\layout List
-\labelwidthstring 00.00.0000
+<guiname>
+\end_layout
+\end_inset
-\family sans
-M-period
-\family default
-
-\family typewriter
-dots-insert
-\layout List
-\labelwidthstring 00.00.0000
+ The text that is displayed on the button.
+ This command must occur exactly once.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-S-Right
-\family default
-
-\family typewriter
-depth-increment
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+HelpText
+\begin_inset space ~
+\end_inset
+<text>
+\begin_inset space ~
+\end_inset
-\family sans
-M-S-Left
-\family default
-
-\family typewriter
-depth-decrement
-\layout List
-\labelwidthstring 00.00.0000
+HelpTextEnd
+\end_layout
+\end_inset
-\family sans
-Escape
-\family default
-
-\family typewriter
-cancel
-\layout List
-\labelwidthstring 00.00.0000
+ The help text that is used in the External dialog.
+ Provide enough information to explain to the user just what the template
+ can provide him with.
+ This command must occur exactly once.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-F2
-\family default
-
-\family typewriter
-buffer-write
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+InputFormat
+\begin_inset space ~
+\end_inset
+<format>
+\end_layout
-\family sans
-F3
-\family typewriter
-buffer-open
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ The file format of the original file.
+ This must be the name of a format that is known to LyX (see section
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:Formats"
-\family sans
-F5
-\family default
-
-\family typewriter
-screen-recenter
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+).
+ Use
+\begin_inset Quotes eld
+\end_inset
-\family sans
-F7
-\family default
-
-\family typewriter
-spellchecker
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-F9
-\family default
-
-\family typewriter
-meta-prefix
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+*
+\end_layout
+\end_inset
-\family sans
-C-F4
-\family default
-
-\family typewriter
-buffer-close
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset Quotes erd
+\end_inset
-\family sans
-M-F4
-\family default
-
-\family typewriter
-lyx-quit
-\layout Subsection
+ 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
-Specific to
-\family typewriter
-sciword.bind
-\layout Standard
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-These are LyX keyboard definitions for mathematics, similar to those of
- Scientific Word.
-\layout Standard
+\begin_layout Plain Layout
+Template
+\begin_inset space ~
+\end_inset
-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.
-\layout Standard
+<id>
+\end_layout
-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.
-\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!)
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ A unique name for the template.
+ It must not contain substitution macros (see below).
+\end_layout
-\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
-.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Transform
+\begin_inset space ~
+\end_inset
-\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
+Rotate|Resize|Clip|Extra
+\end_layout
-displayed
-\begin_inset Quotes erd
-\end_inset
+\end_inset
-).
- You can also type
-\family typewriter
-C-d
-\family default
- in a displayed formula to convert it back to an inline formula.
-\layout List
-\labelwidthstring 00.00.0000
+ This command specifies which transformations are supported by this template.
+ It may occur zero or more times.
+ This command enables the corresponding tabs in the external dialog.
+ Each
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Transform
+\end_layout
-\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
+\end_inset
-fraction
-\begin_inset Quotes erd
-\end_inset
+ command must have either a corresponding
+\begin_inset Flex CharStyle:Code
+status collapsed
-).
- 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.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+TransformCommand
+\end_layout
+\end_inset
-\family sans
-C-i
-\family default
-
-\family typewriter
-math-insert
-\backslash
-int
-\family default
--- Inserts
-\begin_inset Formula $\int$
-\end_inset
+ or a
+\begin_inset Flex CharStyle:Code
+status collapsed
- (
-\family typewriter
-i
-\family default
- for
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Plain Layout
+TransformOption
+\end_layout
-integral
-\begin_inset Quotes erd
-\end_inset
+\end_inset
-)
-\layout List
-\labelwidthstring 00.00.0000
+ command in the
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Format
+\end_layout
-\family sans
-C-k
-\family default
-
-\family typewriter
-line-delete-forward
-\family default
- -- Emacs-like binding: delete forward of cursor to end of line.
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ section.
+ Otherwise the transformation will not be supported by that format.
+\end_layout
-\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
+\begin_layout Subsection
+The Format section
+\end_layout
-math
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-): 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
+\begin_layout Plain Layout
+Format
+\begin_inset space ~
+\end_inset
-text
-\begin_inset Quotes erd
-\end_inset
+LaTeX|PDFLaTeX|PlainText|DocBook
+\end_layout
-).
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ The primary document file format that this format definition is for.
+ Not every template has a sensible representation in all document file formats.
+ Please define nevertheless a
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-n
-\family default
-
-\family typewriter
-math-number
-\family default
--- Add/remove numbering in a single equation.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Format
+\end_layout
+\end_inset
-\family sans
-S-C-N
-\family default
-
-\family typewriter
-math-nonumber
-\family default
- -- Add/remove numbering at a line in equation arrays.
-\layout Standard
+ section for all formats.
+ Use a dummy text when no representation is available.
+ Then you can at least see a reference to the external material in the exported
+ document.
+\end_layout
-The above commands are toggles that control the numbering of equations (
-\family typewriter
-N
-\family default
- for
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-number
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+Option
+\begin_inset space ~
+\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
+<name>
+\begin_inset space ~
+\end_inset
+<value>
+\end_layout
-\family typewriter
+\end_inset
-\backslash
-label{}
-\backslash
-nonumber
-\family default
+ This command defines an additional macro
+\begin_inset Flex CharStyle:Code
+status collapsed
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+$$<name>
+\end_layout
- ) and this generates a (harmless) LaTeX warning.
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ for substitution in
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-o
-\family default
-
-\family typewriter
-file-open
-\family default
--- Open a new document.
- (W*ndows)
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Product
+\end_layout
+\end_inset
-\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
+\begin_inset Flex CharStyle:Code
+status collapsed
-quote
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+<value>
+\end_layout
-).
- This is not the
-\begin_inset Quotes eld
-\end_inset
+\end_inset
-smart
-\begin_inset Quotes erd
-\end_inset
+ itself may contain substitution macros.
+ The advantage over using
+\begin_inset Flex CharStyle:Code
+status collapsed
- double quote character that you get by default.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+<value>
+\end_layout
+\end_inset
-\family sans
-C-r
-\family default
-
-\family typewriter
-math-insert
-\backslash
-sqrt
-\family default
--- Square root sign
-\begin_inset Formula $\sqrt{x}$
-\end_inset
+ directly in
+\begin_inset Flex CharStyle:Code
+status collapsed
- (
-\family typewriter
-r
-\family default
- for
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Plain Layout
+Product
+\end_layout
-root
-\begin_inset Quotes erd
-\end_inset
+\end_inset
-).
-\layout List
-\labelwidthstring 00.00.0000
+ is that the substituted value of
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+$$<name>
+\end_layout
-\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_inset
-.
-\layout List
-\labelwidthstring 00.00.0000
+ is sanitized so that it is a valid optional argument in the document format.
+ This command may occur zero or more times.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\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
+\begin_layout Plain Layout
+Product
+\begin_inset space ~
+\end_inset
-text
-\begin_inset Quotes erd
-\end_inset
+<text>
+\end_layout
-).
- Note that the roman text inserted in math mode is special.
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ The text that is inserted in the exported document.
+ This is actually the most important command and can be quite complex.
+ This command must occur exactly once.
+\end_layout
-\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
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\backslash
-overline
-\family default
- or
-\family typewriter
+\begin_layout Plain Layout
+Preamble
+\begin_inset space ~
+\end_inset
-\backslash
-underbar
-\family default
- for math ).
-\layout List
-\labelwidthstring 00.00.0000
+<name>
+\end_layout
+\end_inset
-\family sans
-C-v
-\family default
-
-\family typewriter
-paste
-\family default
--- W*ndows heritage.
-\layout List
-\labelwidthstring 00.00.0000
+ This command specifies a preamble snippet that will be included in the
+ LaTeX preamble.
+ It has to be defined using
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+PreambleDef
+\end_layout
+\end_inset
-\family sans
-C-w
-\family default
+ \SpecialChar \ldots{}
-\family typewriter
-buffer-close
-\family default
--- Close the current document (again, a W*ndows heritage).
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+PreambleDefEnd
+\end_layout
-\family sans
-C-x
-\family default
-
-\family typewriter
-cut
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+.
+ This command may occur zero or more times.
+\end_layout
-\family sans
-C-z
-\family default
-
-\family typewriter
-undo
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+ReferencedFile
+\begin_inset space ~
+\end_inset
-\family sans
-S-C-Z
-\family default
-
-\family typewriter
-redo
-\family default
--- the
-\begin_inset Quotes eld
-\end_inset
+<format>
+\begin_inset space ~
+\end_inset
-Redo
-\begin_inset Quotes erd
-\end_inset
+<filename>
+\end_layout
- operation, or
-\begin_inset Quotes eld
-\end_inset
+\end_inset
-undo the undo
-\begin_inset Quotes erd
-\end_inset
+ This command denotes files that are created by the conversion process and
+ are needed for a particular export format.
+ If the filename is relative, it is interpreted relative to the master document.
+ This command may be given zero or more times.
+\end_layout
-.
-\layout Standard
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-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
+\begin_layout Plain Layout
+Requirement
+\begin_inset space ~
+\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
+<package>
+\end_layout
-
-\begin_inset Formula $\left[\right]$
-\end_inset
+\end_inset
-
-\begin_inset Formula $\left\{ \right\} $
-\end_inset
+ The name of a required LaTeX package.
+ The package is included via
+\begin_inset Flex CharStyle:Code
+status collapsed
-
-\begin_inset Formula $\left\langle \right\rangle $
-\end_inset
+\begin_layout Plain Layout
-
-\begin_inset Formula $\left|\right|$
-\end_inset
+\backslash
+usepackage{}
+\end_layout
-.
- The delimiters are
-\begin_inset Quotes eld
-\end_inset
+\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
+ in the LaTeX preamble.
+ This command may occur zero or more times.
+\end_layout
-smart
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
- delimiters without removing their contents.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+TransformCommand
+\begin_inset space ~
+\end_inset
+Rotate
+\begin_inset space ~
+\end_inset
-\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-)
-\layout List
-\labelwidthstring 00.00.0000
+RotationLatexCommand
+\end_layout
+\end_inset
-\family sans
-S-C-parenleft
-\family default
-
-\family typewriter
-math-delim ( )
-\layout List
-\labelwidthstring 00.00.0000
+ This command specifies that the built in LaTeX command should be used for
+ rotation.
+ This command may occur once or not at all.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-0
-\family default
-
-\family typewriter
-math-delim ( )
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+TransformCommand
+\begin_inset space ~
+\end_inset
+Resize
+\begin_inset space ~
+\end_inset
-\family sans
-S-C-parenright
-\family default
-
-\family typewriter
-math-delim ( )
-\layout List
-\labelwidthstring 00.00.0000
+ResizeLatexCommand
+\end_layout
+\end_inset
-\family sans
-C-bracketleft
-\family default
-
-\family typewriter
-math-delim [ ]
-\layout List
-\labelwidthstring 00.00.0000
+ This command specifies that the built in LaTeX command should be used for
+ resizing.
+ This command may occur once or not at all.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-bracketright
-\family default
-
-\family typewriter
-math-delim [ ]
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+TransformOption
+\begin_inset space ~
+\end_inset
+Rotate
+\begin_inset space ~
+\end_inset
-\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
+RotationLatexOption
+\end_layout
-, not to confuse with ordinary < > signs.
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ This command specifies that rotation is done via an optional argument.
+ This command may occur once or not at all.
+\end_layout
-\family sans
-C-S-greater
-\family default
-
-\family typewriter
-math-delim langle rangle
-\layout Standard
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-The bar bracket: on some keyboards (e.g.\SpecialChar ~
-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.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+TransformOption
+\begin_inset space ~
+\end_inset
+Resize
+\begin_inset space ~
+\end_inset
-\family sans
-C-S-bar
-\family default
-
-\family typewriter
-math-delim | |
-\layout List
-\labelwidthstring 00.00.0000
+ResizeLatexOption
+\end_layout
+\end_inset
-\family sans
-C-S-brokenbar
-\family default
-
-\family typewriter
-math-delim | |
-\layout List
-\labelwidthstring 00.00.0000
+ This command specifies that resizing is done via an optional argument.
+ This command may occur once or not at all.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-M-bar
-\family default
-
-\family typewriter
-math-delim | |
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+TransformOption
+\begin_inset space ~
+\end_inset
+Clip
+\begin_inset space ~
+\end_inset
-\family sans
-S-C-braceleft
-\family default
-
-\family typewriter
-math-delim { }
-\layout List
-\labelwidthstring 00.00.0000
+ClipLatexOption
+\end_layout
+\end_inset
-\family sans
-S-C-braceright
-\family default
-
-\family typewriter
-math-delim { }
-\layout Standard
-
-Accents are in most cases
-\family typewriter
-Ctrl
-\family default
--<accent key>, e.g.\SpecialChar ~
-
-\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
+ This command specifies that clipping is done via an optional argument.
+ This command may occur once or not at all.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-Ctrl-'
-\family default
-
-\family typewriter
-a
-\family default
+\begin_layout Plain Layout
+TransformOption
+\begin_inset space ~
+\end_inset
-\begin_inset Quotes erd
-\end_inset
+Extra
+\begin_inset space ~
+\end_inset
- inserts á.
- Some accents work only in math mode and others only in text mode.
-\layout List
-\labelwidthstring 00.00.0000
+ExtraLatexOption
+\end_layout
+\end_inset
-\family sans
-C-period
-\family default
-
-\family typewriter
-accent-dot
-\family default
--- overdot accent, \i \.{a}
- (text mode only).
-\layout List
-\labelwidthstring 00.00.0000
+ This command specifies that an extra optional argument is used.
+ This command may occur once or not at all.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-comma
-\family default
-
-\family typewriter
-math-insert
-\backslash
-dot
-\family default
--- overdot accent,
-\begin_inset Formula $\dot{a}$
-\end_inset
+\begin_layout Plain Layout
+UpdateFormat
+\begin_inset space ~
+\end_inset
- (math mode only -- in physics this denotes a first derivative).
-\layout List
-\labelwidthstring 00.00.0000
+<format>
+\end_layout
+\end_inset
-\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
+ The file format of the converted file.
+ This must be the name of a format that is known to LyX (see the
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
-.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+\bar under
+T
+\bar default
+ools\SpecialChar \menuseparator
-\family sans
-S-C-quotedbl
-\family default
-
-\family typewriter
-accent-umlaut
-\family default
--- umlaut accent, ä (text mode only)
-\layout List
-\labelwidthstring 00.00.0000
+\bar under
+P
+\bar default
+references:Conversion
+\end_layout
+\end_inset
-\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
+ dialog).
+ This command must occur exactly once.
+\end_layout
- (math mode only -- in physics this denotes a second derivative).
- To get a triple dot in math mode, use
-\family typewriter
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\backslash
-dddot
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+UpdateResult
+\begin_inset space ~
+\end_inset
+<filename>
+\end_layout
-\family sans
-C-quoteleft
-\family default
-
-\family typewriter
-accent-grave
-\family default
--- grave accent à (text mode only, use
-\family typewriter
+\end_inset
-\backslash
-grave
-\family default
- for math)
-\layout List
-\labelwidthstring 00.00.0000
+ The file name of the converted file.
+ The file name must be absolute.
+ This command must occur exactly once.
+\end_layout
+\begin_layout Subsection
+Preamble definitions
+\end_layout
-\family sans
-S-C-asciitilde
-\family default
-
-\family typewriter
-accent-tilde
-\family default
--- tilde accent ã (text mode only, use
-\family typewriter
+\begin_layout Standard
+The external template configuration file may contain additional preamble
+ definitions enclosed by
+\begin_inset Flex CharStyle:Code
+status collapsed
-\backslash
-tilde
-\family default
- for math)
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+PreambleDef
+\end_layout
+\end_inset
-\family sans
-C-apostrophe
-\family default
+ \SpecialChar \ldots{}
-\family typewriter
-accent-acute
-\family default
--- acute accent á (text mode only, use
-\family typewriter
-
-\backslash
-acute
-\family default
- for math)
-\layout List
-\labelwidthstring 00.00.0000
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+PreambleDefEnd
+\end_layout
-\family sans
-S-C-asciicircum
-\family default
-
-\family typewriter
-accent-circumflex
-\family default
--- circumflex (caret) accent â (text mode only, use
-\family typewriter
+\end_inset
-\backslash
-hat
-\family default
- for math).
-\layout Standard
+.
+ They can be used by the templates in the
+\begin_inset Flex CharStyle:Code
+status collapsed
-Function keys.
- The new key S-F2 for creating a LaTeX file seems handy.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Format
+\end_layout
+\end_inset
-\family sans
-F2
-\family default
-
-\family typewriter
-buffer-write
-\family default
--- Save current document.
-\layout List
-\labelwidthstring 00.00.0000
+ section.
+\end_layout
+\begin_layout Section
+The substitution mechanism
+\end_layout
-\family sans
-S-F2
-\family default
-
-\family typewriter
-buffer-export latex
-\family default
--- Write a LaTeX file for the current document.
-\layout List
-\labelwidthstring 00.00.0000
+\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
-\family sans
-F3
-\family default
-
-\family typewriter
-find-replace
-\family default
--- Find and replace dialog.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+The available macros are the following:
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-F4
-\family default
-
-\family typewriter
-buffer-close
-\family default
--- same as
-\family typewriter
-C-w
-\family default
-.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$$AbsOrRelPathMaster
+\end_layout
+\end_inset
-\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.
-\layout Standard
+ The file path, absolute or relative to the master LyX document.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\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.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$$AbsOrRelPathParent
+\end_layout
+\end_inset
-\family sans
-F4
-\family default
-
-\family typewriter
-font-default
-\family default
--- stop using any special font
-\layout List
-\labelwidthstring 00.00.0000
+ The file path, absolute or relative to the LyX document.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-F5
-\family default
-
-\family typewriter
-font-bold
-\family default
--- make
-\series bold
-bold
-\series default
- text.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$$AbsPath
+\end_layout
+\end_inset
-\family sans
-F6
-\family default
-
-\family typewriter
-font-emph
-\family default
--- make
-\emph on
-emphasized
-\emph default
- text.
-\layout List
-\labelwidthstring 00.00.0000
+ The absolute file path.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-F7
-\family default
-
-\family typewriter
-font-code
-\family default
--- make
-\family typewriter
-typewritten
-\family default
- text.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$$Basename
+\end_layout
+\end_inset
-\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.)
-\layout Standard
+ The filename without path and without the extension.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family typewriter
-F9
-\family default
- is bound as
+\begin_layout Plain Layout
+$$Contents(
\begin_inset Quotes eld
-\end_inset
+\end_inset
-meta-prefix
+filename.ext
\begin_inset Quotes erd
-\end_inset
-
-, same as the
-\family typewriter
-Alt
-\family default
- key (useful e.g.\SpecialChar ~
-if the keyboard has no working
-\family typewriter
-Alt
-\family default
-).
-\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.
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+)
+\end_layout
-\family sans
-M-apostrophe
-\family default
-
-\family typewriter
-math-insert
-\backslash
-prime
-\family default
--- The
-\begin_inset Quotes eld
-\end_inset
+\end_inset
-prime
-\begin_inset Quotes erd
-\end_inset
+ This macro will expand to the contents of the file with the name
+\begin_inset Flex CharStyle:Code
+status collapsed
- symbol
-\begin_inset Formula $\prime$
-\end_inset
+\begin_layout Plain Layout
+filename.ext
+\end_layout
- 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
+\end_inset
-, but in some cases this would generate a double superscript error in LaTeX.
- For example:
-\begin_inset Formula $x^{\prime2}$
-\end_inset
+.
+\end_layout
- (
-\begin_inset Formula $x$
-\end_inset
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
- prime squared) must be entered with the prime character.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$$Extension
+\end_layout
+\end_inset
-\family sans
-C-s\SpecialChar ~
-apostrophe
-\family default
-
-\family typewriter
-command-sequence math-superscript; math-insert
-\backslash
-prime;
-\family default
--- Insert a prime as a superscript (see example above).
-\layout List
-\labelwidthstring 00.00.0000
+ The file extension (including the dot).
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-Up
-\family default
-
-\family typewriter
-math-insert ^
-\family default
--- Insert an upper index.
- Also,
-\family typewriter
-^
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$$FName
+\end_layout
+\end_inset
-\family sans
-C-Down
-\family default
-
-\family typewriter
-math-insert _
-\family default
--- Insert a lower index.
- Also,
-\family typewriter
-_
-\layout List
-\labelwidthstring 00.00.0000
+ The filename of the file specified in the external material dialog.
+ This is either an absolute name, or it is relative to the LyX document.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-s\SpecialChar ~
-d
-\family default
-
-\family typewriter
-math-insert
-\backslash
-partial
-\family default
--- Partial derivative symbol
-\begin_inset Formula $\partial$
-\end_inset
+\begin_layout Plain Layout
+$$FPath
+\end_layout
-.
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ The path part of
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-s\SpecialChar ~
-e
-\family default
-
-\family typewriter
-math-insert
-\backslash
-sum
-\family default
--- Summation symbol
-\begin_inset Formula $\sum$
-\end_inset
+\begin_layout Plain Layout
+$$FName
+\end_layout
- (not the same as the Greek letter uppercase Sigma
-\begin_inset Formula $\Sigma$
-\end_inset
+\end_inset
- because it can resize and allows smart upper/lower limits).
-\layout List
-\labelwidthstring 00.00.0000
+ (absolute name or relative to the LyX document).
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-s\SpecialChar ~
-p
-\family default
-
-\family typewriter
-math-insert
-\backslash
-prod
-\family default
- -- Product symbol
-\begin_inset Formula $\prod$
-\end_inset
+\begin_layout Plain Layout
+$$RelPathMaster
+\end_layout
- (not the same as the Greek letter uppercase Pi,
-\begin_inset Formula $\Pi$
-\end_inset
+\end_inset
-).
-\layout List
-\labelwidthstring 00.00.0000
+ The file path, relative to the master LyX document.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-s\SpecialChar ~
-i
-\family default
-
-\family typewriter
-math-insert
-\backslash
-infty
-\family default
--- Infinity
-\begin_inset Formula $\infty$
-\end_inset
+\begin_layout Plain Layout
+$$RelPathParent
+\end_layout
-.
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ The file path, relative to the LyX document.
+\end_layout
-\family sans
-C-s\SpecialChar ~
-x
-\family default
-
-\family typewriter
-math-insert
-\backslash
-times
-\family default
--- Cross product
-\begin_inset Formula $\times$
-\end_inset
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$$Sysdir
+\end_layout
+\end_inset
-\family sans
-C-s\SpecialChar ~
-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
+ 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
-.
- (Frequently useful in formulae.)
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+$$Tempname
+\end_layout
-\family sans
-C-s\SpecialChar ~
-m
-\family default
-
-\family typewriter
-math-matrix 3 3
-\family default
--- Insert a 3
-\begin_inset Formula $\times$
-\end_inset
+\end_inset
-3 matrix
-\begin_inset Formula $\begin{array}{ccc}
-\\\\\end{array}$
-\end_inset
+ A name and full path to a temporary file which will be automatically deleted
+ whenever the containing document is closed, or the external material insertion
+ deleted.
+\end_layout
-.
- (Then you can modify its size using the
-\family sans
-Edit\SpecialChar \menuseparator
-Math
-\family default
- menu.)
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+All path macros contain a trailing directory separator, so you can construct
+ e.
+\begin_inset space \thinspace{}
+\end_inset
+g.
+\begin_inset space \space{}
+\end_inset
-\family sans
-C-s\SpecialChar ~
-S-plus
-\family default
-
-\family typewriter
-math-insert
-\backslash
-dagger
-\family default
--- The
-\begin_inset Quotes eld
-\end_inset
+the absolute filename with
+\begin_inset Flex CharStyle:Code
+status collapsed
-dagger
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+$$AbsPath$$Basename$$Extension
+\end_layout
-
-\begin_inset Formula $\dagger$
-\end_inset
+\end_inset
.
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
+\begin_layout Standard
+The macros above are substituted in all commands unless otherwise noted.
+ The command
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-C-s\SpecialChar ~
-equal
-\family default
-
-\family typewriter
-math-insert
-\backslash
-equiv
-\family default
---
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Plain Layout
+Product
+\end_layout
-Identical equality
-\begin_inset Quotes erd
-\end_inset
+\end_inset
-
-\begin_inset Formula $\equiv$
-\end_inset
+ supports additionally the following substitutions if they are enabled by
+ the
+\begin_inset Flex CharStyle:Code
+status collapsed
-.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+Transform
+\end_layout
+\end_inset
-\family sans
-M-equal
-\family default
-
-\family typewriter
-math-insert
-\backslash
-approx
-\family default
---
-\begin_inset Quotes eld
-\end_inset
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
-Approximate equality
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+TransformCommand
+\end_layout
-
-\begin_inset Formula $\approx$
-\end_inset
+\end_inset
-.
-\layout List
-\labelwidthstring 00.00.0000
+ commands:
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-minus
-\family default
-
-\family typewriter
-math-insert
-\backslash
-sim
-\family default
--- The
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Plain Layout
+$$ResizeFront
+\end_layout
-of order
-\begin_inset Quotes erd
-\end_inset
+\end_inset
- sign
-\begin_inset Formula $\sim$
-\end_inset
+ The front part of the resize command.
+\end_layout
-.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+$$ResizeBack
+\end_layout
-\family sans
-C-minus
-\family default
-
-\family typewriter
-math-insert
-\backslash
-rightarrow
-\family default
--- The arrow
-\begin_inset Formula $\rightarrow$
-\end_inset
+\end_inset
- as in
-\begin_inset Formula $\lim_{x\rightarrow0}$
-\end_inset
+ The back part of the resize command.
+\end_layout
-.
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+$$RotateFront
+\end_layout
-\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_inset
-.
-\layout List
-\labelwidthstring 00.00.0000
+ The front part of the rotation command.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-S-M-greater
-\family default
-
-\family typewriter
-math-insert
-\backslash
-geq
-\family default
--- Greater-or-equal
-\begin_inset Formula $\geq$
-\end_inset
+\begin_layout Plain Layout
+$$RotateBack
+\end_layout
-.
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ The back part of the rotation command.
+\end_layout
-\family sans
-C-s\SpecialChar ~
-S-less
-\family default
-
-\family typewriter
-math-insert
-\backslash
-ll
-\family default
---
-\begin_inset Quotes eld
-\end_inset
+\begin_layout Standard
+The value string of the
+\begin_inset Flex CharStyle:Code
+status collapsed
-Much less than
-\begin_inset Quotes erd
-\end_inset
+\begin_layout Plain Layout
+Option
+\end_layout
-
-\begin_inset Formula $\ll$
-\end_inset
+\end_inset
- (useful in physics)
-\layout List
-\labelwidthstring 00.00.0000
+ command supports additionally the following substitutions if they are enabled
+ by the
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+Transform
+\end_layout
-\family sans
-C-s\SpecialChar ~
-S-greater
-\family default
-
-\family typewriter
-math-insert
-\backslash
-gg
-\family default
---
-\begin_inset Quotes eld
-\end_inset
+\end_inset
-Much greater than
-\begin_inset Quotes erd
-\end_inset
+ and
+\begin_inset Flex CharStyle:Code
+status collapsed
- sign
-\begin_inset Formula $\gg$
-\end_inset
+\begin_layout Plain Layout
+TransformOption
+\end_layout
-.
-\layout Subsection
+\end_inset
-Standard math bindings
-\layout List
-\labelwidthstring 00.00.0000
+ commands:
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-m\SpecialChar ~
-b
-\family default
-
-\family typewriter
-math-insert
-\backslash
-overline
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$$Clip
+\end_layout
+\end_inset
-\family sans
-M-m\SpecialChar ~
-d
-\family default
-
-\family typewriter
-math-display
-\layout List
-\labelwidthstring 00.00.0000
+ The clip option.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-m\SpecialChar ~
-e
-\family default
-
-\family typewriter
-math-insert ^
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$$Extra
+\end_layout
+\end_inset
-\family sans
-M-m\SpecialChar ~
-f
-\family default
-
-\family typewriter
-math-insert
-\backslash
-frac
-\layout List
-\labelwidthstring 00.00.0000
+ The extra option.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-m\SpecialChar ~
-g
-\family default
-
-\family typewriter
-math-greek
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$$Resize
+\end_layout
+\end_inset
-\family sans
-M-m\SpecialChar ~
-h
-\family default
-
-\family typewriter
-accent-circumflex
-\layout List
-\labelwidthstring 00.00.0000
+ The resize option.
+\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-m\SpecialChar ~
-i
-\family default
-
-\family typewriter
-math-insert
-\backslash
-int
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$$Rotate
+\end_layout
+\end_inset
-\family sans
-M-m\SpecialChar ~
-l
-\family default
-
-\family typewriter
-math-limits
-\layout List
-\labelwidthstring 00.00.0000
+ 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
-\family sans
-M-m\SpecialChar ~
-m
-\family default
-
-\family typewriter
-math-mode
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Enumerate
+Relative and absolute file names should remain relative or absolute, respectivel
+y.
+ Users may have reasons to prefer either form.
+ Relative names are useful for portable documents that should work on different
+ machines, for example.
+ Absolute names may be required by some programs.
+\end_layout
+\begin_layout Enumerate
+LaTeX treats relative file names differently than LyX and other programs
+ in nested included files.
+ For LyX, a relative file name is always relative to the document that contains
+ the file name.
+ For LaTeX, it is always relative to the master document.
+ These two definitions are identical if you have only one document, but
+ differ if you have a master document that includes part documents.
+ That means that relative filenames must be transformed when presented to
+ LaTeX.
+ Fortunately LyX does this automatically for you if you choose the right
+ macros.
+\end_layout
-\family sans
-M-m\SpecialChar ~
-n
-\family default
-
-\family typewriter
-math-number
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+So which path macro should be used in new template definitions? The rule
+ is not difficult:
+\end_layout
+\begin_layout Itemize
+Use
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-m\SpecialChar ~
-o
-\family default
-
-\family typewriter
-math-insert
-\backslash
-oint
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$$AbsPath
+\end_layout
+\end_inset
-\family sans
-M-m\SpecialChar ~
-p
-\family default
-
-\family typewriter
-math-insert
-\backslash
-partial
-\layout List
-\labelwidthstring 00.00.0000
+ if an absolute path is required.
+\end_layout
+\begin_layout Itemize
+Use
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-m\SpecialChar ~
-r
-\family default
-
-\family typewriter
-math-insert
-\backslash
-sqrt
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$$AbsOrRelPathMaster
+\end_layout
+\end_inset
-\family sans
-M-m\SpecialChar ~
-s
-\family default
-
-\family typewriter
-math-insert
-\backslash
-sqrt
-\layout List
-\labelwidthstring 00.00.0000
+ if the substituted string is some kind of LaTeX input.
+\end_layout
+\begin_layout Itemize
+Else use
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-m\SpecialChar ~
-u
-\family default
-
-\family typewriter
-math-insert
-\backslash
-sum
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+$$AbsOrRelPathParent
+\end_layout
+\end_inset
-\family sans
-M-m\SpecialChar ~
-v
-\family default
-
-\family typewriter
-math-insert
-\backslash
-vec
-\layout List
-\labelwidthstring 00.00.0000
+ in order to preserve the user's choice.
+\end_layout
+\begin_layout Standard
+There are special cases where this rule does not work and e.
+\begin_inset space \thinspace{}
+\end_inset
-\family sans
-M-m\SpecialChar ~
-x
-\family default
-
-\family typewriter
-math-insert _
-\layout List
-\labelwidthstring 00.00.0000
+g.
+\begin_inset space \space{}
+\end_inset
+relative names are needed, but normally it will work just fine.
+ One example for such a case is the command
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-m\SpecialChar ~
-8
-\family default
-
-\family typewriter
-math-insert
-\backslash
-infty
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
+\end_layout
+\end_inset
-\family sans
-M-m\SpecialChar ~
-S-G
-\family default
-
-\family typewriter
-math-greek-toggle
-\layout List
-\labelwidthstring 00.00.0000
+ in the XFig template above: We can't use the absolute name because the
+ copier for
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+.pstex_t
+\end_layout
-\family sans
-M-m\SpecialChar ~
-S-N
-\family default
-
-\family typewriter
-math-nonumber
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ files needs the relative name in order to rewrite the file content.
+\end_layout
-\family sans
-M-m\SpecialChar ~
-S-period
-\family default
-
-\family typewriter
-accent-dot
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Section
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:Security-discussion"
+\end_inset
-\family sans
-M-m\SpecialChar ~
-S-asciitilde
-\family default
-
-\family typewriter
-accent-tilde
-\layout List
-\labelwidthstring 00.00.0000
+Security discussion
+\end_layout
+\begin_layout Standard
+\begin_inset Box Shadowbox
+position "t"
+hor_pos "c"
+has_inner_box 1
+inner_pos "t"
+use_parbox 0
+width "100col%"
+special "none"
+height "1in"
+height_special "totalheight"
+status open
-\family sans
-M-m\SpecialChar ~
-S-apostrophe
-\family default
-
-\family typewriter
-math-insert
-\backslash
-prime
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+WARNING: This section is definitely outdated.
+\end_layout
+\end_inset
-\family sans
-M-m\SpecialChar ~
-S-parenleft
-\family default
-
-\family typewriter
-math-delim ( )
-\layout List
-\labelwidthstring 00.00.0000
+\end_layout
-\family sans
-M-m\SpecialChar ~
-S-bracketleft
-\family default
-
-\family typewriter
-math-delim [ ]
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+The external material feature interfaces with a lot of external programs
+ and does so automatically, so we have to consider the security implications
+ of this.
+ In particular, since you have the option of including your own filenames
+ and/or parameter strings and those are expanded into a command, it seems
+ that it would be possible to create a malicious document which executes
+ arbitrary commands when a user views or prints the document.
+ This is something we definitely want to avoid.
+\end_layout
+\begin_layout Standard
+However, since the external program commands are specified in the template
+ configuration file only, there are no security issues if LyX is properly
+ configured with safe templates only.
+ This is so because the external programs are invoked with the
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-m\SpecialChar ~
-S-braceleft
-\family default
-
-\family typewriter
-math-delim { }
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+execvp
+\end_layout
+\end_inset
-\family sans
-M-m\SpecialChar ~
-S-less
-\family default
-
-\family typewriter
-math-delim langle rangle
-\layout List
-\labelwidthstring 00.00.0000
+-system call rather than the
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+system
+\end_layout
-\family sans
-M-m\SpecialChar ~
-S-greater
-\family default
-
-\family typewriter
-math-delim rangle langle
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ system-call, so it's not possible to execute arbitrary commands from the
+ filename or parameter section via the shell.
+\end_layout
-\family sans
-M-m\SpecialChar ~
-S-bar
-\family default
-
-\family typewriter
-math-delim | |
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+This also implies that you are restricted in what command strings you can
+ use in the external material templates.
+ In particular, pipes and redirection are not readily available.
+ This has to be so if LyX should remain safe.
+ If you want to use some of the shell features, you should write a safe
+ script to do this in a controlled manner, and then invoke the script from
+ the command string.
+ In the
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+lib/scripts
+\end_layout
-\family sans
-M-m\SpecialChar ~
-S-plus
-\family default
-
-\family typewriter
-math-insert
-\backslash
-pm
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ directory of the LyX installation, you can find a safe wrapper script
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-m\SpecialChar ~
-S-equal
-\family default
-
-\family typewriter
-math-insert
-\backslash
-neq
-\layout Subsection
+\begin_layout Plain Layout
+general_command_wrapper.py
+\end_layout
-Other Accelerators
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ that supports redirection of input and output.
+ That can serve as an example for how to write safe template scripts.
+ For a more advanced example that uses
+\begin_inset Flex CharStyle:Code
+status collapsed
-\family sans
-M-k\SpecialChar ~
-o
-\family typewriter
-keymap-off
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Plain Layout
+fork
+\end_layout
+\end_inset
-\family sans
-M-k\SpecialChar ~
-t
-\family typewriter
-keymap-toggle
-\layout List
-\labelwidthstring 00.00.0000
+ and friends, take a look at the
+\begin_inset Flex CharStyle:Code
+status collapsed
+\begin_layout Plain Layout
+pic2ascii.py
+\end_layout
-\family sans
-M-k\SpecialChar ~
-x
-\family typewriter
-keymap-off
-\layout List
-\labelwidthstring 00.00.0000
+\end_inset
+ converter script.
+\end_layout
-\family sans
-M-k\SpecialChar ~
-1
-\family typewriter
-keymap-primary
-\layout List
-\labelwidthstring 00.00.0000
+\begin_layout Standard
+It is possible to design a template that interacts directly with the shell,
+ but since this would allow a malicious user to execute arbitrary commands
+ by writing clever filenames and/or parameters, we generally recommend that
+ you only use safe scripts that work with the
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+execvp
+\end_layout
+
+\end_inset
+
+ system call in a controlled manner.
+ Of course, for use in a controlled environment, it can be tempting to just
+ fall back to use ordinary shell scripts.
+ If you do so, be aware that you
+\emph on
+will
+\emph default
+ provide an easily exploitable security hole in your system.
+ Of course it stands to reason that such unsafe templates will never be
+ included in the standard LyX distribution, although we do encourage people
+ to submit new templates in the open source tradition.
+ But LyX as shipped from the official distribution channels will never have
+ unsafe templates.
+\end_layout
+\begin_layout Standard
+Including external material provides a lot of power, and you have to be
+ careful not to introduce security hazards with this power.
+ A subtle error in a single line in an innocent looking script can open
+ the door to huge security problems.
+ So if you do not fully understand the issues, we recommend that you consult
+ a knowledgeable security professional or the LyX development team if you
+ have any questions about whether a given template is safe or not.
+ And do this before you use it in an uncontrolled environment.
+\end_layout
-\family sans
-M-k\SpecialChar ~
-2
-\family typewriter
-keymap-secondary
-\the_end
+\end_body
+\end_document