]> git.lyx.org Git - lyx.git/blobdiff - lib/doc/Customization.lyx
A couple minor changes in the User's Guide.
[lyx.git] / lib / doc / Customization.lyx
index 0febd0576987071579ad52bfb46e870c7432e97c..35bd469e572c081af77dac1808d75db31a9d1db0 100644 (file)
@@ -1,5 +1,5 @@
 #LyX 2.0.0svn created this file. For more info see http://www.lyx.org/
-\lyxformat 355
+\lyxformat 372
 \begin_document
 \begin_header
 \textclass scrbook
@@ -62,6 +62,7 @@ End
 \end_local_layout
 \language english
 \inputencoding auto
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
@@ -74,6 +75,8 @@ End
 
 \graphics default
 \default_output_format default
+\bibtex_command default
+\index_command default
 \paperfontsize 12
 \spacing single
 \use_hyperref true
@@ -95,27 +98,31 @@ End
 \use_geometry false
 \use_amsmath 0
 \use_esint 0
+\use_mhchem 1
 \cite_engine basic
 \use_bibtopic false
 \use_indices false
 \paperorientation portrait
-\backgroundcolor #ffffff
+\suppress_date false
 \branch OutDated
 \selected 0
+\filename_suffix 0
 \color #f5fae7
 \end_branch
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 2
 \paperpagestyle headings
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
 \end_header
 
 \begin_body
@@ -2971,21 +2978,6 @@ DocName
  do right away:
 \end_layout
 
-\begin_layout Itemize
-Read 
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-DocStyle.lyx
-\end_layout
-
-\end_inset
-
-, 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
@@ -3025,11 +3017,7 @@ status collapsed
 
 \begin_layout Plain Layout
 Help\SpecialChar \menuseparator
-
-\bar under
-I
-\bar default
-ntroduction
+Introduction
 \end_layout
 
 \end_inset
@@ -5266,7 +5254,190 @@ Installing New Document Classes
 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 
+\end_layout
+
+\begin_layout Standard
+First, let us a say a few words about how one ought to think about the relation
+ between LyX and LaTeX.
+ The thing to understand is that, in a certain sense, LyX doesn't know anything
+ about LaTeX.
+ Indeed, from LyX's point of view, LaTeX is just one of several 
+\begin_inset Quotes eld
+\end_inset
+
+backend formats
+\begin_inset Quotes erd
+\end_inset
+
+ in which it is capable of producing output.
+ Other such formats are DocBook, plaintext, and XHTML.
+ LaTeX is, of course, a particularly important format, but very little of
+ the information LyX has about LaTeX is actually contained in the program
+ itself.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Some commands are sufficiently complex that they are 
+\begin_inset Quotes eld
+\end_inset
+
+hardcoded
+\begin_inset Quotes erd
+\end_inset
+
+ into LyX.
+ But the developers generally regard this as a Bad Thing.
+\end_layout
+
+\end_inset
+
+ Rather, that information, even for the standard classes like 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+article.cls
+\end_layout
+
+\end_inset
+
+, is contained in layout files.
+\end_layout
+
+\begin_layout Standard
+You can think of the layout file for a given document class as a translation
+ manual between LyX constructs---paragraphs with their corresponding styles,
+ certain sorts of insets, etc---and the corresponding LaTeX constructs.
+ Almost everything LyX knows about 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+article.cls
+\end_layout
+
+\end_inset
+
+, for example, is contained in the file 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+article.layout
+\end_layout
+
+\end_inset
+
+.
+ For this reason, anyone intending to write layout files should plan to
+ study the existing files.
+ A good place to start is with 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+stdsections.inc
+\end_layout
+
+\end_inset
+
+, which just gets `included' in 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+article.layout
+\end_layout
+
+\end_inset
+
+, 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+book.layout
+\end_layout
+
+\end_inset
+
+, and many of the other layout files for document classes.
+ This file is where sections and the like are defined: 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+stdsections.inc
+\end_layout
+
+\end_inset
+
+ tells LyX how paragraphs that are marked with the Section, Subsection,
+ etc, styles can be translated into corresponding LaTeX commands.
+ The 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+article.layout
+\end_layout
+
+\end_inset
+
+ file basically just includes several of these 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+std*.inc
+\end_layout
+
+\end_inset
+
+ files.
+\end_layout
+
+\begin_layout Standard
+Defining the LyX--LaTeX correspondence is not, however, the only thing layout
+ files do.
+ Their other job is to define how the LyX constructs themselves will appear
+ on-screen.
+ The fact that layout files have these two jobs is often a source of confusion,
+ because they are completely separate.
+ Telling LyX how to translate a certain paragraph style into LaTeX does
+ not tell LyX how to display it; conversely, telling LyX how to display
+ a certain paragraph style does not tell LyX how to translate it into LaTeX,
+ let alone tell LaTeX how to display it.
+ So, in general, when you define a new LyX construct, you must always do
+ two quite separate things: (i)
+\begin_inset space ~
+\end_inset
+
+tell LyX how to translate it into LaTeX, and (ii)
+\begin_inset space ~
+\end_inset
+
+tell LyX how to display it.
+\end_layout
+
+\begin_layout Standard
+Much the same is true, of course, as regards LyX's other backend formats,
+ though XHTML is in some ways different, because in that case LyX 
+\emph on
+is
+\emph default
+ able, to some extent, anyway, to use information about how it should display
+ a paragraph on the screen to output information (in the form of CSS) about
+ how the paragrpah should be displayed in a browser.
+ Even in this case, however, the distinction between what LyX does internally
+ and how things are rendered externally remains in force, and the two can
+ be controlled separately.
+\end_layout
+
+\begin_layout Standard
+Some definitions: a document class is a LaTeX file (usually ending in 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -5340,11 +5511,11 @@ Installing a new LaTeX package
 \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.
+ For example, you might need FoilTeX, a package for preparing slides 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 
+ a user interface for installing such packages.
+ For example, with MiKTeX, you start the program 
 \begin_inset Quotes eld
 \end_inset
 
@@ -5353,73 +5524,15 @@ Browse Packages
 \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.
+ To install one, right click on it or use the toolbar button to install
+ it.
 \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.
+If your LaTeX distribution doesn't provide such a user interface, or if
+ the file is not available through the package browser, then you can follow
+ these steps.
 \end_layout
 
 \begin_layout Enumerate
@@ -5435,13 +5548,13 @@ target "http://www.ctan.org/"
 \end_layout
 
 \begin_layout Enumerate
-You can install this package in several different places.
+You can install the 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 
+ To find out where they are, look in the file 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -5481,7 +5594,7 @@ kpsewhich texmf.cnf
 
 \end_inset
 
- The location of the `local' TeX tree is defined by 
+ The location of the `local' TeX tree is defined by the 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -5491,7 +5604,7 @@ TEXMFLOCAL
 
 \end_inset
 
-; this is usually somewhere like 
+ variable; this is usually somewhere like 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -5593,40 +5706,38 @@ just work
 \end_layout
 
 \begin_layout Enumerate
-Create your local
-\begin_inset Foot
+Your local and user trees must have the same sort of directory structure
+ as your main existing 
+\begin_inset Flex CharStyle:Code
 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.
+texmf
 \end_layout
 
 \end_inset
 
- TeX tree.
- You must follow the directory structure of your existing 
+ directory, which will be found at 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-texmf
+TEXMFMAIN
 \end_layout
 
 \end_inset
 
- directory, which will be found at 
+ (commonly, 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-TEXMFMAIN
+/usr/share/texmf/
 \end_layout
 
 \end_inset
 
-.
- For example, latex packages should go under 
+.) For example, latex packages should go under 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -5634,14 +5745,25 @@ status collapsed
 $TEXMFLOCAL/tex/latex/
 \end_layout
 
+\end_inset
+
+ or 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+$TEXMFHOME/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 
+Once your tree is properly set up, you can install the package into an appropria
+te location.
+ For example, you might install the FoilTeX files into 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -5666,82 +5788,106 @@ foiltex
 \end_layout
 
 \begin_layout Enumerate
-Run: 
+Finally, you must update the database TeX uses to find files.
+ 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.
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-texhash
+$TEXMFLOCAL/tex/latex/
 \end_layout
 
 \end_inset
 
 .
- This should create 
+ Under TeXLive and the like, you should run 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-$TEXMFLOCAL/ls-R
+texhash
 \end_layout
 
 \end_inset
 
- amongst others.
+ from a terminal, with root permissions if necessary.
 \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
+ You can verify this from a terminal by typing `
+\begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-Tools\SpecialChar \menuseparator
-Reconfigure
+kpsewhich yourfile.ext
 \end_layout
 
 \end_inset
 
-) and then restart LyX.
- You should then see your new package—for example 
+'.
+ To make LyX aware of it, however, you will need to reconfigure (
 \begin_inset Flex CharStyle:MenuItem
 status collapsed
 
 \begin_layout Plain Layout
-slides (FoilTeX)
+Tools\SpecialChar \menuseparator
+Reconfigure
 \end_layout
 
 \end_inset
 
-—under 
+) and then restart LyX.
+ If the new package was a document class, such as FoilTeX again, you will
+ now see it—
 \begin_inset Flex CharStyle:MenuItem
 status collapsed
 
 \begin_layout Plain Layout
-Document\SpecialChar \menuseparator
-Settings
+slides (FoilTeX)
 \end_layout
 
 \end_inset
 
- in the 
+—available under 
 \begin_inset Flex CharStyle:MenuItem
 status collapsed
 
 \begin_layout Plain Layout
+Document\SpecialChar \menuseparator
+Settings\SpecialChar \menuseparator
 Document Class
 \end_layout
 
 \end_inset
 
- drop box.
+.
  
 \end_layout
 
+\begin_layout Standard
+Unless, of course, no layout file is available for your new document class.
+ That is the topic of the next section.
+\end_layout
+
 \begin_layout Section
 Layouts
 \end_layout
@@ -5758,34 +5904,40 @@ article
 
 \end_inset
 
- text class format as an example.
+ text class as an example.
  The 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-.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.)
+ given document class, how LyX should display them, and how they should
+ be translated into LaTeX, DocBook, or whatever output format is being used.
+\end_layout
+
+\begin_layout Standard
+We shall try to provide a thorough description of the process of writing
+ layout files here.
+ However, there are so many different types of documents supported by LaTeX,
+ DocBook, and so forth, 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, so please
+ feel free to ask questions there.
 \end_layout
 
 \begin_layout Standard
 As you prepare to write a new layout, it is extremely helpful to look at
- the 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 
+ the layouts distributed with LyX.
+ If you use a nice LaTeX document class that might also be of interest for
+ others and so write a corresponding LyX layout, you should consider posting
+ your layout to the 
 \begin_inset CommandInset href
 LatexCommand href
 name "section on the LyX wiki"
@@ -5793,12 +5945,23 @@ target "http://wiki.lyx.org/Layouts/Layouts"
 
 \end_inset
 
- for this kind of material.
+ or even to the LyX developers' list, so that it might be included in LyX
+ itself.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Note that LyX is licensed under the General Public License, so any material
+ that is contribued to LyX must be similarly licensed.
+\end_layout
+
+\end_inset
+
+
 \end_layout
 
 \begin_layout Standard
-All the tags described in this chapter are case-insensitive; this means
- that 
+All the tags described here are case-insensitive; this means that 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -5887,15 +6050,59 @@ name "sub:Layout-modules"
 \end_layout
 
 \begin_layout Standard
-Similar to layout files, and new with LyX 1.6, are layout 
+We have spoken to this point about `layout files'.
+ But there are different sorts of files that contain layout information.
+ Layout files, strictly so called, have the 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.layout
+\end_layout
+
+\end_inset
+
+ extension and provide LyX with information about document classes.
+ As of LyX 1.6, however, layout informtion can also be contained in layout
 \emph on
 modules
 \emph default
-.
+, which have the 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.module
+\end_layout
+
+\end_inset
+
+ extension.
  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 
+ some modules—such as the endnotes module—specifcally provide support for
+ one such package.
+ In a sense, layout modules are similar to included
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+These can have any extension, but by convention have the 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.inc
+\end_layout
+
+\end_inset
+
+ extension.
+\end_layout
+
+\end_inset
+
+ files—files like 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -5905,11 +6112,20 @@ stdsections.inc
 
 \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 
+—in that modules are not specific to a given document class but may be used
+ with many different classes.
+ The difference is that using an included file with 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+article.cls
+\end_layout
+
+\end_inset
+
+, say, requires editing that file.
+ Modules, by contrast, are selected in the 
 \begin_inset Flex CharStyle:MenuItem
 status collapsed
 
@@ -5925,7 +6141,8 @@ Settings
 
 \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.
+ since it can be as simple as adding a single new paragraph style or flex
+ inset.
  But modules may, in principle, contain anything a layout file can contain.
 \end_layout
 
@@ -5967,6 +6184,38 @@ The list of such packages is documented only in the source code.
 \end_inset
 
  LyX will not check for arbitrary packages.
+ It is also possible to use the form 
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+from->to
+\end_layout
+
+\end_inset
+
+, which declares that the module can only be used when there exists a conversion
+ chain between the formats `
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+from
+\end_layout
+
+\end_inset
+
+' and `
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+to
+\end_layout
+
+\end_inset
+
+'.
 \end_layout
 
 \begin_layout Standard
@@ -6056,7 +6305,17 @@ no
 \emph on
 filenames
 \emph default
- without the .module extension.
+ without the 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.module
+\end_layout
+
+\end_inset
+
+ extension.
  So 
 \begin_inset Flex CharStyle:Code
 status collapsed
@@ -6112,7 +6371,7 @@ It is strongly recommended that you save your work before doing so
  In fact, 
 \emph on
 it is strongly recommended that you not attempt to edit modules while simultaneo
-usly working on documents
+usly working on actual documents
 \emph default
 .
  Though of course the developers strive to keep LyX stable in such situations,
@@ -6165,9 +6424,11 @@ sty
 \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 
+The easier case is the one in which your new document class is provided
+ as a style file that is to be used in conjunction with an already supported
+ document class.
+ Gor the sake of the example, we'll assume that the style file is called
 \begin_inset Flex CharStyle:MenuItem
 status collapsed
 
@@ -6187,8 +6448,12 @@ report.cls
 
 \end_inset
 
-, which is a standard class—start by copying the existing class's layout
- file into your local directory:
+, which is a standard class.
+\end_layout
+
+\begin_layout Standard
+Start by copying the existing class's layout file into your local directory:
 \end_layout
 
 \begin_layout LyX-Code
@@ -6296,6 +6561,91 @@ report
 
  in this example—so you can fiddle around with the settings for the different
  sections if you wish.
+ Your new package may also provide commands or environments not present
+ in the base class.
+ In this case, you will want to add these to the layout file.
+ See 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:TextClass"
+
+\end_inset
+
+ for information on how to do so.
+\end_layout
+
+\begin_layout Standard
+If 
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+myclass.sty
+\end_layout
+
+\end_inset
+
+ can be used with several different document classes, and even if it cannot,
+ you might find it easiest just to user a module that you can load with
+ the base class.
+ The simplest possible such module would be:
+\end_layout
+
+\begin_layout LyX-Code
+#
+\backslash
+DeclareLyXModule{My Class} 
+\end_layout
+
+\begin_layout LyX-Code
+#DescriptionBegin 
+\end_layout
+
+\begin_layout LyX-Code
+#Support for myclass.sty.
+\end_layout
+
+\begin_layout LyX-Code
+#DescriptionEnd 
+\begin_inset Newline newline
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+Format 11
+\begin_inset Newline newline
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+Preamble
+\begin_inset Newline newline
+\end_inset
+
+    
+\backslash
+usepackage{myclass}
+\begin_inset Newline newline
+\end_inset
+
+EndPreamble
+\end_layout
+
+\begin_layout Standard
+A more complex module might modify the behavior of some existing constructs
+ or define some new ones.
+ Again, see 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:TextClass"
+
+\end_inset
+
+ for discussion.
 \end_layout
 
 \begin_layout Subsection
@@ -6338,9 +6688,38 @@ LoadClass{book}
 \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:
+ the 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+DeclareLaTeXClass
+\end_layout
+
+\end_inset
+
+ line will be different.
+ If your new class is 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+thesis
+\end_layout
+
+\end_inset
+
+, and it is based upon 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+book
+\end_layout
+
+\end_inset
+
+, then the line should read:
 \begin_inset Foot
 status collapsed
 
@@ -6389,6 +6768,12 @@ roll your own
 \end_layout
 
 \begin_layout Section
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:TextClass"
+
+\end_inset
+
 Declaring a new text class
 \end_layout
 
@@ -6399,7 +6784,7 @@ When it's finally time to get your hands dirty and create or edit your own
  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.
+ overwhelming if you try to do too much in one sitting.
  Go have another adult beverage, just for good measure.
 \end_layout
 
@@ -6408,7 +6793,7 @@ Here we go!
 \end_layout
 
 \begin_layout Standard
-Lines in a layout file which begin with 
+Lines in a layout file which begin with 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -6419,8 +6804,18 @@ status collapsed
 \end_inset
 
  are comments.
- There is one exception to this rule: all layouts should begin with lines
- like:
+ There is one exception to this rule.
+ All 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+*.layout
+\end_layout
+
+\end_inset
+
+ files should begin with a line like:
 \end_layout
 
 \begin_layout LyX-Code
@@ -6602,9 +6997,19 @@ 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.
+This indicates that your text class uses the 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+foo.sty
+\end_layout
+
+\end_inset
+
+ package.
  Finally, it is also possible to declare classes for DocBook code.
- Typical declarations will look like
+ Typical declarations will look like:
 \end_layout
 
 \begin_layout LyX-Code
@@ -6678,14 +7083,15 @@ Reconfigure
 
 \end_inset
 
-, exit LyX and restart it.
+, exit LyX and restart.
  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.
+Once the layout file is installed, you can edit it and see your changes
+ without having to reconfigure or to restart LyX.
+ In versions of LyX prior to 1.6, this was not true.
+ As a result, editing layout files was 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
@@ -6700,9 +7106,12 @@ layout-reload
 .
  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.
+ But you use this function simply by entering it in the mini-buffer.
  
+\end_layout
+
+\begin_layout Standard
+
 \emph on
 Warning
 \emph default
@@ -6716,14 +7125,25 @@ strongly
 \emph on
 strongly
 \emph default
- recommended that you not attempt to edit your layout while simultaneously
- working on a document that you care about.
+ recommended that you not attempt to edit layout information while simultaneousl
+y 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.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+And while we're giving advice, make regular backups.
+ And be nice to your mother.
+\end_layout
+
+\end_inset
+
+
 \end_layout
 
 \begin_layout Subsection
@@ -6731,7 +7151,12 @@ File format
 \end_layout
 
 \begin_layout Standard
-The first non-comment line must contain the file format number:
+The first non-comment line of any layout file, included file, or module
+\emph on
+must
+\emph default
+ contain the file format number:
 \end_layout
 
 \begin_layout Description
@@ -6754,9 +7179,26 @@ int
 
 \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 14.
+] The format of the layout file.
+\end_layout
+
+\begin_layout Standard
+This tag was introduced with LyX 1.4.0.
+ Layout files from LyX 1.3.x and earlier don't have an explicit file format
+ and are considered to be of format 1.
+ The format for the present version of LyX is format 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+19
+\end_layout
+
+\end_inset
+
+.
+ But LyX is capable of reading earlier formats, too, just as it is capable
+ of reading files produced by earlier versions of LyX.
 \end_layout
 
 \begin_layout Subsection
@@ -6875,7 +7317,11 @@ status collapsed
 
 \end_inset
 
-] Whether the class should default to having one or two columns.
+] Whether the class should 
+\emph on
+default
+\emph default
+ to having one or two columns.
  Can be changed in the 
 \begin_inset Flex CharStyle:MenuItem
 status collapsed
@@ -6900,19 +7346,19 @@ Counter
 
 \end_inset
 
- This sequence defines a new counter.
- See Section
-\begin_inset space ~
-\end_inset
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
 
-
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "sub:Counters"
+\begin_layout Plain Layout
+string
+\end_layout
 
 \end_inset
 
- for details.
+] This sequence defines the properties for a counter.
+ If the counter does not yet exist, it is created; if it does exist, it
+ is modified.
  Must end with 
 \begin_inset Quotes eld
 \end_inset
@@ -6932,6 +7378,21 @@ End
 \end_inset
 
 .
+\begin_inset Newline newline
+\end_inset
+
+See Section
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:Counters"
+
+\end_inset
+
+ for details on counters.
 \end_layout
 
 \begin_layout Description
@@ -6998,8 +7459,8 @@ string]
 
 \end_inset
 
- Specifies a module to be included by default with this document class,
which should be specified by filename without the 
+ Specifies a module to be included by default with this document class.
The module should be specified by filename without the 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -7047,7 +7508,7 @@ Standard
 
 .
  This will default to the first defined style if not given, but you are
highly encouraged to use this directive.
+ encouraged to use this directive.
 \end_layout
 
 \begin_layout Description
@@ -7070,8 +7531,8 @@ string
 
 \end_inset
 
-] Indicates that the module in question—which should be specified by filename
- without the 
+] This tag indicates that the module in question—which should be specified
by filename without the 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -7158,59 +7619,140 @@ End
 status collapsed
 
 \begin_layout Plain Layout
-Input
+IfCounter
 \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
+string
 \end_layout
 
 \end_inset
 
-, which contains most of the basic layouts.
-\end_layout
+] Modifies the properties of the given counter.
+ If the counter does not exist, the section is ignored.
+ Must end with 
+\begin_inset Quotes eld
+\end_inset
+
 
-\begin_layout Description
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-InsetLayout
+End
 \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{}
+
+\begin_inset Quotes erd
 \end_inset
 
-g.
-\begin_inset space \space{}
+.
+\begin_inset Newline newline
 \end_inset
 
-a new character style.
- See Section
+See Section
 \begin_inset space ~
 \end_inset
 
 
 \begin_inset CommandInset ref
 LatexCommand ref
-reference "sub:Flex-insets-and"
+reference "sub:Counters"
 
 \end_inset
 
- for more information.
+ for details on counters.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+IfStyle
+\end_layout
+
+\end_inset
+
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] Modifies the properties of the given paragraph style.
+ If the style does not exist, the section is ignored.
+ 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 or to a new, user-defined inset,
+ e.g., a new character style.
  Must end with 
 \begin_inset Quotes eld
 \end_inset
@@ -7230,6 +7772,22 @@ End
 \end_inset
 
 .
+\begin_inset Newline newline
+\end_inset
+
+See Section
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:Flex-insets-and"
+
+\end_inset
+
+ for more information.
 \end_layout
 
 \begin_layout Description
@@ -7242,7 +7800,17 @@ LeftMargin
 
 \end_inset
 
- A string that indicates the width of the left margin on the screen, for
+ [
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+string
+\end_layout
+
+\end_inset
+
+] A string that indicates the width of the left margin on the screen, for
  example, 
 \begin_inset Quotes eld
 \end_inset
@@ -7252,6 +7820,15 @@ MMMMM
 \end_inset
 
 .
+ (Note that this is not a `length', like 
+\begin_inset Quotes eld
+\end_inset
+
+2ex
+\begin_inset Quotes erd
+\end_inset
+
+.)
 \end_layout
 
 \begin_layout Description
@@ -7266,7 +7843,7 @@ NoFloat
 
  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.
+ been defined in an input file.
 \end_layout
 
 \begin_layout Description
@@ -7288,6 +7865,43 @@ NoStyle
 \begin_inset Flex CharStyle:Code
 status collapsed
 
+\begin_layout Plain Layout
+OutputFormat
+\end_layout
+
+\end_inset
+
+ A string indicating the file format (as defined in the Preferences dialog)
+ produced by this class.
+ It is mainly useful when 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+OutputType
+\end_layout
+
+\end_inset
+
+ is `literate' and one wants to define a new type of literate document.
+ This string is reset to `docbook', `latex', or `literate' when the correspondin
+g 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+OutputType
+\end_layout
+
+\end_inset
+
+ parameter is encountered.
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
 \begin_layout Plain Layout
 OutputType
 \end_layout
@@ -7301,11 +7915,9 @@ OutputType
 
 \begin_layout Description
 \begin_inset Flex CharStyle:Code
-status collapsed
+status open
 
 \begin_layout Plain Layout
-
-\series medium
 PageStyle
 \end_layout
 
@@ -7347,7 +7959,7 @@ headings
 
 \end_inset
 
-] The class default pagestyle.
+] The default pagestyle.
  Can be changed in the 
 \begin_inset Flex CharStyle:MenuItem
 status collapsed
@@ -7364,7 +7976,7 @@ Settings
 
 \begin_layout Description
 \begin_inset Flex CharStyle:Code
-status collapsed
+status open
 
 \begin_layout Plain Layout
 Preamble
@@ -7394,7 +8006,17 @@ AddToPreamble
 \end_inset
 
  declarations.
- Must end with 
+ (Use 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+AddToPreamble
+\end_layout
+
+\end_inset
+
+ if you just want to add material to the preamble.) Must end with 
 \begin_inset Quotes eld
 \end_inset
 
@@ -7580,7 +8202,7 @@ DefaultModule
 \end_inset
 
  tag to indicate that it ought to be used.
- It could be used in a module that provided an alternate implementation
+ It could also be used in a module that provided an alternate implementation
  of the same functionality.
 \end_layout
 
@@ -7617,6 +8239,17 @@ string
 .
  Multiple features must be separated by commas.
  Note that you can only request supported features.
+ (Again, see 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LaTeXFeatures.cpp
+\end_layout
+
+\end_inset
+
+ for a list of these.)
 \end_layout
 
 \begin_layout Description
@@ -7727,20 +8360,9 @@ Style
 
 \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 "sub:Paragraph-Styles"
-
-\end_inset
-
- for details.
+ This sequence defines a paragraph style.
+ If the style does not yet exist, it is created; if it does exist, its parameter
+s are modified.
  Must end with 
 \begin_inset Quotes eld
 \end_inset
@@ -7760,6 +8382,21 @@ End
 \end_inset
 
 .
+\begin_inset Newline newline
+\end_inset
+
+See Section
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:Paragraph-Styles"
+
+\end_inset
+
+ for details on paragraph styles.
 \end_layout
 
 \begin_layout Description
@@ -8249,33 +8886,123 @@ block
 status collapsed
 
 \begin_layout Plain Layout
-BottomSep
+BabelPreamble
 \end_layout
 
 \end_inset
 
- [
+ Language dependent information to be included in the LaTeX preamble when
+ this style is used.
+ Note that this will completely override any prior 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-float=0
+BabelPreamble
 \end_layout
 
 \end_inset
 
-]
-\begin_inset Foot
+ declarations.
+ Must end with 
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-Note that a `float' here is a real number, such as: 1.5.
+EndBabelPreamble
 \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.
+
+\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
+This preamble snippet will only be used if the document contains more than
+ one language and the babel package is used.
+\end_layout
+
+\end_deeper
+\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
@@ -8783,464 +9510,340 @@ FreeSpacing
 status collapsed
 
 \begin_layout Plain Layout
-BabelPreamble
+InnerTag
 \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 
+ [[FIXME]] (Used only with XML-type formats.)
+\end_layout
+
+\begin_layout Description
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-BabelPreamble
+InPreamble
 \end_layout
 
 \end_inset
 
- declarations.
- Must end with 
-\begin_inset Quotes eld
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+[1, 0]
+\end_layout
+
 \end_inset
 
+ If 1, marks the layout as to be included in the document preamble rather
+ than in the document body.
+ This is useful for document classes that want such information as the title
+ and author to appear in the preamble.
+\end_layout
 
+\begin_layout Description
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-EndBabelPreamble
+InTitle
 \end_layout
 
 \end_inset
 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+[1, 0]
+\end_layout
 
-\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:
+ 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
 
-\begin_deeper
-\begin_layout Itemize
+\end_inset
+
+ and 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-$$lang
+TitleLatexName
 \end_layout
 
 \end_inset
 
- is replaced by the language name (as used by the babel package).
+ global entries).
+\end_layout
+
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+ItemSep
 \end_layout
 
-\begin_layout Itemize
-The 
-\begin_inset Quotes eld
 \end_inset
 
-Function
-\begin_inset Quotes erd
+ [
+\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
 
- replaces its argument by the translation of the argument to the current
- language.
+.
+ 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
 
-\begin_layout Standard
-This preamble snippet will only be used if the document contains more than
- one language and the babel package is used.
+\end_inset
+
+.
+ Note that this is a
+\emph on
+ multiplier.
 \end_layout
 
-\end_deeper
 \begin_layout Description
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-LangPreamble
+ItemTag
 \end_layout
 
 \end_inset
 
- Like 
+ [[FIXME]] (Used only with XML-type formats.)
+\end_layout
+
+\begin_layout Description
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-BabelPreamble
+KeepEmpty
 \end_layout
 
 \end_inset
 
-, but this preamble snippet occurs independently from the babel package,
- and only for the document language.
- Must end with 
-\begin_inset Quotes eld
+\begin_inset CommandInset label
+LatexCommand label
+name "des:KeepEmpty"
+
 \end_inset
 
+[
+\emph on
 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-EndLangPreamble
+
+\emph on
+0
 \end_layout
 
 \end_inset
 
 
-\begin_inset Quotes erd
+\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_deeper
-\begin_layout Standard
-If the style defines text that appears in the typeset document, it may use
+\begin_layout Description
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-LangPreamble
+LabelBottomsep
 \end_layout
 
 \end_inset
 
- and 
+ [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
-BabelPreamble
+Top_Environment
 \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
+Centered_Top_Environment
 \end_layout
 
 \end_inset
 
- file) shows how this works:
+).
 \end_layout
 
-\begin_layout LyX-Code
-Preamble
-\end_layout
+\begin_layout Description
+\begin_inset Flex CharStyle:Code
+status collapsed
 
-\begin_layout LyX-Code
-  
-\backslash
-theoremstyle{remark}
-\end_layout
-
-\begin_layout LyX-Code
-  
-\backslash
-newtheorem{claim}[thm]{
-\backslash
-protect
-\backslash
-claimname}
-\end_layout
-
-\begin_layout LyX-Code
-EndPreamble
-\end_layout
-
-\begin_layout LyX-Code
-LangPreamble
-\end_layout
-
-\begin_layout LyX-Code
-  
-\backslash
-providecommand{
-\backslash
-claimname}{_(Claim)}
-\end_layout
-
-\begin_layout LyX-Code
-
-\end_layout
-
-\begin_layout LyX-Code
-EndLangPreamble
-\end_layout
-
-\begin_layout LyX-Code
-BabelPreamble
-\end_layout
-
-\begin_layout LyX-Code
-    
-\backslash
-addto
-\backslash
-captions$$lang{
-\backslash
-renewcommand{
-\backslash
-claimname}{_(Claim)}}
-\end_layout
-
-\begin_layout LyX-Code
-EndBabelPreamble
-\end_layout
-
-\begin_layout Standard
-The key to correct translation of the user visible text is the definition
- of the command 
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-
-\backslash
-claimname
-\end_layout
-
-\end_inset
-
- in the language preamble.
- This command holds the name of the theorem that will appear in the output.
- The 
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-BabelPreamble
-\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
+\begin_layout Plain Layout
+LabelCounter
 \end_layout
 
 \end_inset
 
- for each used language in multilanguage documents.
-\end_layout
-
-\end_deeper
-\begin_layout Description
+ [
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-InnerTag
+string=""
 \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
-
+]
+\begin_inset Newline newline
 \end_inset
 
+The name of the counter for automatic numbering.
  
-\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
-
+\begin_inset Newline newline
 \end_inset
 
- [
+This 
+\emph on
+must
+\emph default
+ be given if 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-float=0
+LabelType
 \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 
+ is 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-Parsep
+Counter
 \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
-
+ In that case, the counter will be stepped each time the layout appears.
+\begin_inset Newline newline
 \end_inset
 
-.
- Note that this is a
+This 
 \emph on
- multiplier.
-\end_layout
-
-\begin_layout Description
+may
+\emph default
+ also be given if 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-ItemTag
+LabelType
 \end_layout
 
 \end_inset
 
- [[FIXME]] (Used only with XML-type formats.)
-\end_layout
-
-\begin_layout Description
+ is 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-KeepEmpty
+Enumerate
 \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
-
+, though this case is a bit complicated.
+ Suppose you declare 
+\begin_inset Quotes eld
 \end_inset
 
 
-\emph default
-, 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-1
+LabelCounter myenum
 \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
 
+\begin_inset Quotes erd
 \end_inset
 
- [float=0] The vertical space between the label and the text body.
- Only used for labels that are above the text body (
+.
+ Then the actual counters used are 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-Top_Environment
+myenumi
 \end_layout
 
 \end_inset
@@ -9250,67 +9853,44 @@ Top_Environment
 status collapsed
 
 \begin_layout Plain Layout
-Centered_Top_Environment
+myenumii
 \end_layout
 
 \end_inset
 
-).
-\end_layout
-
-\begin_layout Description
+, 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-LabelCounter
+myenumiii
 \end_layout
 
 \end_inset
 
- [
+, and 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-string=""
+myenumiv
 \end_layout
 
 \end_inset
 
-]
+, much as in LaTeX.
+ These counters must all be declared separately.
 \begin_inset Newline newline
 \end_inset
 
-The name of the counter for automatic numbering (see Section 
+See Section 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "sub:Counters"
 
 \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
-
-.
+ for details on counters.
 \end_layout
 
 \begin_layout Description
@@ -9554,7 +10134,7 @@ LabelTag
 status collapsed
 
 \begin_layout Plain Layout
-Labeltype
+LabelType
 \end_layout
 
 \end_inset
@@ -9568,40 +10148,80 @@ status collapsed
 \emph on
 No_Label
 \emph default
-, Manual, Static, Top_Environment, 
-\begin_inset Newline newline
+, Manual, Static, Top_Environment, Centered_Top_Environment, Counter, Sensitive,
+ Enumerate, Itemize, Bibliography
+\end_layout
+
 \end_inset
 
-Centered_Top_Environment, Sensitive, Counter
+] 
+\end_layout
+
+\begin_deeper
+\begin_layout Itemize
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Manual
 \end_layout
 
 \end_inset
 
-] 
-\begin_inset Newline newline
+ means the label is the very first word (up to the first real blank).
+ Use protected spaces (like
+\begin_inset space ~
 \end_inset
 
+that one) if you want more than one word as the label.
+\end_layout
 
+\begin_layout Itemize
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-Manual
+Static
 \end_layout
 
 \end_inset
 
- means the label is the very first word (up to the first real blank).
-\begin_inset Foot
+ means the label is simply whatever 
+\begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-Use protected spaces if you want more than one word as the label.
+LabelString
 \end_layout
 
 \end_inset
 
+ declares it to be.
+ Note that this really is `static'.
+\end_layout
+
+\begin_layout Itemize
+\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
 
@@ -9611,151 +10231,359 @@ Static
 
 \end_inset
 
- means it is defined in the layout (see 
+.
+ 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.
+ This might be used with the 
+\begin_inset Flex CharStyle:MenuItem
+status collapsed
+
+\begin_layout Plain Layout
+Abstract
+\end_layout
+
+\end_inset
+
+ layout, for example.
+\end_layout
+
+\begin_layout Itemize
+\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: It is
+ hardcoded to be `FloatType N', where N is the value of the counter associated
+ with the float.
+\end_layout
+
+\begin_layout Itemize
+The 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Counter
+\end_layout
+
+\end_inset
+
+ label type defines automatically numbered labels.
+ The 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LabelString
+\end_layout
+
+\end_inset
+
+ will be expanded to resolve any counter references it contains: For example,
+ it might be 
+\begin_inset Quotes eld
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Section 
+\backslash
+thechapter.
+\backslash
+thesection
+\end_layout
+
+\end_inset
+
+
+\begin_inset Quotes erd
+\end_inset
+
+.
+ See Section 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:Counters"
+
+\end_inset
+
+ for more information on counters.
+\end_layout
+
+\begin_layout Itemize
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Enumerate
+\end_layout
+
+\end_inset
+
+ produces the usual sort of enumeration labels.
+ At present, it is hardcoded to use Arabic numerals, lowercase letters,
+ small Roman numerals, and uppercase letters for the four possible depths.
+\end_layout
+
+\begin_layout Itemize
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Itemize
+\end_layout
+
+\end_inset
+
+ produces various bullets at the different levels.
+ It is also hardcoded.
+\end_layout
+
+\begin_layout Itemize
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Bibliography
+\end_layout
+
+\end_inset
+
+ is used internally by LyX and should be used only with 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-LabelString
+LatexType BibEnvironment
 \end_layout
 
 \end_inset
 
-).
+.
+\end_layout
+
+\end_deeper
+\begin_layout Description
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-Top_Environment
+LangPreamble
 \end_layout
 
 \end_inset
 
- and 
+ Like 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-Centered_Top_Environment
+BabelPreamble
 \end_layout
 
 \end_inset
 
- are special cases of 
+, but this preamble snippet occurs independently from the babel package,
+ and only for the document language.
+ Must end with 
+\begin_inset Quotes eld
+\end_inset
+
+
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-Static
+EndLangPreamble
 \end_layout
 
 \end_inset
 
+
+\begin_inset Quotes erd
+\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
+\end_layout
+
+\begin_deeper
+\begin_layout Standard
+If the style defines text that appears in the typeset document, it may use
+\begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-Abstract
+LangPreamble
 \end_layout
 
 \end_inset
 
- layout or the 
-\begin_inset Flex CharStyle:MenuItem
+ and 
+\begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-Bibliography
+BabelPreamble
 \end_layout
 
 \end_inset
 
layout.
- This is also the case for 
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
-Manual
+theorems-ams.inc
 \end_layout
 
 \end_inset
 
- labels with latex type 
-\begin_inset Flex CharStyle:Code
-status collapsed
+ file) shows how this works:
+\end_layout
 
-\begin_layout Plain Layout
-Environment
+\begin_layout LyX-Code
+Preamble
 \end_layout
 
-\end_inset
+\begin_layout LyX-Code
+  
+\backslash
+theoremstyle{remark}
+\end_layout
 
-, in order to make layouts for theorems work correctly.
-\begin_inset Flex CharStyle:Code
-status collapsed
+\begin_layout LyX-Code
+  
+\backslash
+newtheorem{claim}[thm]{
+\backslash
+protect
+\backslash
+claimname}
+\end_layout
 
-\begin_layout Plain Layout
-Sensitive
+\begin_layout LyX-Code
+EndPreamble
 \end_layout
 
-\end_inset
+\begin_layout LyX-Code
+LangPreamble
+\end_layout
 
- is a special case for the caption-labels 
-\begin_inset Quotes eld
-\end_inset
+\begin_layout LyX-Code
+  
+\backslash
+providecommand{
+\backslash
+claimname}{_(Claim)}
+\end_layout
 
-Figure
-\begin_inset Quotes erd
-\end_inset
+\begin_layout LyX-Code
 
- and 
-\begin_inset Quotes eld
-\end_inset
+\end_layout
 
-Table
-\begin_inset Quotes erd
-\end_inset
+\begin_layout LyX-Code
+EndLangPreamble
+\end_layout
 
-.
+\begin_layout LyX-Code
+BabelPreamble
+\end_layout
+
+\begin_layout LyX-Code
+    
+\backslash
+addto
+\backslash
+captions$$lang{
+\backslash
+renewcommand{
+\backslash
+claimname}{_(Claim)}}
+\end_layout
+
+\begin_layout LyX-Code
+EndBabelPreamble
+\end_layout
+
+\begin_layout Standard
+The key to correct translation of the user visible text is the definition
+ of the command 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-Sensitive
+
+\backslash
+claimname
 \end_layout
 
 \end_inset
 
- means the (hardcoded) label string depends on the kind of float.
+ in the language preamble.
+ This command holds the name of the theorem that will appear in the output.
  The 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-Counter
+BabelPreamble
 \end_layout
 
 \end_inset
 
- label type defines automatically numbered labels.
- See Section 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "sub:Counters"
+ 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 in multilanguage documents.
 \end_layout
 
+\end_deeper
 \begin_layout Description
 \begin_inset Flex CharStyle:Code
 status collapsed
@@ -9830,13 +10658,36 @@ Paragraph
 status collapsed
 
 \begin_layout Plain Layout
-List_Environment
+List_Environment, Bib_Environment
 \end_layout
 
 \end_inset
 
 ] How the layout should be translated into LaTeX.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+LatexType
+\end_layout
+
+\end_inset
+
+ is perhaps a bit misleading, since these rules apply to SGML classes, too.
+ Visit the SGML class files for specific examples.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_deeper
+\begin_layout Itemize
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -9848,6 +10699,9 @@ Paragraph
 
  means nothing special.
  
+\end_layout
+
+\begin_layout Itemize
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -9874,7 +10728,10 @@ LatexName
 
 \end_inset
 
- and 
+.
+\end_layout
+
+\begin_layout Itemize
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -9909,6 +10766,9 @@ LatexName
 
 .
  
+\end_layout
+
+\begin_layout Itemize
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -9928,7 +10788,7 @@ Environment
 
 \end_inset
 
-, except that a 
+, except that an 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -9942,6 +10802,9 @@ item
 
  is generated for each paragraph of this environment.
  
+\end_layout
+
+\begin_layout Itemize
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -10003,19 +10866,6 @@ aragraph
 
  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
@@ -10046,6 +10896,7 @@ end{latexname}.
 depending upon the LaTeX type.
 \end_layout
 
+\end_deeper
 \begin_layout Description
 \begin_inset Flex CharStyle:Code
 status collapsed
@@ -11130,6 +11981,7 @@ string
 \end_inset
 
 ] The string that will be used in the menus and also for the caption.
+ This is translated to the current language if babel is used.
 \end_layout
 
 \begin_layout Description
@@ -11227,6 +12079,7 @@ string
 \end_inset
 
 ] The heading used for the list of floats.
+ This is translated to the document language.
 \end_layout
 
 \begin_layout Description
@@ -11941,7 +12794,6 @@ URL
 \end_inset
 
 .
 \end_layout
 
 \begin_layout Enumerate
@@ -12769,11 +13621,21 @@ to your layout file to get them to work.
 \end_layout
 
 \begin_layout LyX-Code
-Counter name
+Counter CounterName
 \end_layout
 
 \begin_layout Standard
-where of course `name' is replaced by the name of the counter.
+where of course `
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+CounterName
+\end_layout
+
+\end_inset
+
+' is replaced by the name of the counter.
  And it must end with 
 \begin_inset Quotes eld
 \end_inset
@@ -13347,7 +14209,7 @@ string
 
 \end_inset
 
-] Valid argument are: 
+] Valid arguments are: 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -13409,6 +14271,45 @@ no_bar
 
 .
  Each of these turns on or off the corresponding attribute.
+ For example, 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+emph
+\end_layout
+
+\end_inset
+
+ turns on emphasis, and 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+no_emph
+\end_layout
+
+\end_inset
+
+ turns it off.
+\begin_inset Newline newline
+\end_inset
+
+If the latter seems puzzling, remember that the font settings for the present
+ context are generally inherited from the surrounding context.
+ So 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+no_emph
+\end_layout
+
+\end_inset
+
+ would turn off the emphasis that was anyway in effect, say, in a theorem
+ environment.
 \end_layout
 
 \begin_layout Description