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

% if pdflatex is used
\usepackage{ifpdf}
\ifpdf

 % set fonts for nicer pdf view
 \IfFileExists{lmodern.sty}
  {\usepackage{lmodern}}{}

\fi % end if pdflatex is used

% the pages of the TOC are numbered roman
% and a PDF-bookmark for the TOC is added
\pagenumbering{roman}
\let\myTOC\tableofcontents
\renewcommand{\tableofcontents}{%
 \pdfbookmark[1]{\contentsname}{}
 \myTOC
 \cleardoublepage
 \pagenumbering{arabic}}

% used for multi-column text
\usepackage{multicol}

% extra space for tables
\newcommand{\extratablespace}[1]{\noalign{\vskip#1}}
\end_preamble
\options fleqn,bibliography=totoc,index=totoc,BCOR7.5mm,titlepage,captions=tableheading
\use_default_options false
\begin_modules
logicalmkup
theorems-ams
theorems-ams-extended
\end_modules
\maintain_unincluded_children false
\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
\language_package default
\inputencoding auto
\fontencoding global
\font_roman default
\font_sans default
\font_typewriter default
\font_default_family default
\use_non_tex_fonts false
\font_sc false
\font_osf false
\font_sf_scale 100
\font_tt_scale 100

\graphics default
\default_output_format default
\output_sync 0
\bibtex_command default
\index_command default
\paperfontsize 12
\spacing single
\use_hyperref true
\pdf_title "LyX's Additional Features manual"
\pdf_author "LyX Team"
\pdf_subject "LyX's additional features documentation"
\pdf_keywords "LyX, Documentation, Additional"
\pdf_bookmarks true
\pdf_bookmarksnumbered true
\pdf_bookmarksopen false
\pdf_bookmarksopenlevel 1
\pdf_breaklinks false
\pdf_pdfborder false
\pdf_colorlinks true
\pdf_backref false
\pdf_pdfusetitle false
\pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue, pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false"
\papersize default
\use_geometry false
\use_amsmath 1
\use_esint 0
\use_mhchem 1
\use_mathdots 1
\cite_engine basic
\use_bibtopic false
\use_indices false
\paperorientation portrait
\suppress_date false
\use_refstyle 0
\index Index
\shortcut idx
\color #008000
\end_index
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\paragraph_indentation default
\quotes_language english
\papercolumns 1
\papersides 2
\paperpagestyle headings
\tracking_changes false
\output_changes false
\html_math_output 0
\html_css_as_file 0
\html_be_strict true
\end_header

\begin_body

\begin_layout Title
Additional LyX Features
\end_layout

\begin_layout Subtitle
Version 2.0.x
\end_layout

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

\begin_layout Plain Layout
\noindent
Principal maintainer of this file is
\noun on
 Richard Heck
\noun default
.
 If you have comments or error corrections, please send them to the LyX
 Documentation mailing list, 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
\noindent
<lyx-docs@lists.lyx.org>
\end_layout

\end_inset

.
\end_layout

\end_inset


\end_layout

\begin_layout Standard
\begin_inset CommandInset toc
LatexCommand tableofcontents

\end_inset


\end_layout

\begin_layout Chapter
Introduction
\end_layout

\begin_layout Standard
This manual is essentially Part II of the 
\emph on
User's Guide\SpecialChar \@.

\emph default
 The reason for separating this document out is simple: the 
\emph on
User's Guide
\emph default
 is already quite lengthy, and it contains information on all of the basic
 features one needs to know in order to prepare most documents.
 However, the LyX Team has worked to make LyX extensible through various
 configuration files and external packages.
 That means that if you want to support the Fizzwizzle LaTeX package, you
 can create a layout file (or module) for it without having to alter LyX
 itself.
 We've already had contributions of several new features this way, and some
 of them are documented here.
 There are also some more `advanced' features, such as how to control the
 presentation of bibliographies and how to work with multi-part documents,
 that are not covered in the 
\emph on
User's Guide
\emph default
 and are discussed here.
\end_layout

\begin_layout Standard
This manual also documents some special features, like fax support, version
 control, and SGML support, which require additional software to work properly.
 There is also a chapter on LyX's support for HTML.
 And lastly, there's a chapter of LaTeX tools and tips, things you can use
 to spruce up your documents by directly using the powerful features of
 LaTeX.
 After all, LyX 
\emph on
is
\emph default
 only WYSIWYM and will only ever interface to some, not all, LaTeX features.
\end_layout

\begin_layout Standard
If you haven't read the 
\emph on
Introduction
\emph default
 yet, you are definitely in the wrong manual.
 The 
\emph on
Introduction
\emph default
 is the first place to go, since it describes the notation and format of
 all of the manuals.
 You should also be thoroughly familiar with the 
\emph on
User's Guide
\emph default
 and all of the basic features of LyX before attempting to read this one.
\end_layout

\begin_layout Standard
Since many of the topics in this manual depend heavily on LyX's interaction
 with LaTeX, this first chapter covers the inner workings of LyX and how
 to direct LyX to generate exactly the LaTeX code you want.
 It is obviously for more seasoned LyX users.
\end_layout

\begin_layout Chapter
LyX and LaTeX
\end_layout

\begin_layout Section
How LyX Uses LaTeX
\end_layout

\begin_layout Standard
This chapter is for both TeX-nicians and the LaTeX-curious.
 In it, we'll explain how LyX and LaTeX work together to produce printable
 output.
 This is the only place in any of the manuals where we assume you know something
 about LaTeX.
\end_layout

\begin_layout Standard
At one time, LyX was called a 
\begin_inset Quotes eld
\end_inset

WYSIWYM frontend to LaTeX,
\begin_inset Quotes erd
\end_inset

 but that's no longer true.
 There are frontends to LaTeX out there.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Some familar ones are TeXmaker and kile, on Linux, and TeXshop, OSX.
 There are also the LaTeX modes for vi and emacs, of course.
\end_layout

\end_inset

 These are basically text editors with the ability to run LaTeX and mark
 any errors in the file you're editing.
 Although LyX 
\emph on
is
\emph default
 an editor, and it 
\emph on
does
\emph default
 run LaTeX, and it also indicates errors in the file, it also does much,
 much more.
 For one thing, you don't need to know LaTeX to use LyX effectively.
 And LyX has added its own extensions to LaTeX.
 Try the following sometime: select 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Export\SpecialChar \menuseparator
LaTeX
\end_layout

\end_inset

 from the 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
File
\end_layout

\end_inset

 menu (or 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
View\SpecialChar \menuseparator
Source
\end_layout

\end_inset

), then look at the preamble of the resulting 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.tex
\end_layout

\end_inset

 file.
 You'll notice a variety of new macros defined specifically by LyX.
 These macros are defined automatically, according to the features you use
 in the document.
\end_layout

\begin_layout Standard
There are several commands that automatically invoke LaTeX.
 They are:
\end_layout

\begin_layout Itemize
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
View\SpecialChar \menuseparator
View
\end_layout

\end_inset


\end_layout

\begin_layout Itemize
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
View\SpecialChar \menuseparator
Update
\end_layout

\end_inset


\end_layout

\begin_layout Itemize
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
File\SpecialChar \menuseparator
Print
\end_layout

\end_inset


\end_layout

\begin_layout Itemize
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
File\SpecialChar \menuseparator
Fax
\end_layout

\end_inset


\end_layout

\begin_layout Standard
They will only invoke LaTeX if the file has changed since the last time
 LaTeX was run.
 
\end_layout

\begin_layout Standard
When LyX runs LaTeX on the file you're editing, it performs these steps:
\end_layout

\begin_layout Enumerate
Convert the document to LaTeX and save to a file with the extension 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.tex
\end_layout

\end_inset

 in place of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.lyx
\end_layout

\end_inset

.
\end_layout

\begin_layout Enumerate
Run LaTeX on the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.tex
\end_layout

\end_inset

 file (maybe several times), and run any other commands (such as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
bibtex
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
makeindex
\end_layout

\end_inset

) needed to compile the LaTeX file.
\end_layout

\begin_layout Enumerate
If there are any errors, show the error log.
\end_layout

\begin_layout Standard
If you've run LaTeX using 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
View
\bar under
\SpecialChar \menuseparator

\bar default
DVI
\end_layout

\end_inset

, LyX then runs a DVI viewer to display the DVI-file.
 If you've used 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
View
\bar under
\SpecialChar \menuseparator

\bar default
PostScript
\end_layout

\end_inset

, LyX performs further steps:
\end_layout

\begin_layout Itemize
Run 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
dvips
\end_layout

\end_inset

 to convert the DVI file to PostScript.
\end_layout

\begin_layout Itemize
Run a PostScript viewer, such as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ghostview
\end_layout

\end_inset

, to display the PostScript file.
\end_layout

\begin_layout Standard
LyX does similar things when viewing, or exporting, other formats.
\end_layout

\begin_layout Section
Translating LaTeX files into LyX
\end_layout

\begin_layout Standard
You can import a LaTeX file into LyX by using the 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
File\SpecialChar \menuseparator
Import\SpecialChar \menuseparator
LaTeX
\end_layout

\end_inset

 command in LyX.
 This will call a program named 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
tex2lyx
\end_layout

\end_inset

 which will create a file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
foo.lyx
\end_layout

\end_inset

 from the file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
foo.tex
\end_layout

\end_inset

.
 LyX will then open that file.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
tex2lyx
\end_layout

\end_inset

 can also be run from the command line, of course.
\end_layout

\end_inset


\end_layout

\begin_layout Standard
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
tex2lyx
\end_layout

\end_inset

 will translate most legal LaTeX, but not everything.
 It will put things it doesn't understand into TeX code, so after translating
 a file with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
tex2lyx
\end_layout

\end_inset

, you can look for TeX code and hand-edit it until it looks right.
\end_layout

\begin_layout Standard
If you don't know what TeX code is, read the next section.
\end_layout

\begin_layout Section
\begin_inset CommandInset label
LatexCommand label
name "sec:Inserting-TeX-Code"

\end_inset

Inserting TeX Code into LyX Documents 
\end_layout

\begin_layout Standard
Anything you can do in LaTeX you can do in LyX, for a very simple reason:
 You can always insert TeX code into any LyX document.
 LyX cannot, and will never be able to, display every possible LaTeX construct.
 If ever you need to insert LaTeX commands into your LyX document, you can
 use the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TeX Code
\end_layout

\end_inset

 box, which you can insert into your document with 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Insert\SpecialChar \menuseparator
TeX Code
\end_layout

\end_inset

.
\end_layout

\begin_layout Standard
Here's an example of inserting LaTeX commands in a LyX document.
 The code looks like this:
\end_layout

\begin_layout LyX-Code

\backslash
begin{tabular}{ll}
\begin_inset Newline newline
\end_inset


\backslash
begin{minipage}{5cm}
\begin_inset Newline newline
\end_inset

This is an example for a minipage environment.
 You 
\begin_inset Newline newline
\end_inset

can put nearly everything in it, even (non-floating) 
\begin_inset Newline newline
\end_inset

figures and tables.
 
\begin_inset Newline newline
\end_inset


\backslash
end{minipage}
\begin_inset Newline newline
\end_inset

&
\begin_inset Newline newline
\end_inset


\backslash
begin{minipage}{5cm}
\begin_inset Newline newline
\end_inset


\backslash
begin{verbatim}
\begin_inset Newline newline
\end_inset


\backslash
begin{minipage}{5cm}
\begin_inset Newline newline
\end_inset

This ...
 
\begin_inset Newline newline
\end_inset


\backslash
end{minipage}
\begin_inset Newline newline
\end_inset


\backslash
end{verbatim}
\begin_inset Newline newline
\end_inset


\backslash
end{minipage}
\begin_inset Newline newline
\end_inset


\backslash
end{tabular}
\end_layout

\begin_layout LyX-Code

\end_layout

\begin_layout Standard
The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
TeX Code
\end_layout

\end_inset

 box containing this text is directly after this paragraph.
 Those of you reading the manual in LyX will only see the TeX code inset.
 Those reading a printed version of the manuals will see the actual results:
\end_layout

\begin_layout Standard
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
begin{tabular}{ll}
\end_layout

\begin_layout Plain Layout


\backslash
begin{minipage}{5cm}
\end_layout

\begin_layout Plain Layout

This is an example for a minipage environment.
 You can put nearly everything in it, even (non-floating) figures and tables.
 
\end_layout

\begin_layout Plain Layout


\backslash
end{minipage}
\end_layout

\begin_layout Plain Layout

&
\end_layout

\begin_layout Plain Layout


\backslash
begin{minipage}{5cm}
\end_layout

\begin_layout Plain Layout


\backslash
begin{verbatim}
\end_layout

\begin_layout Plain Layout


\backslash
begin{minipage}{5cm}
\end_layout

\begin_layout Plain Layout

This ...
 
\end_layout

\begin_layout Plain Layout


\backslash
end{minipage}
\end_layout

\begin_layout Plain Layout


\backslash
end{verbatim}
\end_layout

\begin_layout Plain Layout


\backslash
end{minipage}
\end_layout

\begin_layout Plain Layout


\backslash
end{tabular}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
In addition to using TeX code, you can also create a separate file containing
 some complex LaTeX structure and then use 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Insert\SpecialChar \menuseparator
Child
\begin_inset space ~
\end_inset

Document
\end_layout

\end_inset

 to include your file (you should select the type 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Input
\end_layout

\end_inset

).
 We recommend that you only do this if you have a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.tex
\end_layout

\end_inset

 file which you 
\emph on
know
\emph default
 works already.
 Otherwise, you'll have a big job tracking down LaTeX errors.
\end_layout

\begin_layout Standard
There are a few last points to emphasize:
\end_layout

\begin_layout Itemize
LyX 
\emph on
does not
\emph default
 check if your LaTeX code is correct.
\end_layout

\begin_layout Itemize
Beware reinventing the wheel.
\end_layout

\begin_layout Standard
On that last point, LyX does have quite a few features tucked into it, and
 more are coming.
 Be sure to check the manuals to make sure that LyX doesn't have such-and-such
 feature before you decide you have to do it by hand.
 Moreover, there are numerous LaTeX packages out there to do all sorts of
 things, from labels to envelopes to fancy multipage tables.
 Check out 
\begin_inset CommandInset href
LatexCommand href
name "CTAN"
target "http://www.ctan.org/"

\end_inset

 for details.
\end_layout

\begin_layout Standard
If you do need to do some wild and fancy things within your document, be
 sure to check out a good LaTeX book for assistance.
 There are a number of them listed in the bibliography of the 
\emph on
User's Guide
\emph default
.
\end_layout

\begin_layout Section
LyX and the LaTeX Preamble
\end_layout

\begin_layout Subsection
About the LaTeX Preamble
\end_layout

\begin_layout Standard
If you already know LaTeX, there is no need to explain here what the preamble
 is good for.
 If you don't, the following will give you some ideas—we recommend again
 that you consult a LaTeX book for further information.
 In any case, you should read the points below, because they explain what
 you can do and what you don't need to do in the LaTeX preamble of a LyX
 document.
\end_layout

\begin_layout Standard
The LaTeX preamble comes at the very beginning of a document, 
\emph on
before
\emph default
 the text.
 It serves to:
\end_layout

\begin_layout Itemize
Declare the document class.
 
\begin_inset Newline newline
\end_inset

LyX already does this for you.
 If you're a seasoned LaTeX-nician, and you have a custom document class
 you want to use, check out the 
\emph on
Customization Manual
\emph default
 for information on how to make LyX interface to it.
\end_layout

\begin_layout Itemize
Declare the usage of packages.
 
\begin_inset Newline newline
\end_inset

LaTeX packages provide special commands, which are only available within
 a document when the package has been declared in the preamble.
 For example, the package 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
indentfirst
\end_layout

\end_inset

 forces all paragraphs to be indented.
 There are other packages for labels, envelopes, margins, etc.
 
\end_layout

\begin_layout Itemize
Set counters, variables, lengths and widths.
 
\begin_inset Newline newline
\end_inset

There are several LaTeX counters and variables which 
\emph on
must
\emph default
 be set globally from within the preamble in order to have the desired effect.
 (There are variables which you can set and reset inside the document, too.)
 Margins are a good example of something which must be set in the preamble.
 Another example is the label format for lists.
 You can actually set these just about anywhere, but it's best to do it
 just once, inside the preamble.
\end_layout

\begin_layout Itemize
Declare user defined commands (with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
newcommand
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
renewcommand
\end_layout

\end_inset

).
\begin_inset Newline newline
\end_inset

These are abbreviations for LaTeX commands which appear very often inside
 a document.
 Although the preamble is a good place to declare such commands, they 
\emph on
can
\emph default
 be declared anywhere (before they are used for the first time, of course).
 This can be useful if there is a lot of raw LaTeX code in your document,
 which normally should not be the case.
\end_layout

\begin_layout Standard
LyX adds its own set of definitions to the preamble of the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.tex
\end_layout

\end_inset

 file it produces.
 This makes LaTeX files generated by LyX portable.
\end_layout

\begin_layout Subsection
Changing the Preamble
\end_layout

\begin_layout Standard
The commands which LyX adds to the preamble of a LaTeX file are fixed; you
 can't change them without patching LyX itself.
 You can, however, add your own stuff to the preamble by selecting 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
LaTeX
\begin_inset space ~
\end_inset

Preamble
\end_layout

\end_inset

 in the 
\begin_inset Flex MenuItem
status collapsed

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

\end_inset

 dialog.
 LyX adds anything in the 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Preamble
\end_layout

\end_inset

 dialog to its own built-in preamble.
 Before adding your own declarations in the preamble, you should make sure
 that LyX doesn't already support what you want to do.
 (Remember what we said about reinventing the wheel?) Also, 
\emph on
make sure your preamble code is correct
\emph default
.
 LyX doesn't check it for you.
 If there is an error, you're likely to get an error like 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Missing 
\backslash
begin{document}
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 If you see this error, check your preamble.
\end_layout

\begin_layout Subsection
Examples
\end_layout

\begin_layout Standard
Here are some examples of what you can add to a preamble, and what they
 do.
\end_layout

\begin_layout Subsubsection
Example #1: Offsets
\end_layout

\begin_layout Standard
There are two variables under LaTeX that control page position: 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
hoffset
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
voffset
\end_layout

\end_inset

.
 Their names should be self-explanatory.
 These variables are useful if you think for a moment about computer labels.
 Sometimes, the size of a print medium and the area of the medium that you
 can actually print on aren't the same.
 This is where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
hoffset
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
voffset
\end_layout

\end_inset

 come in.
\end_layout

\begin_layout Standard
The default values for 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
hoffset
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
voffset
\end_layout

\end_inset

 are both 0
\begin_inset space \thinspace{}
\end_inset

points, i.
\begin_inset space \thinspace{}
\end_inset

e.
\begin_inset space \space{}
\end_inset

the page isn't shifted.
 Unfortunately, some DVI drivers always seem to shift the page.
 We have no idea why, or why the sysadmin hasn't fixed such behavior.
 If you're using LyX on a system that you don't personally maintain, and
 your sysadmin is a doofus, 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
hoffset
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
voffset
\end_layout

\end_inset

 can save the day.
 Suppose your left and top margins are always 0.5
\begin_inset space \thinspace{}
\end_inset

inches too big.
 You can add this to the preamble:
\end_layout

\begin_layout LyX-Code

\backslash
setlength{
\backslash
hoffset}{-0.5 in}
\end_layout

\begin_layout LyX-Code

\backslash
setlength{
\backslash
voffset}{-0.5 in}
\end_layout

\begin_layout Standard
and your margins should now be correct.
\end_layout

\begin_layout Subsubsection
Example #2: Labels
\end_layout

\begin_layout Standard
Speaking of labels, suppose you wanted to print out a bunch of address labels.
 There's a rather nice package, available at your nearest CTAN archive,
 for printing sheets of labels: 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
labels.sty
\end_layout

\end_inset

.
 Now, your system may not have this package installed by default.
 We leave that up to you to check.
 You'll also want to read the documentation for it; we're not going to do
 that for you.
 Since this is an example, however, we'll give you an example of how you
 use this package.
\end_layout

\begin_layout Standard
First, make sure you're using the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article
\end_layout

\end_inset

 document class.
 Next, you need to put the following in your preamble:
\end_layout

\begin_layout LyX-Code

\backslash
usepackage{labels}
\end_layout

\begin_layout LyX-Code

\backslash
LabelCols=3
\end_layout

\begin_layout LyX-Code

\backslash
LabelRows=7
\end_layout

\begin_layout LyX-Code

\backslash
LeftBorder=8mm
\end_layout

\begin_layout LyX-Code

\backslash
RightBorder=8mm
\end_layout

\begin_layout LyX-Code

\backslash
TopBorder=9mm
\end_layout

\begin_layout LyX-Code

\backslash
BottomBorder=2mm
\end_layout

\begin_layout Standard
This sets things up for Avery label sheets, stock #5360.
 You're now ready to print labels, but you'll need to insert LaTeX code,
 placing the commands 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
begin{labels}
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
end{labels}
\end_layout

\end_inset

 around each label text.
 This and other special features of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
labels.sty
\end_layout

\end_inset

 are explained in its documentation.
\end_layout

\begin_layout Standard
Someday, someone may write a LyX layout file to support this package directly.
 Maybe that someone is you.
\end_layout

\begin_layout Subsubsection
Example #3: Paragraph Indentation
\end_layout

\begin_layout Standard
Americans are trained to indent the first line of 
\emph on
every
\emph default
 paragraph.
 As with all of their other weird quirks, most Americans will whine and
 moan until they can have their way and indent the first line of all paragraphs.
 (Yes, we're joking.
 (We are?) 
\emph on
Yeah
\emph default
, we are.)
\end_layout

\begin_layout Standard
Of course, this behavior isn't standard typography.
 In books, you typically only indent the first line of a paragraph 
\emph on
if
\emph default
 it follows another one.
 The idea behind indenting the first line of a paragraph is to distinguish
 neighboring paragraphs from one another.
 If there is no previous paragraph—for example, if it follows a figure or
 is the first paragraph in a section—then there is no need for indentation.
 
\end_layout

\begin_layout Standard
If you're a typical American (we're still joking!), though, you don't care
 about such esoteric things; you want your indentation! Add this to the
 preamble:
\end_layout

\begin_layout LyX-Code

\backslash
usepackage{indentfirst}
\end_layout

\begin_layout Standard
If your TeX distribution isn't braindead, you'll have this package, and
 all of your paragraphs will get the indentation the Founding Fathers intended
 they should have.
\end_layout

\begin_layout Subsubsection
Example #4: This Document
\end_layout

\begin_layout Standard
You can also check out the preamble of this document to get an idea of some
 of the advanced things you can do.
\end_layout

\begin_layout Section
LyX and LaTeX Errors
\end_layout

\begin_layout Standard
When LyX calls LaTeX, it tells LaTeX to blithely ignore any errors and keep
 going.
 It then uses the logfile from the LaTeX run to do a post-mortem.
 After analyzing the logfile,LyX displays a dialog listing the errors.
 Clicking on any one of them will take you to the position in your LyX file
 where the error occurred.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Well, usually.
 Analyzing the logfile is a tough job, and LyX doesn't always go to the
 right line.
 There are also cases where LaTeX reports the error on one line, but the
 actual error is earlier.
 This is not unlike forgetting a closing brace in a program: You'll get
 an error, but only later.
\end_layout

\end_inset


\end_layout

\begin_layout Standard
Some folks also like to look at the log file directly: It is available from
 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Document
\bar under
\SpecialChar \menuseparator

\bar default
Latex
\begin_inset space ~
\end_inset

Log
\end_layout

\end_inset

.
 There are some fairly common error messages and warnings.
 We'll cover those here.
 You should look at a good LaTeX book for a complete listing.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LaTeX Warning
\end_layout

\end_inset


\begin_inset Newline newline
\end_inset

Anything beginning with these words is a warning message for the purpose
 of 
\begin_inset Quotes eld
\end_inset

debugging
\begin_inset Quotes erd
\end_inset

 the LaTeX code itself.
 You'll get messages like this if you added or changed cross-references
 or bibliography entries, in which case, LaTeX is trying to tell you that
 you need to make another run.
 You can by-and-large ignore these.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LaTeX Font Warning
\end_layout

\end_inset


\begin_inset Newline newline
\end_inset

Another warning message, this time about fonts which LaTeX couldn't find.
 The rest of the message will often say something about a replacement font
 that LaTeX used.
 You can safely ignore these, too.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Overfull 
\backslash
hbox
\end_layout

\end_inset


\begin_inset Newline newline
\end_inset

LaTeX absolutely 
\emph on
loves
\emph default
 to spew these out.
 They are warnings about lines that were too long and run past the right
 margin.
 Almost always, this is unnoticeable in the final output.
 (It can be just a point or two.) Or, only one or two characters extend past
 the margin.
 LaTeX seems to generate at least one of these messages for just about any
 document you write.
\begin_inset Newline newline
\end_inset

You can ignore these messages.
 Your eyes will tell you if there's a problem with something that's too
 wide; just look at the output.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
You can also enable the `draft' option in 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Document
\bar under
\SpecialChar \menuseparator

\bar default
Settings
\end_layout

\end_inset

, and then LaTeX will draw a black box in the margin of lines that are overfull.
\end_layout

\end_inset


\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Underfull 
\backslash
hbox
\end_layout

\end_inset


\begin_inset Newline newline
\end_inset

Not quite as common as its cousin.
 LaTeX seems to like to print lines that are a bit too wide as opposed to
 ones that are a bit too narrow.
 We have no idea why.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Overfull 
\backslash
vbox
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Underfull 
\backslash
vbox
\end_layout

\end_inset


\begin_inset Newline newline
\end_inset

Warnings about troubles breaking the page.
 Once again, just look at the output.
 Your eyes will tell you where something has gone wrong.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
 LaTeX Error: File 
\begin_inset Quotes els
\end_inset

Xxxx
\begin_inset Quotes ers
\end_inset

 not found
\end_layout

\end_inset


\begin_inset Newline newline
\end_inset

The file 
\begin_inset Quotes eld
\end_inset

Xxxx
\begin_inset Quotes erd
\end_inset

 isn't installed on this system.
 This usually appears because some package your document needs isn't installed.
 If you didn't touch the preamble or didn't use the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
usepackage{}
\end_layout

\end_inset

 command, then one of the packages LyX tried to load is missing.
 Use 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Help\SpecialChar \menuseparator
LaTeX Configuration
\end_layout

\end_inset

 to get a list of packages that LyX knows about.
 This file is updated whenever you reconfigure LyX (using 
\begin_inset Flex MenuItem
status collapsed

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

\end_inset

) and tells you which packages have been detected and what they do.
\begin_inset Newline newline
\end_inset

If you did use the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
usepackage{}
\end_layout

\end_inset

 command and the package in question isn't installed, then you'll need to
 install it yourself.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LaTeX Error: Unknown option
\end_layout

\end_inset


\begin_inset Newline newline
\end_inset

Error messages beginning with this are trying to tell you that you specified
 a bad or undefined option to a package.
 Check the package's documentation.
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Undefined control sequence
\end_layout

\end_inset


\begin_inset Newline newline
\end_inset

If you've inserted LaTeX code into your document, but made a typo, you'll
 get one of these.
 You may have forgotten to load a package.
 In any case, this error message usually means that you used an undefined
 command.
 
\end_layout

\begin_layout Standard
There are other error and warning messages.
 Some are self-explanatory.
 These are usually LaTeX messages.
 Others are downright cryptic.
 These are usually TeX error messages, and we really have 
\emph on
no clue
\emph default
 what they mean or how to decipher them.
 No-one does.
\end_layout

\begin_layout Standard
There's a general sequence you should follow if you get error messages:
\end_layout

\begin_layout Enumerate
Look at the LaTeX code you inserted for typos.
\end_layout

\begin_layout Enumerate
If there are no typos, check that you used the command(s) correctly.
\end_layout

\begin_layout Enumerate
If you get a bunch of error boxes piled up at the very top of the document—and
 especially if you see a 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Missing 
\backslash
begin{document}
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 error—it means that there are errors in the preamble.
 Start debugging your preamble.
\end_layout

\begin_layout Enumerate
If you didn't add anything to the preamble and didn't add any LaTeX code
 to the document, the first suspect is your LaTeX distribution itself.
 Check for missing packages and install them.
\end_layout

\begin_layout Enumerate
Okay, so there are no missing packages.
 Did you use any of the fine-tuning options in LyX? Specifically, did you
 
\emph on
misuse
\emph default
 any of them, like trying to manually insert lots of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Protected
\begin_inset space ~
\end_inset

Blanks
\end_layout

\end_inset

, 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Linebreaks
\end_layout

\end_inset

, or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Pagebreaks
\end_layout

\end_inset

? Did you try to kludge something together with these instead of using the
 appropriate paragraph environment?
\end_layout

\begin_layout Enumerate
All right, you didn't use any of the fine-tuning options, you played by
 the rules.
 Did you try to pull a fancy maneuver? Did you do something funky inside
 a table or an equation, like inserting a graphic into a table cell?
\end_layout

\begin_layout Enumerate
Do you have long sections of text where LaTeX cannot find a place to break
 a line? By default, LaTeX is rather strict about how much extra inter-word
 spacing it will add in order to break a line.
 Preferably, you should rework the paragraph to avoid the problem.
 If this isn't an option, you can wrap your text in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
sloppypar
\end_layout

\end_inset

 to make LaTeX's line breaking more, well, sloppy.
\end_layout

\begin_layout Enumerate
Did you go overboard with the nesting? LyX (currently) doesn't check to
 make sure you're in the limits for nesting environments.
 If you nested a bunch of environments to the 
\begin_inset Formula $17^{\mathrm{th}}$
\end_inset

 level, that's the problem.
 (The limit in LaTeX is five.)
\end_layout

\begin_layout Enumerate
Okay, you didn't get any error messages, but your output looks awful.
 If you have a table or figure that's too wide or long for the page, you
 need to:
\end_layout

\begin_deeper
\begin_layout Enumerate
rescale the figure so it fits.
\end_layout

\begin_layout Enumerate
trim down the table so it fits.
\end_layout

\end_deeper
\begin_layout Enumerate
If something else is wrong with the output, and you didn't try to pull anything
 fancy or kludge the fine-tuning options, we're not sure what's wrong.
\end_layout

\begin_layout Standard
If all this doesn't help—well, then 
\emph on
perhaps
\emph default
 you might have found a bug in LyX\SpecialChar \ldots{}
.
\end_layout

\begin_layout Chapter
Supplemental Tools
\end_layout

\begin_layout Section
Customizing Bibliographies with BibTeX
\end_layout

\begin_layout Standard
The most basic information about how to use BibTeX with LyX is contained
 in the section 
\emph on
Bibliography databases (BibTeX)
\emph default
 of the 
\emph on
User's Guide
\emph default
.
 The following subsections explain special bibliography features supported
 by LyX.
\end_layout

\begin_layout Subsection
Alternative Citation Styles
\end_layout

\begin_layout Standard
Standard BibTeX uses numbers (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\begin_inset Quotes eld
\end_inset

[12]
\begin_inset Quotes erd
\end_inset

) to refer to a cited work.
 However, in many scientific disciplines, other citation styles are in use.
 The most common one is the author-year style (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\begin_inset Quotes eld
\end_inset

Knuth 1984a
\begin_inset Quotes erd
\end_inset

).
 LyX supports two packages that provide this style, 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
natbib
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
jurabib
\end_layout

\end_inset

.
 Both packages have their pros and cons, which cannot be listed in detail.
 If you only want to have simple author-year (or author-numerical) style,
 or if you want to use one of the countless style files for 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
natbib
\end_layout

\end_inset

, than the established 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
natbib
\end_layout

\end_inset

 package is probably your choice.
 If you need special features like short title references, ibidem etc., you
 might consider the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
jurabib
\end_layout

\end_inset

 package.
\end_layout

\begin_layout Standard
The handling of both packages in LyX is basically the same.
 Go to 
\begin_inset Flex MenuItem
status collapsed

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

\end_inset

 and select under 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Bibliography
\end_layout

\end_inset

 the option 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Natbib
\end_layout

\end_inset

 or 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Jurabib
\end_layout

\end_inset

.
 With both packages, you will get some extra features in the citation dialog
 and you can select the style of the reference (
\begin_inset Quotes eld
\end_inset

Knuth 1984
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Knuth (1984)
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Knuth, 1984
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

1984
\begin_inset Quotes erd
\end_inset

 etc.).
 Note that both packages need specifically designed style files.
 They both ship their own, but there are lots of additional style files,
 and there is even an interactive style file builder
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
See 
\begin_inset Flex URL
status open

\begin_layout Plain Layout

ftp://ctan.tug.org/tex-archive/macros/latex/contrib/custom-bib/
\end_layout

\end_inset


\end_layout

\end_inset

 for 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
natbib
\end_layout

\end_inset

.
\end_layout

\begin_layout Subsection
Sectioned Bibliographies
\end_layout

\begin_layout Standard
Sometimes you might need to divide your bibliography into several sections.
 If you are for instance a historian, the possibility to separate sources
 and scientific works is most likely a 
\begin_inset Quotes eld
\end_inset

must have
\begin_inset Quotes erd
\end_inset

.
 Unfortunately, BibTeX itself does not allow you to do this.
 But with the help of some LaTeX packages, BibTeX can be extended to fit
 your needs.
\end_layout

\begin_layout Standard
LyX provides native support for one of these packages, 
\family typewriter
bibtopic
\family default
.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Available from 
\begin_inset Flex URL
status open

\begin_layout Plain Layout

ftp://ctan.tug.org/tex-archive/macros/latex/contrib/bibtopic/
\end_layout

\end_inset


\end_layout

\end_inset

 The advantage of this package (compared to other packages like 
\family typewriter
multibib
\family default
) is that you don't need to define new citation commands.
 Instead, you need to prepare different bibliographic databases which include
 the entries for the different sections of the bibliography.
 For example: If you want to divide your bibliography into the sections
 
\begin_inset Quotes eld
\end_inset

Sources
\begin_inset Quotes erd
\end_inset

 and 
\begin_inset Quotes eld
\end_inset

Scientific works
\begin_inset Quotes erd
\end_inset

, you first need to create two bibliographic databases, e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
sources.bib
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
scientific.bib
\end_layout

\end_inset

.
 
\end_layout

\begin_layout Standard
Go to 
\begin_inset Flex MenuItem
status collapsed

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

\end_inset

 and check under 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Bibliography
\end_layout

\end_inset

 the option 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Sectioned bibliography
\end_layout

\end_inset

.
 Now you can insert multiple BibTeX bibliographies, one for each section
 of your bibliography.
 Returning to our example: Insert the BibTeX bibliography 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
sources.bib
\end_layout

\end_inset

 and a second one for the database 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
scientific.bib
\end_layout

\end_inset

.
 You are free to use the same or different styles for each section.
 Additionally, you can chose if the bibliography section should contain
 
\begin_inset Quotes eld
\end_inset

all cited references
\begin_inset Quotes erd
\end_inset

 of the specified database(s) (which is the default), 
\begin_inset Quotes eld
\end_inset

all uncited references
\begin_inset Quotes erd
\end_inset

 or even 
\begin_inset Quotes eld
\end_inset

all references
\begin_inset Quotes erd
\end_inset

.
 This might be useful if you would like to separate your bibliography into
 three sections: 
\begin_inset Quotes eld
\end_inset

Cited sources
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Uncited sources
\begin_inset Quotes erd
\end_inset

, and 
\begin_inset Quotes eld
\end_inset

Scientific works
\begin_inset Quotes erd
\end_inset

.
 The titles for the sections can be added as ordinary sections or subsections.
 Since 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
bibtopic
\end_layout

\end_inset

 removes the bibliography title, you have manually re-add that, too (as
 a chapter* or section*, for instance).
\end_layout

\begin_layout Subsection
Multiple Bibliographies
\end_layout

\begin_layout Standard
Multiple bibliographies, e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

a bibliography for each section or chapter of the document, are not supported
 by BibTeX itself.
 But the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
bibtopic
\end_layout

\end_inset

 package, which is used for the creation of sectioned bibliographies in
 LyX (see the previous section), provides an easy way to solve this task,
 if you are willing to use some 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
TeX Code
\end_layout

\end_inset

 (see section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Inserting-TeX-Code"

\end_inset

).
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
An alternative approach is to use the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
chapterbib
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
bibunits
\end_layout

\end_inset

 package, respectively.
\end_layout

\end_inset


\end_layout

\begin_layout Standard
First go to 
\begin_inset Flex MenuItem
status collapsed

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

\end_inset

 and under 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Bibliography
\end_layout

\end_inset

 check 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Sectioned bibliography
\end_layout

\end_inset

.
 In the document, you have to enclose the sections, which shall contain
 their own bibliography (including the BibTeX bibliography itself), between
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
begin{btUnit}
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
end{btUnit}
\end_layout

\end_inset

 (those commands have to be inserted as TeX code).
 The bibliography will contain all references which have been cited in the
 current 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
btUnit
\end_layout

\end_inset

.
 
\series bold
Note:
\series default
 If you are using this approach, then every citation reference has to be
 inside some 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
btUnit
\end_layout

\end_inset

.
 Also, the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
btUnit
\end_layout

\end_inset

s cannot be nested.
\end_layout

\begin_layout Section
Multipart Documents
\end_layout

\begin_layout Subsection
General Operation
\end_layout

\begin_layout Standard
When you are working on a large file with many sections, it is often convenient
 to break up the document into several files, or perhaps you have something
 where a table may change from time to time, but the preceding text does
 not.
 In these cases, you should seriously consider using multipart documents.
 For example, scientific papers often have five major sections: the introduction
, observations, results, discussion, and conclusion.
 Each of these could be its own separate LyX file, with one 
\begin_inset Quotes eld
\end_inset

master
\begin_inset Quotes erd
\end_inset

 file which contains the title, authors, abstract, references, etc., plus
 the five included files.
 It is important to note that each of these files is a full LyX file which
 can be formatted and printed on its own, as well as included in a master
 file.
 Each of these files must have the same document class, however—don't attempt
 to mix book classes with article classes.
 You may also include LaTeX files; however, these files must not have their
 own preamble (i.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

everything up to and including the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
begin{document}
\end_layout

\end_inset

 line as well as the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
end{document}
\end_layout

\end_inset

 line must be deleted) or else errors will be generated when you try to
 make a DVI file.
\end_layout

\begin_layout Standard
LyX allows you to include files quite easily with 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Insert\SpecialChar \menuseparator
ChiId
\begin_inset space ~
\end_inset

Document
\end_layout

\end_inset

.
 When you click on this selection a small box is inserted into the file
 at the current cursor location.
 Clicking on the box raises a dialog which allows you to select the file
 to be included, and the method of its inclusion.
 
\end_layout

\begin_layout Standard
The file selection box should by now be obvious.
 The three inclusion methods are 
\begin_inset Quotes eld
\end_inset

include
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

input
\begin_inset Quotes erd
\end_inset

, and 
\begin_inset Quotes eld
\end_inset

verbatim
\begin_inset Quotes erd
\end_inset

.
 The difference between 
\begin_inset Quotes eld
\end_inset

include
\begin_inset Quotes erd
\end_inset

 and 
\begin_inset Quotes eld
\end_inset

input
\begin_inset Quotes erd
\end_inset

 is really only meaningful to LaTeXperts, but the practical difference is
 that files which are 
\begin_inset Quotes eld
\end_inset

included
\begin_inset Quotes erd
\end_inset

 are typeset beginning on a new page, while files which are 
\begin_inset Quotes eld
\end_inset

inputted
\begin_inset Quotes erd
\end_inset

 are typeset starting on the current page.
\end_layout

\begin_layout Standard
Generally, the master file is converted into a full LaTeX file before typesettin
g, while the included files are converted to LaTeX files which do not have
 all the preamble information.
\end_layout

\begin_layout Standard
A 
\begin_inset Quotes eld
\end_inset

verbatim
\begin_inset Quotes erd
\end_inset

 included file allows you to include a file typeset exactly as it appears
 in the file, i.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
verbatim
\end_layout

\end_inset

 mode, with the characters set in a fixed-width typewriter font.
 Normally, spaces in this file are invisible, though two consecutive spaces
 are conserved, unlike LyX's normal treatment of spaces.
 However, setting the 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Mark
\begin_inset space ~
\end_inset

spaces
\begin_inset space ~
\end_inset

in
\begin_inset space ~
\end_inset

output
\end_layout

\end_inset

 checkbox typesets a mark to unambiguously define the presence of a space.
 
\end_layout

\begin_layout Subsection
Cross-References Between Files
\end_layout

\begin_layout Standard
\begin_inset Box Shadowbox
position "t"
hor_pos "c"
has_inner_box 1
inner_pos "t"
use_parbox 0
use_makebox 0
width "100col%"
special "none"
height "1in"
height_special "totalheight"
status open

\begin_layout Plain Layout
This section is somewhat out of date.
 Need to describe default master documents and how children are opened when
 the master is.
 [[FIXME]]
\end_layout

\end_inset


\end_layout

\begin_layout Standard
It is possible to set up cross-references between the different files.
 First, open all the files in question: let's call them A and B in a two
 file example, where B is included in A.
 Let's say you insert a label in A, then want to reference it in B.
 Open the cross-reference dialog in whilst in document B, and you can select
 the 
\begin_inset Quotes eld
\end_inset

buffer
\begin_inset Quotes erd
\end_inset

 to use.
\end_layout

\begin_layout Subsection
Bibliography Lists in all Subdocuments
\end_layout

\begin_layout Standard
\begin_inset Box Frameless
position "t"
hor_pos "c"
has_inner_box 1
inner_pos "t"
use_parbox 0
use_makebox 0
width "100col%"
special "none"
height "1in"
height_special "totalheight"
status open

\begin_layout Plain Layout
This section also needs updating.
 There is now material about this on the wiki, and it could be copied here.
\end_layout

\end_inset


\end_layout

\begin_layout Standard
Copy the bibliography list with all entries to all subdocuments and transform
 them to a comment.
 This way LyX will find the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.bib
\end_layout

\end_inset

-files and you can easily insert references without making the bibliography
 list visible.
\end_layout

\begin_layout Standard
As the bibliography list is in a comment, LaTeX won't use use it and the
 references will look like this: [?], instead of like this: [1].
 One solution is to use the LaTeX-package 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
comment
\end_layout

\end_inset

 that will only include comments by processing the files separately.
 To do this, add in the LaTeX preamble of every subdocument the following:
\end_layout

\begin_layout LyX-Code

\backslash
usepackage{comment}
\end_layout

\begin_layout LyX-Code

\backslash
includecomment{comment}
\end_layout

\begin_layout Standard
See also 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://wiki.lyx.org/FAQ/Unsorted#toc31
\end_layout

\end_inset

.
\end_layout

\begin_layout Section
LyX Archives
\end_layout

\begin_layout Standard
Users sometimes need to be able to 
\begin_inset Quotes eld
\end_inset

bundle
\begin_inset Quotes erd
\end_inset

 a LyX file together with all the images (and other files) on which it depends,
 either for sending to a publisher or for sharing with a co-author.
 LyX 2.0 includes a Python script (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxpak.py
\end_layout

\end_inset

) that automates this process.
 To use it, you must have either the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
zipfile
\end_layout

\end_inset

 or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
tarfile
\end_layout

\end_inset

 python modules installed on your system.
 By default, the script prefers the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
gzip
\end_layout

\end_inset

-compressed 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
tar
\end_layout

\end_inset

 format on Unix-like systems and the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
zip
\end_layout

\end_inset

 format on Windows.
\end_layout

\begin_layout Standard
LyX's configuration process will set the script up to export a `LyX Archive',
 and this format will then be available under 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
File\SpecialChar \menuseparator
Export
\end_layout

\end_inset

.
\end_layout

\begin_layout Standard
Independently of the platform, the generation of a particular archive format
 can be forced by adding either the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-t
\end_layout

\end_inset

 (for the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
tar
\end_layout

\end_inset

 format) or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-z
\end_layout

\end_inset

 (for the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
zip
\end_layout

\end_inset

 format) switch to the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
LyX\SpecialChar \menuseparator
LyX Archive
\end_layout

\end_inset

 converter in 
\begin_inset Flex Code
status collapsed

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

\end_inset

.
 (Make sure you add the switch after the script name, not before it.)
\end_layout

\begin_layout Section
Fancy Headers and Footers
\end_layout

\begin_layout Standard
The default page layout is rather plain; for an 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article
\end_layout

\end_inset

 document class, all you get is a centered page number at the bottom of
 the page.
 This document uses KOMA-script's book class, so it appears to be a bit
 fancier.
 But to really put on a show, you need to set the document page style to
 
\begin_inset Quotes eld
\end_inset

fancy
\begin_inset Quotes erd
\end_inset

, as mentioned in the 
\emph on
User Guide
\emph default
.
 This section describes the LaTeX code you need to insert in your LaTeX
 preamble in order to get the desired effects.
\end_layout

\begin_layout Standard
For more information on fancy headers, see the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
fancyhdr
\end_layout

\end_inset

 package documentation.
 (
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://www.ctan.org/tex-archive/help/Catalogue/entries/fancyhdr.html
\end_layout

\end_inset

)
\end_layout

\begin_layout Standard
The page header is divided into three fields, not surprisingly labeled 
\begin_inset Quotes eld
\end_inset

left
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

center
\begin_inset Quotes erd
\end_inset

, and 
\begin_inset Quotes eld
\end_inset

right
\begin_inset Quotes erd
\end_inset

.
 The footer is also divided into these three fields.
 The LaTeX commands to set these fields in the simplest manner are 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
lhead
\end_layout

\end_inset

, 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
chead
\end_layout

\end_inset

, 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
rhead
\end_layout

\end_inset

, 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
lfoot
\end_layout

\end_inset

, etc.
 Suppose you wish to put your name in the upper left hand corner of each
 page.
 Simply insert the following command in the preamble: 
\end_layout

\begin_layout Standard

\family typewriter

\backslash
lhead{John Q.
 DocWriter}
\end_layout

\begin_layout Standard
You will now see your name in the upper left.
 If a field has a default entry that you would like to get rid of (often
 the page number appears in the central footer, simply include a command
 with a blank argument, e.
\begin_inset space \thinspace{}
\end_inset

g.:
\end_layout

\begin_layout Standard

\family typewriter

\backslash
cfoot{}
\end_layout

\begin_layout Standard
Let's get really fancy: lets put the section number with the word 
\begin_inset Quotes eld
\end_inset

Section
\begin_inset Quotes erd
\end_inset

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

g.
\begin_inset space \space{}
\end_inset

Section 3) in the upper left, the page number (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

Page 4) in the upper right, your name in the lower left, and the date in
 the lower right.
 The following commands should now appear in the preamble:
\end_layout

\begin_layout Standard

\family typewriter

\backslash
lhead{Section 
\backslash
thesection}
\end_layout

\begin_layout Standard

\family typewriter

\backslash
chead{}
\end_layout

\begin_layout Standard

\family typewriter

\backslash
rhead{Page 
\backslash
thepage}
\end_layout

\begin_layout Standard

\family typewriter

\backslash
lfoot{John Q.
 DocWriter}
\end_layout

\begin_layout Standard

\family typewriter

\backslash
cfoot{}
\end_layout

\begin_layout Standard

\family typewriter

\backslash
rfoot{
\backslash
today}
\end_layout

\begin_layout Standard
The commands 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
thesection
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
thepage
\end_layout

\end_inset

 access LaTeX's section and page counters, and so print out the current
 section and page numbers.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
today
\end_layout

\end_inset

 simply prints out today's date.
\end_layout

\begin_layout Standard
The thicknesses of the horizontal rules drawn beneath the header and above
 the footer can also be modified.
 If you don't want one of the rules, set its thickness to 0.
 The header rule has a default thickness of 0.4pt, the footer rule is 0pt.
 Use commands
\family typewriter
 
\family default
like 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
renewcommand{
\backslash
headrulewidth}{0.4pt}
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
renewcommand{
\backslash
footrulewidth}{0.4pt}
\end_layout

\end_inset

 to set the thicknesses.
\end_layout

\begin_layout Standard
You can switch the header/footer settings on and off for individual pages
 using commands like 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
thispagestyle{empty}
\end_layout

\end_inset

, 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
thispagestyle{plain}
\end_layout

\end_inset

, and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
thispagestyle{fancy}
\end_layout

\end_inset

.
 Simply insert them in the text on the page you want changed and mark them
 as TeX code.
 In fact, title pages are marked as plain by default, while following pages
 are marked fancy when using the global fancy setting.
\end_layout

\begin_layout Standard
As a final example, it is possible to include an image in the header or
 footer.
 Suppose you want to put a company logo in the upper lefthand corner.
 You might try something like
\end_layout

\begin_layout Standard

\family typewriter

\backslash
lhead{
\backslash
resizebox{1in}{!}{
\backslash
includegraphics{logo.eps}}}
\end_layout

\begin_layout Standard
\noindent
(you may need to preface this with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
\noindent

\backslash
usepackage{graphics}
\end_layout

\end_inset

 if you don't include graphics elsewhere in your document).
\end_layout

\begin_layout Section
Itemize Bullet Selection
\begin_inset CommandInset label
LatexCommand label
name "sec:bullet"

\end_inset


\end_layout

\begin_layout Standard
by
\noun on
 Allan Rae
\end_layout

\begin_layout Subsection
Introduction
\end_layout

\begin_layout Standard
LyX provides 216 bullet shapes that can be accessed from a simple dialog.
 Using this dialog you can easily specify what bullet shape to use at each
 level of an itemized list.
 These settings are document-wide so you won't be able to specify different
 sets of bullets for different paragraphs.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Well, actually you can but you'll have to do it by hand.
\end_layout

\end_inset


\end_layout

\begin_layout Subsection
How it looks
\end_layout

\begin_layout Standard
Open the dialog by selecting the 
\begin_inset Flex MenuItem
status collapsed

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

\end_inset

 menu item and then select the 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Bullets
\end_layout

\end_inset

 tab.
\end_layout

\begin_layout Standard
The dialog provides you with a table of bullet shapes.
 A column of buttons on the left of the table provides access to the six
 different panels of bullet shapes.
 The row of buttons across the top is used to select which bullet depth
 you are changing.
 A text entry under the table shows the currently selected bullet shape's
 LaTeX equivalent and this can be edited if desired.
 If you do modify the text you will also need to specify any needed packages
 in the LaTeX preamble.
\end_layout

\begin_layout Standard
The six panels are divided up by the packages they require.
 The following table shows the mappings from button name to LaTeX packages.
\end_layout

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

\begin_layout Plain Layout

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

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

\begin_layout Plain Layout

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

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

\begin_layout Plain Layout

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

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

\begin_layout Plain Layout

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

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

\begin_layout Plain Layout

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

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

\begin_layout Plain Layout

\family typewriter
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
amssymb.sty
\end_layout

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

\begin_layout Plain Layout

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

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

\begin_layout Plain Layout

\family typewriter
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
pifont.sty
\end_layout

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

\begin_layout Plain Layout

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

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

\begin_layout Plain Layout

\family typewriter
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
pifont.sty
\end_layout

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

\begin_layout Plain Layout

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

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

\begin_layout Plain Layout

\family typewriter
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
pifont.sty
\end_layout

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

\begin_layout Plain Layout

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

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

\begin_layout Plain Layout

\family typewriter
\series medium
\shape up
\size normal
\emph off
\bar no
\noun off
\color none
pifont.sty
\end_layout

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

\end_inset


\end_layout

\begin_layout Standard
LyX doesn't stop you using bullets from packages you don't have.
 If you get errors from LaTeX when you try to view or print the file, then
 it is likely you are missing a package.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
LyX doesn't restrict your use since you may be editing locally and exporting
 elsewhere.
\end_layout

\end_inset


\end_layout

\begin_layout Subsection
How to use it
\end_layout

\begin_layout Standard
Select which bullet depth you want to change then select the bullet shape
 and size.
 Any changes will not be visible in LyX, but are visible when viewing the
 document.
\end_layout

\begin_layout Standard
You can reset a bullet shape to the default simply by clicking your right
 mouse button on the appropriate bullet depth button.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
If you 
\emph on
really
\emph default
 want to have multiple sets of paragraphs with different sets of bullets
 in each, then you're going to have to get your hands dirty with TeX code.
 The bullet selection dialog can help though because it provides you with
 the LaTeX code for a wide range of bullet shapes.
 To make your own custom paragraphs you have the following options:
\end_layout

\begin_layout Plain Layout
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
let
\backslash
savelabelitemi=
\backslash
labelitemi
\end_layout

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
renewcommand
\backslash
labelitemi[0]{
\backslash
small
\backslash
(
\backslash
sharp
\backslash
)}
\end_layout

\end_inset


\end_layout

\begin_layout Itemize
Use the LaTeX command 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
renewcommand{}{}
\end_layout

\end_inset

 to specify a new bullet shape for a given depth.
 You'll also need to save the current bullet shape so you can restore it
 again afterwards.
 In this itemized list the following LaTeX code was used to change the bullet
 used for the first depth.
\end_layout

\begin_deeper
\begin_layout LyX-Code

\backslash
let
\backslash
savelabelitemi=
\backslash
labelitemi 
\end_layout

\begin_layout LyX-Code

\backslash
renewcommand
\backslash
labelitemi[0]{
\backslash
small
\backslash
(
\backslash
sharp
\backslash
)}
\end_layout

\end_deeper
\begin_layout Itemize
Note that the itemize depth is specified in Roman numerals as part of the
 
\family typewriter

\backslash
labelitem
\family default
 command.
\end_layout

\begin_layout Itemize
\begin_inset ERT
status open

\begin_layout Plain Layout

[
\backslash
(
\backslash
star
\backslash
)]
\end_layout

\end_inset

 Specify each individual entry by starting each item with the bullet shape
 enclosed in square brackets and set as 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
TeX Code
\end_layout

\end_inset

.
 For example, this item was started with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
[
\backslash
(
\backslash
star
\backslash
)]
\end_layout

\end_inset

.
\end_layout

\begin_layout Plain Layout
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
renewcommand
\backslash
labelitemi[0]{
\backslash
savelabelitemi}
\end_layout

\end_inset


\end_layout

\begin_layout Plain Layout
You'll also need to revert the labelitem back to its previous setting for
 the global bullet shape settings to remain in effect.
 The way used here was:
\end_layout

\begin_layout LyX-Code

\backslash
renewcommand
\backslash
labelitemi[0]{
\backslash
savelabelitemi}
\end_layout

\end_inset


\end_layout

\begin_layout Chapter
LyX and the World Wide Web
\end_layout

\begin_layout Standard
LyX has long supported the export of documents to various web-friendly formats,
 such as HTML.
 Before verson 2.0, however, HTML export was always accomplished by the use
 of external converters.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
For details on the use of external converters with LyX, see the 
\emph on
Converters
\emph default
 section of the Customization manual.
\end_layout

\end_inset

 These fall into two large groups: there are converters that use LaTeX as
 an intermediate format, such as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
htlatex
\end_layout

\end_inset

, 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
html2latex
\end_layout

\end_inset

, and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
plastex
\end_layout

\end_inset

, relying upon LyX to produce the LaTeX; and there is a converter that works
 directly on LyX files, 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
eLyXer
\end_layout

\end_inset

.
 All of these have different advantages and disadvantages.
 
\end_layout

\begin_layout Standard
The LaTeX-based converters have the advantage that, in principle, they know
 everything about the exported document that LaTeX does.
 Such converters do not care, for example, if a certain block of code was
 produced by LyX or was Evil Red Text.
 These converters know about 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
aux
\end_layout

\end_inset

 files, counters, and references, and can often make use of the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
bbl
\end_layout

\end_inset

 files generated by BibTeX.
 On the other hand, LaTeX is a very hard language to parse---it is sometimes
 said that only TeX itself understands TeX---and LaTeX-based converters
 will often choke on what seem to be quite simple constructs; complex ones
 can throw them completely, and as of this writing, for example, the 
\emph on
Embedded Objects
\emph default
 manual will not export with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
htlatex
\end_layout

\end_inset

, though the others will.
 The other issue concerns how math is handled.
 These converters typically convert the formulae into little pictures that
 are then linked from the HTML document.
 Since these are actually generated by LaTeX, they are accurate.
 But they do not scale well, and just getting them to look as if they are
 actually meant to be in your document---so that the font sizes seem to
 be roughly the same---can be a challenge.
\end_layout

\begin_layout Standard
Alex Fernandez's 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
eLyXer
\end_layout

\end_inset

 (
\begin_inset CommandInset href
LatexCommand href
name "http://elyxer.nongnu.org/"
target "http://elyxer.nongnu.org/"

\end_inset

) solves some of these problems.
 In particular, the formulae it produces scale perfectly, since it renders
 math using a combination of HTML and CSS rather than converting the formulae
 to images.
 But even moderately complex formula are rendered less well than with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
htlatex
\end_layout

\end_inset

; this reflects the limitations of HTML.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
That said, 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
eLyXer
\end_layout

\end_inset

 can also use jsMath and MathJax for equations, but this setting is only
 available globally and requires one to have access to a server that runs
 the backend.
\end_layout

\end_inset

 More importantly (as of version 1.1.1, at least), 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
eLyXer
\end_layout

\end_inset

 has limited support for math macros and no support for user-defined paragraph
 or character styles.
 These limitations make 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
eLyXer
\end_layout

\end_inset

 unsuitable for many of the documents LyX users produce.
 In principle, of course, these problems could be solved, but the LyX developers
 have decided to follow a different path and have made LyX itself capable
 of writing XHTML, just as it is capable of writing LaTeX, DocBook, and
 plaintext.
\end_layout

\begin_layout Standard
As of this writing, XHTML output remains under development and should probably
 be regarded as 
\begin_inset Quotes eld
\end_inset

experimental
\begin_inset Quotes erd
\end_inset

.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
The file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
development/HTML.notes
\end_layout

\end_inset

, which can be found in the LyX source tree or 
\begin_inset CommandInset href
LatexCommand href
name "accessed online"
target "http://www.lyx.org/trac/browser/lyxgit/development/HTML/HTML.notes?rev=master"

\end_inset

, usually contains up-to-date information about the state of XHTML output.
 See also the list of XHTML bugs on 
\begin_inset CommandInset href
LatexCommand href
name "the bug tracker"
target "http://www.lyx.org/trac/query?status=reopened&status=assigned&status=new&max=0&component=xhtml+export&order=id&col=id&col=summary&col=reporter&col=keywords&keywords=%21%7Efixedintrunk&desc=1"

\end_inset

.
\end_layout

\end_inset

 Still, the developers have chosen this approach because it has several
 potential advantages over the other two.
\end_layout

\begin_layout Standard
These advantages are primarily due to the fact that the XHTML output routines,
 since they are part of LyX, know everything LyX knows about the document
 being exported.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Another advantage is that, since these routines are internal to LyX, they
 are immune to changes in LyX's file format, or to changes in the semantics
 of existing insets.
\end_layout

\end_inset

 So they know about the table of contents (as displayed in the outline),
 about the counters associated with different paragraph styles, and about
 user-defined styles.
 The XHTML output routines know what LyX knows about internationalization,
 too, so they will output 
\begin_inset Quotes eld
\end_inset

Chapter 1
\begin_inset Quotes erd
\end_inset

 or 
\begin_inset Quotes eld
\end_inset


\lang ngerman
Kapitel
\lang english
 1
\begin_inset Quotes erd
\end_inset

, depending upon the language in effect at the time.
 
\end_layout

\begin_layout Standard
Quite generally, the output routines know what LyX knows about document
 layout, that is, about how the document is to be rendered on screen.
 We use this information when we output the document as XHTML.
 In particular, LyX 
\emph on
automatically
\emph default
 generates CSS style information corresponding to the layout information
 it uses to render the document on screen: if section headings are supposed
 to be sans-serif and bold as seen in LyX, then (by default) they will be
 sans-serif and bold when viewed in a web browser, too.
 And this is true not just for pre-defined styles, like Section, but for
 any style, including user-defined styles.
 Indeed, the XHTML output routines make no distinction between user-defined
 paragraph and character styles and LyX's own pre-defined styles: in each
 case, everything LyX knows about the styles is contained in the layout
 files.
 And much the same is true as regards pre-defined textual insets, such as
 footnotes, and various custom insets.
 
\end_layout

\begin_layout Standard
The result is that XHTML output can be customized and extended in exactly
 the same way LaTeX output can be customized and extended: through layout
 files and modules.
 See chapter five of the 
\emph on
Customization 
\emph default
manual for the details.
\end_layout

\begin_layout Standard
The remainder of this chapter contains more detailed information on XHTML
 output, its limitations, and ways to work around those limitations.
\end_layout

\begin_layout Section
Math Output in XHTML
\end_layout

\begin_layout Standard
LyX offers four choices for how math is rendered.
 These have various advantages and disadvantages:
\end_layout

\begin_layout Itemize
MathML
\begin_inset Newline newline
\end_inset

MathML is a dialect of XML designed specifically for mathematics on the
 web, and it typically renders very well in browsers that support it.
 The disadvantage is that not all browsers support MathML, and support is
 not complete even in the Gecko-based browsers, such as Firefox.
\begin_inset Newline newline
\end_inset

If LyX is unable to render a formula as MathML---for example, if the formula
 uses the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
xymatrix
\end_layout

\end_inset

 package or ERT---then it will instead output the formula as an image.
 
\end_layout

\begin_layout Itemize
HTML
\begin_inset Newline newline
\end_inset

As mentioned above, 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
elyxer
\end_layout

\end_inset

 outputs math as HTML, styled by CSS.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
LyX has borrowed some of the CSS for its HTML output from 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
elyxer
\end_layout

\end_inset

.
\end_layout

\end_inset

 For simple formulae, this can work quite well, though with more complicated
 formulae it tends to break down.
 Still, this method has the advantage that it is very widely supported and
 so it may be appropriate for documents that contain only a little, fairly
 simple math.
\begin_inset Newline newline
\end_inset

If Lyx is unable to render a formula as HTML---for example, if the formula
 uses the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
xymatrix
\end_layout

\end_inset

 package or ERT---then it will instead output the formula as an image.
 
\end_layout

\begin_layout Itemize
Images
\begin_inset Newline newline
\end_inset

Like 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
htlatex
\end_layout

\end_inset

, LyX will output formulae as images, the very same images, in fact, that
 are used for instant preview.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Instant preview does 
\emph on
not 
\emph default
have to be on for images to be output, however.
\end_layout

\end_inset

 The advantage to this method is that the images are simply generated by
 LaTeX, so they are very accurate.
 The disadvantage, as mentioned earlier, is that these are bitmapped images,
 so they do not scale terribly well, and one cannot copy them, etc.
 (As of this writing, there are also problems about equation numbering.
 See 
\begin_inset CommandInset href
LatexCommand href
name "bug 6894"
target "http://www.lyx.org/trac/ticket/6894"

\end_inset

.)
\begin_inset Newline newline
\end_inset

The size of the images can be controlled by setting the 
\begin_inset Quotes eld
\end_inset

Math Images Scaling
\begin_inset Quotes erd
\end_inset

 parameter under 
\begin_inset Flex MenuItem
status collapsed

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

\end_inset

.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
For those who want to know, this controls the resolution of the image in
 dots per inch and is based upon a default of 75 dpi.
\end_layout

\end_inset


\begin_inset Newline newline
\end_inset

If LyX for some reason fails to create an image for a formula (e.g., if a
 required LaTeX package is not installed), then it will fall back to outputing
 the raw LaTeX.
\end_layout

\begin_layout Itemize
LaTeX
\begin_inset Newline newline
\end_inset

Finally, LyX will happily output math as LaTeX.
 As well as being the output of last resort, this method can be used with
 such tools as 
\begin_inset CommandInset href
LatexCommand href
name "jsMath"
target "http://www.math.union.edu/~dpvc/jsMath/"

\end_inset

, which uses JavaScript to render LaTeX embedded in HTML documents.
 LyX wraps the LaTeX in either a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
span
\end_layout

\end_inset

 (for inline formulas) or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
div
\end_layout

\end_inset

 (for displayed formulas) with 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
class='math'
\end_layout

\end_inset

, as is required for jsMath.
\end_layout

\begin_layout Standard
One of these output methods must be selected under 
\begin_inset Flex MenuItem
status collapsed

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

\end_inset

.
 By default, LyX outputs MathML.
 This is a document-wide setting, therefore.
\end_layout

\begin_layout Standard
Eventually, LyX will offer the user the option to select an alternate output
 method for a particular inset, say, one that isn't being rendered very
 well by MathML.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
That said, since LyX falls back to images if the inset contains ERT, then
 one can force output as an image by putting some harmless ERT into the
 math, for example: 
\begin_inset Formula $a=b\relax$
\end_inset

.
\end_layout

\end_inset


\end_layout

\begin_layout Section
Bibliography and Citations
\end_layout

\begin_layout Standard
XHTML output fully supports bibliographies and citations.
 
\end_layout

\begin_layout Standard
Citation labels are generated by the same machinery that generates LyX's
 on-screen labels, so the labels will look in the output much as they do
 in LyX, though better.
 If you are using numerical citations, then LyX will output numerical labels,
 such as [1] or [17], rather than simply showing the citation key in square
 brackets, as it does on-screen.
 If you are using author-year citations, then LyX will add lowercase letters
 to the years, just as BibTeX does, if it finds more than one citation for
 a given author-year combination.
 The labels will be printed with the bibliography entries.
 Note that there is, at present, no way to customize the appearance of the
 labels, for example, to choose between square brackets and parentheses.
\end_layout

\begin_layout Standard
Bibliography output is handled by the same machinery that handles the presentati
on of reference information in the citation dialog, so you will see in the
 XHTML output pretty much what you would see if you were to look at a given
 entry in the citation dialog.
 The formatting can be customized in your layout file or, preferably, in
 a module.
 See the 
\emph on
Customization
\emph default
 manual for the details.
\end_layout

\begin_layout Standard
The main defect at present is that cross-referenced information is printed
 with every entry with which it is associated.
 So you can see things like this:
\end_layout

\begin_layout Quote
Jason Stanley, 
\begin_inset Quotes eld
\end_inset

Context and Logical Form
\begin_inset Quotes erd
\end_inset

, in 
\emph on
Language in Context: Selected Essays
\emph default
 (Oxford: Oxford University Press, 2007), pp.
 30--68.
\end_layout

\begin_layout Quote
Jason Stanley, 
\begin_inset Quotes eld
\end_inset

Semantics in Context
\begin_inset Quotes erd
\end_inset

, in 
\emph on
Language in Context: Selected Essays
\emph default
 (Oxford: Oxford University Press, 2007), pp.
 201--30.
\end_layout

\begin_layout Standard
This should be fixed before long.
\end_layout

\begin_layout Standard
There is no support at present for sectioned bibliographies.
 If you have multiple bibliographies, then LyX will print the same bibliography
 over and over.
\end_layout

\begin_layout Section
Indexes
\end_layout

\begin_layout Standard
LyX will happily export indexes as XHTML, but with certain limitations at
 the moment.
\end_layout

\begin_layout Standard
Index export will be most reliable when you do not attempt to use the fancy
 constructs that are described in the section on indexes in the 
\emph on
User's Guide
\emph default
.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
The main issue here is that LyX itself does not really handle these.
 It just lets you enter what you would have to enter in raw LaTeX.
\end_layout

\end_inset

 We'll describe how they are handled using the subsection headings from
 that section.
\end_layout

\begin_layout Itemize
Grouping Index Entries (aka, sub-entries): LyX makes an effort to support
 these, but the entries must be separated by 
\begin_inset Quotes eld
\end_inset

 ! 
\begin_inset Quotes erd
\end_inset

, that is, there must be spaces around the exclamation point.
 This is because it is otherwise too difficult to check for escaped exclamation
 points, ones in math, and so forth.
\end_layout

\begin_layout Itemize
Page Ranges: There is no support at all for page ranges, since these make
 no sense with XHMTL.
 Instead, you will just get two index entries, one at either end.
\end_layout

\begin_layout Itemize
Cross-referencing: There is no support for cross-referencing.
 If LyX finds an entry containing the 
\begin_inset Quotes eld
\end_inset

|see\SpecialChar \ldots{}

\begin_inset Quotes erd
\end_inset

 construct, it is just dropped, and the rest is treated as an ordinary index
 entry.
\end_layout

\begin_layout Itemize
Index Entry Order: LyX does support attempts to fix the sorting order.
 It will take what is before the first `@' it finds and use that for sorting,
 taking what follows the first `@' to be the actual entry.
 At present, LyX does not check for escaped `@', so do not try to index
 email addresses.
\end_layout

\begin_layout Itemize
Index Entry Layout: You can format entries by using the text style dialog,
 or by using any other method available within LyX itself.
 There is no support for constructs like: 
\begin_inset Quotes eld
\end_inset

entry|textbf
\begin_inset Quotes erd
\end_inset

.
 Indeed, if LyX finds a pipe symbol, `|', in an entry, it will delete it
 and everything that follows it.
\end_layout

\begin_layout Itemize
Multiple Indexes: There is no support for multiple indexes.
 Rather, all index entries will be printed as one large index.
 To avoid our printing several versions of the index, we print only the
 main index, so make sure you have one.
\end_layout

\begin_layout Section
Nomenclature and Glossary
\end_layout

\begin_layout Standard
There is at present no support for glossaries.
 Adding it would be fairly trivial, and welcome.
\end_layout

\begin_layout Chapter
The LyX Server
\end_layout

\begin_layout Section
Introduction
\end_layout

\begin_layout Standard
The `LyX server' allows 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.
 It is by writing to the LyX server, for example, that bibliography managers,
 such as JabRef, are able to 
\begin_inset Quotes eld
\end_inset

push
\begin_inset Quotes erd
\end_inset

 citations to LyX.
\end_layout

\begin_layout Section
Starting the LyX Server
\end_layout

\begin_layout Standard
The LyX server works through the use of a pair of named pipes.
 These are usually located in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
UserDir
\end_layout

\end_inset

, (except on Windows, where 
\emph on
local
\emph default
 named pipes are special objects located in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash

\backslash
.
\backslash
pipe
\end_layout

\end_inset

) and have the names 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxpipe.in
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

 and 
\begin_inset Quotes eld
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxpipe.out
\end_layout

\end_inset


\begin_inset Quotes erd
\end_inset

.
 External programs write into 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxpipe.in
\end_layout

\end_inset

 and read back data from 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxpipe.out
\end_layout

\end_inset

.
 The stem of the pipe names can be defined in the 
\begin_inset Flex MenuItem
status collapsed

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

\end_inset

 dialog, for example 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
"/home/myhome/lyxpipe"
\end_layout

\end_inset

, or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
"
\backslash

\backslash
.
\backslash
pipe
\backslash
lyxpipe"
\end_layout

\end_inset

 on Windows (but any working path can be used).
 You 
\emph on
must
\emph default
 configure this manually in order for the server to start.
\end_layout

\begin_layout Standard
LyX will add the '
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.in
\end_layout

\end_inset

' and '
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.out
\end_layout

\end_inset

' to create the pipes.
 If one of the pipes already exists, LyX will assume that another LyX process
 is already running and will not start the server.
 On POSIX (Unix like) systems, if for some other reason, an unused 
\begin_inset Quotes eld
\end_inset

stale
\begin_inset Quotes erd
\end_inset

 pipe is left in existence when LyX closes, then LyX will try to delete
 it.
 If this fails for some reason, you will need to delete the pipes manually
 and then restart LyX.
 On Windows, pipes are deleted by the OS on program termination or crash,
 so 
\begin_inset Quotes eld
\end_inset

stale
\begin_inset Quotes erd
\end_inset

 pipes should not be possible.
\end_layout

\begin_layout Standard
To have several LyX processes with servers at the same time, you have to
 use different configurations, perhaps by using separate user directories,
 each with its own 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
preferences
\end_layout

\end_inset

 file, for each process.
\end_layout

\begin_layout Standard
If you are developing a client program, you might find it useful to enable
 debugging information from the LyX server.
 Do this by starting LyX as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyx -dbg lyxserver
\end_layout

\end_inset

.
\end_layout

\begin_layout Standard
You can find a complete example client written in C in the source distribution
 as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
development/lyxserver/server_monitor.c
\end_layout

\end_inset

.
\end_layout

\begin_layout Standard
Another useful tool is command-line based client you will find in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
src/client/lyxclient
\end_layout

\end_inset

.
\end_layout

\begin_layout Section
Normal communication
\end_layout

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

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

\begin_layout Description
clientname is a name that the client can choose arbitrarily.
 Its only use is that LyX will echo it if it sends an answer—so a client
 can dispatch results from different requesters.
\end_layout

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

\begin_layout Description
argument is an optional argument which is meaningful only to some functions
 (for instance, the 
\begin_inset Quotes eld
\end_inset

self-insert
\begin_inset Quotes erd
\end_inset

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

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

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

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

font-state
\begin_inset Quotes erd
\end_inset

, will return information about the internal state of LyX, while other will
 return an empty data-response.
 This means that the command execution went fine.
\end_layout

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

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

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

\begin_layout Standard
Examples:
\end_layout

\begin_layout LyX-Code
echo "LYXCMD:test:beginning-of-buffer:" >~/.lyxpipe.in
\begin_inset Newline newline
\end_inset

echo "LYXCMD:test:get-xy:" >~/.lyxpipe.in
\begin_inset Newline newline
\end_inset

read a <~/.lyxpipe.out
\begin_inset Newline newline
\end_inset

echo $a
\end_layout

\begin_layout Section
Notification
\end_layout

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

notify
\begin_inset Quotes erd
\end_inset

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

\begin_layout Quote
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
NOTIFY:
\end_layout

\end_inset


\emph on
key-sequence
\end_layout

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

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

notify
\begin_inset Quotes erd
\end_inset

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

\begin_layout Section
The simple LyX Server Protocol
\end_layout

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

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

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

hello
\begin_inset Quotes erd
\end_inset

 or 
\begin_inset Quotes eld
\end_inset

bye
\begin_inset Quotes erd
\end_inset

.
 If 
\begin_inset Quotes eld
\end_inset

hello
\begin_inset Quotes erd
\end_inset

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

bye
\begin_inset Quotes erd
\end_inset

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

\begin_layout Section
Reverse DVI/PDF search
\end_layout

\begin_layout Standard
Some DVI/PDF viewers
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
The following viewers offer the reverse PDF search feature: Okular on KDE/Linux,
 Skim on Mac OSX and SumatraPDF on Windows.
\end_layout

\end_inset

 provide 
\emph on
reverse search
\emph default
 facility (also called 
\emph on
inverse search
\emph default
).
 This means that you can tell LyX to put the cursor to a specific line in
 the document by clicking at the respective position in the DVI/PDF output.
 To achieve this, the viewer must be able to communicate with LyX.
 This is done via the LyX server either by using the named pipe (
\emph on
lyxpipe
\emph default
), or the UNIX domain socket (
\emph on
lyxsocket
\emph default
) that LyX creates in its temporary directory (this is the way the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxclient
\end_layout

\end_inset

 program communicates with LyX).
 In some cases, you need a helper script that mediates between the viewer
 and LyX, in others, the viewer can communicate with LyX directly.
 This depends on the selected viewer and on your operating system.
 The same applies to the way viewers need to be configured and the way the
 reverse search is actually performed.
 In what follows, we will thus describe how to setup reverse search for
 specific viewers.
 Before we turn to this, though, we will explain what needs to be done generally
 to enable reverse search in the DVI/PDF output.
\end_layout

\begin_layout Subsection
Automatic setup
\begin_inset CommandInset label
LatexCommand label
name "sub:rev-search"

\end_inset


\end_layout

\begin_layout Standard
In most cases LyX will do the work for you by enabling the option 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Synchronize with Output
\end_layout

\end_inset

 in the menu 
\begin_inset Flex MenuItem
status collapsed

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

\end_inset

.
 In such a case LyX will automatically insert the necessary SyncTeX macro
 (for PDF) or load the srcltx package (for DVI) respectively.
 This option can be easily reached also on 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
View/Update
\end_layout

\end_inset

 Toolbar.
\end_layout

\begin_layout Standard
If you need a different setting, you can select or input a custom macro
 from the drop down box just below 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Document\SpecialChar \menuseparator
Settings\SpecialChar \menuseparator
Output\SpecialChar \menuseparator
Synchronize with Output
\end_layout

\end_inset

.
\end_layout

\begin_layout Standard
Note that the method 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
synctex=1
\end_layout

\end_inset

 enables gzip compression.
 If your viewer does not support it, you should instead use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
synctex=-1
\end_layout

\end_inset

.
\end_layout

\begin_layout Standard
Please aöso note that including the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
srcltx
\end_layout

\end_inset

 package or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
src-specials
\end_layout

\end_inset

 sometimes has an undesired impact on the typesetting.
 Thus, you should switch output synchronization off for the final typesetting
 if you use the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
srcltx
\end_layout

\end_inset

 package or 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
src-specials
\end_layout

\end_inset

.
 
\end_layout

\begin_layout Standard
In case you need some more special settings that are not covered by the
 automatic settings, read the next section about how to set up output synchroniz
ation manually.
 If the automatic setup suits your needs, you can readily jump to section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "sub:configuring-viewers"

\end_inset

, where the necessary configuration steps in your viewer -- needed both
 with the automatic and the manual setup -- are described.
\end_layout

\begin_layout Subsection
Manual setup
\end_layout

\begin_layout Standard
LaTeX provides several different methods for reverse search.
 Some are built-in in the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
latex/pdflatex
\end_layout

\end_inset

 program, some are provided by external packages.
 Your choice depends on whether your LaTeX distribution already provides
 a given method (the built-in methods are rather new) and whether your viewer
 can cope with it.
 The available methods are described in the following.
\end_layout

\begin_layout Subsubsection*
Built-in DVI-search via src-specials (DVI only) 
\end_layout

\begin_layout Standard
This method provides the DVI file with the necessary information for reverse
 search.
 It is available in LaTeX since quite some time (any somewhat recent LaTeX
 distribution should include it), and it works reliably.
 To enable it, change the 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
LaT
\begin_inset ERT
status collapsed

\begin_layout Plain Layout

{}
\end_layout

\end_inset

eX (plain)->DVI
\end_layout

\end_inset

 or 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
LaT
\begin_inset ERT
status collapsed

\begin_layout Plain Layout

{}
\end_layout

\end_inset

eX (plain)->DraftDVI
\end_layout

\end_inset

 converter in 
\begin_inset Flex MenuItem
status collapsed

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

\end_inset

 to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
latex -src-specials $$i
\end_layout

\end_inset

.
 If this doesn't work, check if your TeX engine needs different options
 (the syntax might differ in some distributions).
\end_layout

\begin_layout Subsubsection*
External Packages (PDFSync and scrltx) 
\end_layout

\begin_layout Standard
The packages 
\emph on
pdfsync
\emph default
 and 
\emph on
scrltx
\emph default
 provide reverse search facility for PDF output (via pdflatex) and DVI output,
 respectively.
 In order to enable it, load the packages in the LyX preamble: 
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
usepackage{pdfsync}
\end_layout

\end_inset

 for reverse PDF search,
\end_layout

\begin_layout Itemize
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash
usepackage[active]{srcltx}
\end_layout

\end_inset

 for reverse DVI search.
\end_layout

\begin_layout Standard
If you want to be able to perform both DVI and PDF reverse searches, you
 can also insert in the preamble the following lines
\end_layout

\begin_layout LyX-Code

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


\backslash
ifpdf
\begin_inset Newline newline
\end_inset

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


\backslash
else
\begin_inset Newline newline
\end_inset

  
\backslash
usepackage[active]{srcltx}
\begin_inset Newline newline
\end_inset


\backslash
fi
\end_layout

\begin_layout Standard
This way, you can preview the file as either DVI or PDF (pdflatex) and the
 right package will be used.
\end_layout

\begin_layout Standard
Note that PDFSync might affect the output layout of your document.
 It is therefore advised to disable PDFsync for final documents.
\end_layout

\begin_layout Subsubsection*
Built-in reverse search via SyncTeX (DVI and PDF) 
\end_layout

\begin_layout Standard
Recent versions of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
(pdf)latex
\end_layout

\end_inset

 have built-in support for both PDF and DVI reverse search.
 This so-called 
\emph on
SyncTeX
\emph default
 facility is basically the result of the integration of the PDFSync package
 to the pdftex program and its merge with the 
\emph on
scr-specials
\emph default
 approach.
 You need at least TeXLive 2008 or a recent MikTeX distribution in order
 to use it.
 Also note that only a few PDF viewers (Skim on the Mac, SumatraPDF on Windows)
 already provide SyncTeX support.
\end_layout

\begin_layout Standard
To enable SyncTeX for DVI output, change the 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
LaT
\begin_inset ERT
status collapsed

\begin_layout Plain Layout

{}
\end_layout

\end_inset

eX (plain) -> DVI
\end_layout

\end_inset

 or 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
LaT
\begin_inset ERT
status collapsed

\begin_layout Plain Layout

{}
\end_layout

\end_inset

eX (plain) -> DraftDVI
\end_layout

\end_inset

 converter in 
\begin_inset Flex MenuItem
status collapsed

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

\end_inset

 to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
latex -synctex=1 $$i
\end_layout

\end_inset

, and for PDF output, change the 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
LaT
\begin_inset ERT
status collapsed

\begin_layout Plain Layout

{}
\end_layout

\end_inset

eX (pdflatex) -> PDF (pdflatex)
\end_layout

\end_inset

 or converter to 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
pdflatex -synctex=1 $$i
\end_layout

\end_inset

.
 Check the documentation of your viewer whether the viewer needs to be configure
d for the use with SyncTeX.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Note that the option 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-synctex=1
\end_layout

\end_inset

 option enables gzip compression.
 If your viewer does not support it, you should instead use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-synctex=-1
\end_layout

\end_inset

.
\end_layout

\end_inset


\end_layout

\begin_layout Subsection
Configuring and using specific viewers
\begin_inset CommandInset label
LatexCommand label
name "sub:configuring-viewers"

\end_inset


\end_layout

\begin_layout Subsubsection*
Xdvi (all platforms)
\end_layout

\begin_layout Standard
If you use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
xdvi
\end_layout

\end_inset

, you don't need to do anything else for performing a reverse DVI search,
 as LyX already provides the necessary hooks for automatically using the
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxclient
\end_layout

\end_inset

 program.
 Just setup your document as described above (reverse search is triggered
 by Ctrl-click or Alt-click on Mac OSX, respectively).
\end_layout

\begin_layout Standard
However, if for whatever reason you want to use the named pipe instead of
 the socket for communicating with LyX, simply change the DVI viewer in
 
\begin_inset Flex MenuItem
status collapsed

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

\end_inset

 to
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
On Mac OSX you have to use 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
DISPLAY=:0.0 xdvi -editor 'lyxeditor.sh %f %l'
\end_layout

\end_inset


\end_layout

\end_inset

 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
xdvi -editor 'lyxeditor.sh %f %l'
\end_layout

\end_inset

, where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxeditor.sh
\end_layout

\end_inset

 is a suitable script.
 For example, a minimal shell script is the following one:
\end_layout

\begin_layout LyX-Code
#!/bin/sh
\begin_inset Newline newline
\end_inset

LYXPIPE="/path/to/lyxpipe"
\begin_inset Newline newline
\end_inset

COMMAND="LYXCMD:revdvi:server-goto-file-row:$1 $2"
\begin_inset Newline newline
\end_inset

echo "$COMMAND" > "${LYXPIPE}".in || exit
\begin_inset Newline newline
\end_inset

read < "${LYXPIPE}".out || exit
\end_layout

\begin_layout Standard
where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
/path/to/lyxpipe
\end_layout

\end_inset

 is the Ly
\begin_inset ERT
status collapsed

\begin_layout Plain Layout

{}
\end_layout

\end_inset

XServer pipe path specified in 
\begin_inset Flex MenuItem
status collapsed

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

\end_inset

.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
In the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
development/tools
\end_layout

\end_inset

 folder of a source distribution you can find a 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxeditor
\end_layout

\end_inset

 script which is able to locate the 
\emph on
lyxpipe
\emph default
 based on your preferences.
\end_layout

\end_inset


\end_layout

\begin_layout Subsubsection*
MacDviX (Mac OSX)
\end_layout

\begin_layout Standard
At the end of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
/Applications/MacDviX_Folder/calleditor.script
\end_layout

\end_inset

, add the following lines:
\end_layout

\begin_layout LyX-Code
/Applications/Ly
\begin_inset ERT
status collapsed

\begin_layout Plain Layout

{}
\end_layout

\end_inset

X.app/Contents/MacOS/lyxeditor "$2" $1
\begin_inset Newline newline
\end_inset

exit 1
\end_layout

\begin_layout Standard
Modify the lines accordingly if you install LyX somewhere else than in the
 Applications folder.
\end_layout

\begin_layout Standard
Reverse search is triggered by Alt-click (OPTION-click).
\end_layout

\begin_layout Subsubsection*
Skim (Mac OSX)
\end_layout

\begin_layout Standard
Enter 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
open -a Skim.app $$i
\end_layout

\end_inset

 to the viewer setting in 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Preferences\SpecialChar \menuseparator
File Handling\SpecialChar \menuseparator
File formats\SpecialChar \menuseparator
PDF (pdflatex)
\end_layout

\end_inset

, and then in 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Skim\SpecialChar \menuseparator
Preferences\SpecialChar \menuseparator
Sync
\end_layout

\end_inset

 choose 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
custom
\end_layout

\end_inset

 preset and enter command 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
/Applications/LyX.app/Contents/MacOS/lyxeditor
\end_layout

\end_inset

.
\end_layout

\begin_layout Standard
Reverse search is triggered by COMMAND-SHIFT-click
\end_layout

\begin_layout Subsubsection*
Okular (KDE)
\end_layout

\begin_layout Standard
Go to 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Settings\SpecialChar \menuseparator
Configure Okular\SpecialChar \ldots{}
\SpecialChar \menuseparator
Editor
\end_layout

\end_inset

, select 
\begin_inset Quotes eld
\end_inset

Custom Text Editor
\begin_inset Quotes erd
\end_inset

 and add the command 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxclient -g %f %l
\end_layout

\end_inset

.
\end_layout

\begin_layout Standard
Reverse search is triggered by SHIFT-click.
\end_layout

\begin_layout Subsubsection*
YAP (Windows)
\end_layout

\begin_layout Standard
Launch yap, choose its 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
View\SpecialChar \menuseparator
Options
\end_layout

\end_inset

 menu and select the 
\begin_inset Quotes eld
\end_inset

Inverse DVI Search
\begin_inset Quotes erd
\end_inset

 tab.
 Click on the 
\begin_inset Quotes eld
\end_inset

New\SpecialChar \ldots{}

\begin_inset Quotes erd
\end_inset

 button and, in the window that opens, enter 
\begin_inset Quotes eld
\end_inset

LyX Editor
\begin_inset Quotes erd
\end_inset

 (or any other name you like) in the 
\begin_inset Quotes eld
\end_inset

Name:
\begin_inset Quotes erd
\end_inset

 field.
 Now click on the button labeled 
\begin_inset Quotes eld
\end_inset

\SpecialChar \ldots{}

\begin_inset Quotes erd
\end_inset

 to open a file dialog and navigate to the directory containing the batch
 file 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxeditor.bat
\end_layout

\end_inset

 (see below).
 Select 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxeditor.bat
\end_layout

\end_inset

 and then specify the program arguments as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
%f %l
\end_layout

\end_inset

.
 The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxeditor.bat
\end_layout

\end_inset

 wrapper is used for communicating with LyX through the 
\emph on
lyxpipe
\emph default
 and is as follows:
\end_layout

\begin_layout LyX-Code
@echo off
\begin_inset Newline newline
\end_inset

echo LYXCMD:revdvi:server-goto-file-row:%1 %2> 
\backslash

\backslash
.
\backslash
pipe
\backslash
lyxpipe.in
\begin_inset Newline newline
\end_inset

type 
\backslash

\backslash
.
\backslash
pipe
\backslash
lyxpipe.out
\end_layout

\begin_layout Standard
Make sure that the LyXServer pipe path you specified in LyX is 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout

\backslash

\backslash
.
\backslash
pipe
\backslash
lyxpipe
\end_layout

\end_inset

, otherwise change the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxeditor.bat
\end_layout

\end_inset

 wrapper accordingly.
\end_layout

\begin_layout Standard
In yap, reverse search is triggered by double-click.
\end_layout

\begin_layout Subsubsection*
SumatraPDF (Windows)
\end_layout

\begin_layout Standard
In order to use SumatraPDF for inverse search, enter 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
SumatraPDF -inverse-search "lyxeditor.bat %f %l"
\end_layout

\end_inset

 in the viewer setting in 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Preferences\SpecialChar \menuseparator
File Handling\SpecialChar \menuseparator
File formats\SpecialChar \menuseparator
PDF (pdflatex)
\end_layout

\end_inset

, where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxeditor.bat
\end_layout

\end_inset

 is the previous wrapper.
 If SumatraPDF.exe is not in your command PATH, use its full file name.
\end_layout

\begin_layout Standard
Reverse search is triggered by double-click.
\end_layout

\begin_layout Subsubsection*
YAP (Cygwin)
\end_layout

\begin_layout Standard
First of all, make sure that yap is your default DVI viewer in the Windows
 environment, then launch it, choose its 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
View\SpecialChar \menuseparator
Options
\end_layout

\end_inset

 menu and select the 
\begin_inset Quotes eld
\end_inset

Inverse DVI Search
\begin_inset Quotes erd
\end_inset

 tab.
 Click on the 
\begin_inset Quotes eld
\end_inset

New\SpecialChar \ldots{}

\begin_inset Quotes erd
\end_inset

 button and, in the window that opens, enter 
\begin_inset Quotes eld
\end_inset

LyX Editor
\begin_inset Quotes erd
\end_inset

 (or any other name you like) in the 
\begin_inset Quotes eld
\end_inset

Name:
\begin_inset Quotes erd
\end_inset

 field.
 Now click on the button labeled 
\begin_inset Quotes eld
\end_inset

\SpecialChar \ldots{}

\begin_inset Quotes erd
\end_inset

 to open a file dialog and navigate to the directory containing the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxeditor.exe
\end_layout

\end_inset

 program (which is installed by default on Cygwin along with the LyX executable).
 Select 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
lyxeditor.exe
\end_layout

\end_inset

 and then specify the program arguments as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-g %f %l
\end_layout

\end_inset

.
 In this way, you will be using the 
\emph on
lyxsocket
\emph default
 for communicating with LyX.
 If, for whatever reason, you want to use the 
\emph on
lyxpipe
\emph default
, omit the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-g
\end_layout

\end_inset

 option and be sure to specify the LyXServer pipe path in the LyX preferences.
\end_layout

\begin_layout Standard
In yap, reverse search is triggered by double-click.
\end_layout

\begin_layout Subsubsection*
SumatraPDF (Cygwin)
\end_layout

\begin_layout Standard
In order to use SumatraPDF for inverse search, enter 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
SumatraPDF -inverse-search "lyxeditor -g %f %l"
\end_layout

\end_inset

 in the viewer setting in 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Preferences\SpecialChar \menuseparator
File Handling\SpecialChar \menuseparator
File formats\SpecialChar \menuseparator
PDF (pdflatex)
\end_layout

\end_inset

.
 If SumatraPDF.exe is not in your command PATH, use its full posix path.
 The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-g
\end_layout

\end_inset

 enables communication via the 
\emph on
lyxsocket
\emph default
.
 Again, omit the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
-g
\end_layout

\end_inset

 option if you want to use the 
\emph on
lyxpipe
\emph default
, and be sure to specify the LyXServer pipe path in the LyX preferences.
\end_layout

\begin_layout Standard
Reverse search is triggered by double-click.
\end_layout

\begin_layout Section
Forward search
\end_layout

\begin_layout Standard
Forward search is, as the name implies, in a sense the 
\begin_inset Quotes eld
\end_inset

opposite
\begin_inset Quotes erd
\end_inset

 to reverse search.
 It allows you to let the viewer jump to a given position from within LyX.
 If forward search is set up (as described in what follows), you can put
 the cursor anywhere in your LyX document, and hit 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Navigate\SpecialChar \menuseparator
Forward search
\end_layout

\end_inset

 (or select 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Forward search
\end_layout

\end_inset

 in the context menu via right mouse click), and then the viewer will jump
 to that position as well.
 This implies, of course, that your viewer supports this function.
\end_layout

\begin_layout Standard
To make forward search possible, you first need to provide the generated
 output PDF/DVI file with additional information about the TeX sources.
 This can be done via the methods described in the section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:rev-search"

\end_inset

.
\end_layout

\begin_layout Standard
Additionally, you need to configure LyX for using your viewers in 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Tools\SpecialChar \menuseparator
Preferences\SpecialChar \menuseparator
Output\SpecialChar \menuseparator
General
\end_layout

\end_inset

.
 We provide a range of tested configurations for some viewers, which you
 can select from the drop down list.
 If none of these configurations suits you, you have to find out and enter
 a suitable configuration yourself.
 The definition syntax uses the following placeholders:
\end_layout

\begin_layout Itemize
\noindent
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$n
\end_layout

\end_inset

: row number
\end_layout

\begin_layout Itemize
\noindent
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$t
\end_layout

\end_inset

: name of the (temporary) exported .tex file
\end_layout

\begin_layout Itemize
\noindent
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$$o
\end_layout

\end_inset

: name of the exported output file (either dvi or pdf, depending on which
 one exists in the temporary directory)
\end_layout

\begin_layout Standard
Note that only some of the viewers provide full forward search functionality,
 among them yap, xdvi, okular and Sumatra PDF.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
For Sumatra CMCDDE is needed --- downloadable from 
\begin_inset CommandInset href
LatexCommand href
target "http://www.istri.fr/zip/CMCDDE.zip"

\end_inset


\end_layout

\end_inset

 While many of the widespread PDF viewers (most notably Adobe Reader) do
 not support forward search at all, some other viewers -- e.
\begin_inset space \thinspace{}
\end_inset

g.
 evince and xpdf -- allow at least to reload the document and jump to a
 specific page of the file, so you can at least navigate 
\begin_inset Quotes eld
\end_inset

near
\begin_inset Quotes erd
\end_inset

.
 These latter functionality is provided by an external call of synctex (see
 the predefined example configurations).
 
\end_layout

\begin_layout Standard
Forward search works both with DVI and PDF output.
 LyX simply checks which preview format you have used before (i.
\begin_inset space \thinspace{}
\end_inset

e., which format is already there in the temporary directory) and chooses
 the appropriate configuration for the respective format.
\end_layout

\begin_layout Chapter
Special Document Classes
\end_layout

\begin_layout Section
A&A Paper
\end_layout

\begin_layout Standard
by 
\noun on
Peter Sütterlin
\end_layout

\begin_layout Subsection
Introduction
\end_layout

\begin_layout Standard
This section describes how LyX can be used to write articles for submission
 to the scientific journal 
\emph on
Astronomy and Astrophysics
\emph default
 (www.edpsciences.fr/aa/ 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://www.edpsciences.fr/aa/
\end_layout

\end_inset

) using Version 5.01 of the document class 
\family typewriter
aa.cls
\family default
.
 This package can be downloaded from the ftp site
\end_layout

\begin_layout Standard
\begin_inset VSpace medskip
\end_inset


\end_layout

\begin_layout Standard
\align center
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

ftp://ftp.edpsciences.org/pub/aa/readme.html
\end_layout

\end_inset


\end_layout

\begin_layout Standard
\begin_inset VSpace medskip
\end_inset


\end_layout

\begin_layout Standard
A manual comes together with that package, and this text is not meant to
 replace the original manual but is merely a short guide in how to realize
 the correct form of your paper.
 
\end_layout

\begin_layout Standard
Please note that the publisher of the journal was changed from Springer
 to EDP Sciences starting January 1, 2001.
 That change involved also some slight changes to the style files, namely
 the removal of the thesaurus command.
 The LyX class aa supports the newest version of these style files, V 5.01.
 If you have an older version installed, please upgrade.
 For compatibility, the old (version 4) layout has been kept as 
\family sans
article (A&A V4)
\family default
.
 Please refer to the comments in 
\family typewriter
LyXDir/layouts/aapaper.layout
\family default
.
\end_layout

\begin_layout Subsection
Getting started
\end_layout

\begin_layout Standard
It is recommended you start from the example template distributed with LyX.
 If you are not using a template, note the following settings:
\end_layout

\begin_layout Itemize
Select 
\family sans
article (A&A)
\family default
 in the 
\family sans
Document\SpecialChar \menuseparator
Settings
\family default
 dialog (OK, that one was obvious).
\end_layout

\begin_layout Itemize
Don't change the option 
\family sans
Page
\begin_inset space ~
\end_inset

style
\family default
: Leave it set to 
\family sans
default
\family default
.
 The whole layout is done by the macros, you shouldn't change anything.
\end_layout

\begin_layout Subsection
The header block
\end_layout

\begin_layout Standard
First thing to enter is the header information.
 It consists of seven entries, of which some are optional.
 They are
\end_layout

\begin_layout Itemize

\family sans
Title
\family default
: [required] 
\end_layout

\begin_layout Itemize

\family sans
Subtitle
\family default
: [optional] 
\end_layout

\begin_layout Itemize

\family sans
Author
\family default
: [required]
\end_layout

\begin_layout Itemize

\family sans
Address
\family default
: [required]
\end_layout

\begin_layout Itemize

\family sans
Offprints
\family default
: [optional] if more than one author: whom to contact for offprint requests.
\end_layout

\begin_layout Itemize

\family sans
Mail
\family default
: [optional] mail address for contacts.
\end_layout

\begin_layout Itemize

\family sans
Date
\family default
: [required].
 Suggested format is 
\family typewriter
Received: <date>; Accepted <date> 
\end_layout

\begin_layout Standard
There is no need to issue the 
\family typewriter

\backslash
maketitle
\family default
 command, this is done automatically by LyX when the header is finished.
 Although the order of the single header entries doesn't matter it is advised
 to keep the above sequence, just to get the best optics and meets the layout
 of the real document.
\end_layout

\begin_layout Standard
If you want to place footnotes in the header block, e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

to state your present address, just use the standard footnote via the menu
 
\family sans
Insert\SpecialChar \menuseparator
Footnote.

\family default
 LyX will automagically use the term 
\family typewriter

\backslash
thanks{}
\family default
 in that case.
\end_layout

\begin_layout Standard
In addition to these topics, the macros use three additional LaTeX commands
 that have no counterpart in LyX:
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
and
\family default
 to separate different names for more than one author and institute, respectivel
y.
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
inst{<nr>}
\family default
to mark corresponding author/institute pairs.
 The institutes are numbered sequentially as they appear in the 
\family sans
Address
\family default
 field, so you have to put a marker to each author.
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
email{address}
\family default
 to supply an email address for fast contact.
\end_layout

\begin_layout Standard
In all cases, the appropriate command has to be entered in LyX and marked
 as LaTeX code.
 See the examples.
 
\end_layout

\begin_layout Subsection
The abstract
\end_layout

\begin_layout Standard
The abstract should immediately follow the header block.
 With version 5 the abstract environment was changed to a command, and there
 is now a resctriction to only one paragraph.
 In addition, it should contain an entry with the keywords.
 This is not yet implemented for LyX, therefore you have to enter the LaTeX
 command 
\family typewriter

\backslash
keywords{}
\family default
 by hand and mark it as LaTeX code.
 Refer to the example paper.
\end_layout

\begin_layout Subsection
Supported environments
\end_layout

\begin_layout Standard
The A&A paper layout supports the following environments for structuring
 your text:
\end_layout

\begin_layout Itemize

\family sans
Standard
\end_layout

\begin_layout Itemize

\family sans
Section
\end_layout

\begin_layout Itemize

\family sans
Subsection
\end_layout

\begin_layout Itemize

\family sans
Subsubsection
\end_layout

\begin_layout Itemize

\family sans
Itemize
\end_layout

\begin_layout Itemize

\family sans
Enumerate
\end_layout

\begin_layout Itemize

\family sans
Description
\end_layout

\begin_layout Itemize

\family sans
Caption
\end_layout

\begin_layout Itemize

\family sans
Abstract
\end_layout

\begin_layout Itemize

\family sans
Acknowledgment
\end_layout

\begin_layout Itemize

\family sans
Bibliography
\end_layout

\begin_layout Itemize

\family sans
LaTeX
\end_layout

\begin_layout Subsection
Commands not supported by LyX
\end_layout

\begin_layout Standard
Some commands are not yet supported by the 
\family sans
paper (A&A)
\family default
 layout for LyX.
 Some have already been mentioned.
 For the sake of completeness, they are listed all together here:
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
and
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
email
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
appendix
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
authorrunning
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
inst{}
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
keywords{}
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
object{}
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
titlerunning{}
\end_layout

\begin_layout Standard
If you want to use any of these commands, you have to enter them yourself.
 
\series bold
Do not forget to mark them as LaTeX code!
\end_layout

\begin_layout Subsection
Figure and Table Floats
\end_layout

\begin_layout Standard
LyX provides support for the necessary float environments 
\family sans
figure, figure*, table
\family default
 and 
\family sans
table*
\family default
, therefore we won't tell much about it here.
 Refer to the 
\emph on
User's
\begin_inset space ~
\end_inset

Guide
\emph default
.
 Just remember that tables should be left-aligned.
 For that, select the table and change the alignment in 
\family sans
Edit\SpecialChar \menuseparator
Paragraph
\begin_inset space ~
\end_inset

Settings.
\end_layout

\begin_layout Standard
There is only one special thing: the figures with caption besides the figure.
 To create such a figure, you have to do the following:
\end_layout

\begin_layout Enumerate
Create a wide figure float: 
\family sans
Insert\SpecialChar \menuseparator
Float\SpecialChar \menuseparator
Figure
\family default
, then right click in the figure and select 
\family sans
\bar under
S
\bar default
pan
\begin_inset space ~
\end_inset

columns
\family default
.
\end_layout

\begin_layout Enumerate
Enter your caption text.
\end_layout

\begin_layout Enumerate
Press 
\family sans
Return
\family default
 to move the cursor above the caption.
\end_layout

\begin_layout Enumerate
Insert your figure
\end_layout

\begin_layout Enumerate
Position the cursor behind the figure and insert a horizontal fill: 
\family sans
Insert\SpecialChar \menuseparator
Special
\begin_inset space ~
\end_inset

Character\SpecialChar \menuseparator
Horizontal
\begin_inset space ~
\end_inset

Fill
\family default
.
\end_layout

\begin_layout Enumerate
Switch to LaTeX mode: 
\family sans
M-c
\begin_inset space ~
\end_inset

t
\family default
.
\end_layout

\begin_layout Enumerate
Enter 
\family typewriter

\backslash
parbox[b]{55mm}{
\family default
.
 
\series bold
Do not close the brace!
\end_layout

\begin_layout Enumerate
Position the cursor behind the caption text, switch to LaTeX mode and insert
 the closing brace: 
\family sans
M-c
\begin_inset space ~
\end_inset

t
\family default
 
\family typewriter
}
\family default
.
\end_layout

\begin_layout Standard
Also, refer to the figures in the example paper.
\end_layout

\begin_layout Subsection
Referee layout
\end_layout

\begin_layout Standard
For submission, the paper has to be formated in a special double-spacing
 layout.
 For this purpose, you have to give the option 
\family typewriter
referee
\family default
 to the documentclass.
 This must be done using the extra class options field in the 
\family sans
Document\SpecialChar \menuseparator
Settings
\family default
 dialog.
 Just enter the string 
\family typewriter
referee
\family default
 there.
\end_layout

\begin_layout Subsection
The example paper
\end_layout

\begin_layout Standard
The 
\family sans
Examples
\family default
 directory contains an example paper written with LyX.
 It is the example paper from the original macro package, translated to
 LyX.
 Use it for inspiration, and compare the original LaTeX code with LyX way
 of writing.
\end_layout

\begin_layout Section
AASTeX
\end_layout

\begin_layout Standard
by 
\noun on
Mike Ressler
\end_layout

\begin_layout Subsection
Introduction
\end_layout

\begin_layout Standard
AASTeX is a set of macros produced by the American Astronomical Society
 to facilitate electronic manuscript submission to the three journals they
 publish: the Astrophysical Journal (including the Letters and Supplement),
 the Astronomical Journal, and the Publications of the Astronomical Society
 of the Pacific.
 LyX has proven to be an excellent tool for generating these documents,
 especially given its equation, citation, and figure handling capabilities.
 LyX requires version 5.0 (or higher) of these macros; preferably 5.2, which
 is the version described here, or higher.
 Versions prior to 5.0 are intended for use with LaTeX2.09 and are fundamentally
 incompatible with LyX.
 The AASTeX package may be downloaded from the AASTeX Web site
\end_layout

\begin_layout Standard
\begin_inset VSpace medskip
\end_inset


\end_layout

\begin_layout Standard
\align center
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://www.journals.uchicago.edu/AAS/AASTeX
\end_layout

\end_inset


\end_layout

\begin_layout Standard
\begin_inset VSpace medskip
\end_inset


\end_layout

\begin_layout Standard
A complete user guide is contained in that package and you should familiarize
 yourself with it thoroughly before embarking on writing a paper in LyX.
 LyX will not reduce the need to figure out all the AASTeX commands, it
 will only reduce the drudgery of typing everything in.
 It is your responsibility to ensure that the final exported LaTeX document
 conforms completely to the requirements of the journal to which you are
 submitting your paper.
\end_layout

\begin_layout Subsection
Starting a New Paper
\end_layout

\begin_layout Standard
I strongly suggest that you start with the AASTeX template file.
 Click on 
\family sans
File\SpecialChar \menuseparator
New from
\family default
 
\family sans
Template
\family default
, enter the new file name, then choose the 
\family typewriter
aastex.lyx
\family default
 template.
 This will show the most common fields found in a manuscript.
 Simply overwrite the existing text (including the brackets, 
\family typewriter
<>
\family default
) with the correct information.
 Many of the AASTeX commands and environments can be implemented directly
 in LyX, but some cannot: most noticeably 
\family typewriter

\backslash
altaffilmark
\family default
 and 
\family typewriter

\backslash
altaffiltext
\family default
, which should stick out like a sore thumb if you actually just opened the
 template file.
 For commands such as these, the LaTeX code must be entered directly and
 marked as such.
 Such commands are referred to as TeX code, or Evil Red Text.
 I tried to minimize the amount of TeX code needed in an AASTeX document,
 but there is still a bit more required than any of us would like.
\end_layout

\begin_layout Subsection
Finishing Your Paper
\end_layout

\begin_layout Standard
When the paper is finished to your satisfaction and previews/prints correctly,
 there are a few 
\begin_inset Quotes eld
\end_inset

postprocessing
\begin_inset Quotes erd
\end_inset

 actions which need to be done before you submit it to the journals.
 
\end_layout

\begin_layout Enumerate
Export your paper as a LaTeX file (
\family sans
File\SpecialChar \menuseparator
Export\SpecialChar \menuseparator
LaTeX
\family default
).
 
\end_layout

\begin_layout Enumerate
Edit the resulting 
\family typewriter
.tex
\family default
 file with your favorite text editor
\end_layout

\begin_deeper
\begin_layout Enumerate
remove the comment lines before the 
\family typewriter

\backslash
documentclass
\family default
 command
\end_layout

\begin_layout Enumerate
remove the 
\family typewriter

\backslash
usepackage...{fontenc}
\family default
 line if it appears (usually just after 
\family typewriter

\backslash
documentclass
\family default
}; also remove the 
\family typewriter

\backslash
secnumdepth
\family default
 line if it appears.
\end_layout

\begin_layout Enumerate
remove everything between (and including) the 
\family typewriter

\backslash
makeatletter
\family default
 and 
\family typewriter

\backslash
makeatother
\family default
 commands, except for any commands you specifically put into the LaTeX preamble
 (which should appear immediately after the 
\begin_inset Quotes eld
\end_inset

User specified LaTeX commands
\begin_inset Quotes erd
\end_inset

 comment in the 
\family typewriter
.tex
\family default
 file).
\end_layout

\end_deeper
\begin_layout Enumerate
Run the resulting file through LaTeX to make sure it still processes correctly.
\end_layout

\begin_layout Enumerate
Reread the journal requirements to make sure your filenames and formats
 are correct.
\end_layout

\begin_layout Enumerate
Submit it.
\end_layout

\begin_layout Subsection
Comments On Specific Commands
\end_layout

\begin_layout Standard
I will not describe the detailed usage of the individual AASTeX commands:
 the AASTeX User Guide (
\family typewriter
aasguide.tex
\family default
) gives a good description of each.
 Thus it's probably easiest for me to go down the list as found in the guide
 and offer comments where necessary.
 So let's begin \SpecialChar \ldots{}

\end_layout

\begin_layout Subsubsection
Things that work as expected
\end_layout

\begin_layout Standard
Because they work as you might expect, I simply list them and the section
 they are found in: 
\family typewriter

\backslash
documentclass
\family default
 (2.1.1), 
\family typewriter

\backslash
begin{document}
\family default
 (2.2), 
\family typewriter

\backslash
title
\family default
 (2.3), 
\family typewriter

\backslash
author
\family default
 (2.3), 
\family typewriter

\backslash
affil
\family default
 (2.3), 
\family typewriter

\backslash
abstract
\family default
 (2.4), 
\family typewriter

\backslash
keywords
\family default
 (2.5), 
\family typewriter

\backslash
section
\family default
 (2.7), 
\family typewriter

\backslash
subsection
\family default
 (2.7), 
\family typewriter

\backslash
subsubsection
\family default
 (2.7), 
\family typewriter

\backslash
paragraph
\family default
 (2.7), 
\family typewriter

\backslash
facility
\family default
 (2.10), 
\family typewriter

\backslash
begin{displaymath}
\family default
 (2.12), 
\family typewriter

\backslash
begin{equation}
\family default
 (2.12), 
\family typewriter

\backslash
begin{eqnarray}
\family default
 (2.12), 
\family typewriter

\backslash
begin{mathletters}
\family default
 (2.12), 
\family typewriter

\backslash
begin{thebibliography}
\family default
 (2.13.1), 
\family typewriter

\backslash
bibitem
\family default
 (2.13.2), all the cite commands and their variations (2.13.2), the generic
 graphicx figure commands (2.14.1), 
\family typewriter

\backslash
begin{table}
\family default
 (2.15.4), 
\family typewriter

\backslash
begin{tabular}
\family default
 (2.15.4), 
\family typewriter

\backslash
caption
\family default
 (2.15.4), 
\family typewriter

\backslash
label
\family default
 (2.15.4, amongst other places), 
\family typewriter

\backslash
tablerefs
\family default
 (2.15.5), 
\family typewriter

\backslash
tablecomments
\family default
 (2.15.5), 
\family typewriter

\backslash
url
\family default
 (2.17.4), 
\family typewriter

\backslash
end{document}
\family default
 (2.18).
\end_layout

\begin_layout Standard
The following style options also work correctly: 
\family typewriter
longabstract
\family default
 (2.4), 
\family typewriter
preprint
\family default
 (3.2.1), 
\family typewriter
preprint2
\family default
 (3.2.2), 
\family typewriter
eqsecnum
\family default
 (3.3), 
\family typewriter
flushrt
\family default
 (3.4).
 Simply put them in the 
\family sans
Options
\family default
 box in 
\family sans
Layout\SpecialChar \menuseparator
Document
\family default
.
\end_layout

\begin_layout Subsubsection
Things that work, but require more comment
\end_layout

\begin_layout Standard
The following items work, but require a little more discussion:
\end_layout

\begin_layout Itemize
These items are reserved for use by the journal editors, but you can put
 them into the LaTeX preamble if you feel compelled to do so: 
\family typewriter

\backslash
received
\family default
, 
\family typewriter

\backslash
revised
\family default
, 
\family typewriter

\backslash
accepted
\family default
, 
\family typewriter

\backslash
ccc
\family default
, 
\family typewriter

\backslash
cpright
\family default
 (all from 2.1.3)
\end_layout

\begin_layout Itemize
These items may be placed in the LaTeX preamble, and are included as blanks
 in the template file: 
\family typewriter

\backslash
slugcomment
\family default
 (2.1.4), 
\family typewriter

\backslash
shorttitle
\family default
 (2.1.5), 
\family typewriter

\backslash
shortauthors
\family default
 (2.1.5)
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
email
\family default
 (2.3) – can only be used 
\begin_inset Quotes eld
\end_inset

standalone
\begin_inset Quotes erd
\end_inset

, not in the middle of a paragraph.
 Use TeX code if you need to embed it.
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
and
\family default
 (2.3) – will have extra {} after it.
 This should not cause an error.
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
notetoeditor
\family default
 (2.6) – can only be used 
\begin_inset Quotes eld
\end_inset

standalone
\begin_inset Quotes erd
\end_inset

, not in the middle of a paragraph.
 Use TeX code if you need to embed it.
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
placetable
\family default
 (2.8) – can't insert a cross-reference tag, you must type the tag name by
 hand
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
placefigure
\family default
 (2.8) – same as for 
\family typewriter

\backslash
placetable
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
acknowledgements
\family default
 (2.9) – will have extra {} after it.
 This should not cause an error.
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
appendix
\family default
 (2.11) – will have extra {} after it.
 This should not cause an error.
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
figcaption
\family default
 (2.14.2) – you can insert an optional filename argument by placing the cursor
 at the beginning of the text and selecting 
\family sans
Insert\SpecialChar \menuseparator
Short Title
\family default
.
 
\begin_inset Quotes eld
\end_inset

Short Title
\begin_inset Quotes erd
\end_inset

 inserts an optional argument of the type needed by 
\family typewriter

\backslash
figcaption
\family default
.
 Hopefully it will be renamed someday.
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
objectname
\family default
 (2.17.1) – same as 
\family typewriter

\backslash
figcaption
\family default
 for the catalog ID optional parameter
\end_layout

\begin_layout Itemize

\family typewriter

\backslash
dataset
\family default
 (2.17.1) – same as 
\family typewriter

\backslash
figcaption
\family default
 for the catalog ID optional parameter
\end_layout

\begin_layout Subsubsection
Things not implemented, use TeX code
\end_layout

\begin_layout Standard

\family typewriter

\backslash
altaffilmark
\family default
 (2.3), 
\family typewriter

\backslash
altaffiltext
\family default
 (2.3), 
\family typewriter

\backslash
eqnum
\family default
 (2.12), 
\family typewriter

\backslash
setcounter{equation}
\family default
 (2.12), Journal name abbreviations (2.13.4), 
\family typewriter

\backslash
figurenum
\family default
 (2.14.1), 
\family typewriter

\backslash
epsscale
\family default
 (2.14.1), 
\family typewriter

\backslash
plotone
\family default
 (2.14.1), 
\family typewriter

\backslash
plottwo
\family default
 (2.14.1), 
\family typewriter

\backslash
tablenum
\family default
 (2.15.4), 
\family typewriter

\backslash
tableline
\family default
 (2.15.4, insert it as the first element in the lefthand cell after where
 you want it.
 Don't use any of LyX's rules in the table), 
\family typewriter

\backslash
tablenotemark
\family default
 (2.15.5), 
\family typewriter

\backslash
tablenotetext
\family default
 (2.15.5), much of Misc (2.17, except 
\family typewriter

\backslash
objectname
\family default
, 
\family typewriter

\backslash
dataset
\family default
, 
\family typewriter

\backslash
url
\family default
, and 
\family typewriter

\backslash
email
\family default
; see above), 
\family typewriter

\backslash
singlespace
\family default
 (3.1), 
\family typewriter

\backslash
doublespace
\family default
 (3.1), 
\family typewriter

\backslash
onecolumn
\family default
 (3.2), 
\family typewriter

\backslash
twocolumn
\family default
 (3.2)
\end_layout

\begin_layout Subsubsection
Things that cannot be implemented
\end_layout

\begin_layout Standard
\SpecialChar \ldots{}
 at least in any meaningful sort of way, so I suggest ignoring them.
 They are the references environment (2.13.3), and the deluxetable environment
 (2.15).
 If you really, really need to use deluxetable, I suggest editing it in
 a separate file with a text editor, then using 
\family sans
Insert\SpecialChar \menuseparator
Child
\begin_inset space ~
\end_inset

Document
\family default
 to include it in your LyX document.
 See the 
\family typewriter
aas_sample.lyx
\family default
 file to see an example of this.
\end_layout

\begin_layout Subsection
FAQs, Tips, Tricks, and Other Ruminations
\end_layout

\begin_layout Subsubsection
Getting LyX and AASTeX to cooperate
\end_layout

\begin_layout Standard
It can be a bit tricky to get LyX to recognize a new layout and document
 class.
 When all else fails, do this:
\end_layout

\begin_layout Enumerate
Make certain that LaTeX can find AASTeX.
 Copy sample.tex (and perhaps table.tex) from the AASTeX distribution into
 a directory completely unrelated to LaTeX or AASTeX and run LaTeX on 
\family typewriter
sample.tex
\family default
.
\end_layout

\begin_layout Enumerate
Make certain that 
\family typewriter
aastex.layout
\family default
 appears in LyX's 
\family typewriter
layouts
\family default
 folder
\end_layout

\begin_layout Enumerate
Rerun 
\family sans
Tools\SpecialChar \menuseparator
Reconfigure
\family default
 in LyX, then restart LyX.
\end_layout

\begin_layout Enumerate
Open a regular new file, not from a template.
 Does AASTeX appear in the class list in 
\family sans
Document\SpecialChar \menuseparator
Settings
\family default
?
\end_layout

\begin_layout Standard
If you get a warning from an existing AASTeX document about not being able
 to find the AASTeX layout or a message about 
\begin_inset Quotes eld
\end_inset

You should not mix title layouts with normal ones
\begin_inset Quotes erd
\end_inset

, things haven't been installed correctly.
\end_layout

\begin_layout Subsubsection
LaTeX error processing a table 
\end_layout

\begin_layout Standard
LyX, by default, attempts to center the table caption/title.
 This seems to produce a bad interaction in AASTeX so you should click somewhere
 in the caption/title, then select 
\family sans
Edit\SpecialChar \menuseparator
Paragraph
\begin_inset space ~
\end_inset

Settings
\family default
, then set the 
\family sans
Alignment
\family default
 to 
\family sans
Block
\family default
.
 This took care of it for me.
\end_layout

\begin_layout Subsubsection
References
\end_layout

\begin_layout Standard
A couple of things: 1) I have noticed some funny spacing in the reference
 entries in the text.
 When you enter the bibliography item data, make sure their is 
\emph on
no
\emph default
 space between the last author and the parenthesis setting off the year;
 
\emph on
e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\emph default
type 
\family typewriter
Ressler(1992)
\family default
, not 
\family typewriter
Ressler (1992)
\family default
.
 2) Entering the references at all is not obvious.
 The easiest thing is to start typing your first reference at the end of
 the document, then mark it as type 
\family sans
References
\family default
.
 That will put a small gray box in front of what you just typed.
 Click on the box to fill in the rest of the information.
 For new references, go to the end of an existing reference and press return.
 That will create a new line with its own box, etc.
\end_layout

\begin_layout Subsubsection
Including EPS files
\end_layout

\begin_layout Standard
Even though AASTeX provides its own figure commands (
\family typewriter

\backslash
plotone
\family default
, for example), I much prefer LaTeX's standard figure commands (with the
 default graphicx).
 You can insert the 
\family typewriter

\backslash
plotone
\family default
, etc.
\begin_inset space ~
\end_inset

commands as TeX code into a Figure Float box if you desire, but I never
 have much luck getting the layout right.
 With the standard graphics, LyX will insert a 
\family typewriter

\backslash
usepackage{graphicx}
\family default
 command into the LaTeX preamble and handle the figures in the standard
 LaTeX2e way, interspersing the figures in the text.
 I believe ApJ accepts figures exactly this way now; AJ might still use
 the 
\begin_inset Quotes eld
\end_inset

stack everything at the end
\begin_inset Quotes erd
\end_inset

 technique.
\end_layout

\begin_layout Subsubsection
Things I could have done, but didn't
\end_layout

\begin_layout Standard
There are a few 
\begin_inset Quotes eld
\end_inset

pretty
\begin_inset Quotes erd
\end_inset

 things I could have implemented, but chose not to.
 For instance, I saw no point in double-spacing the text in the LyX window,
 even though it is double-spaced in the paper manuscript.
 Also, I chose not to make separate layouts for the preprint and preprint2
 styles.
 Since I assume you will spend most of your time in the plain manuscript
 mode anyway, I decided not to chew up more disk space with this.
 
\end_layout

\begin_layout Subsection
Final Caveat
\end_layout

\begin_layout Standard
Your mileage may vary.
 I've now had papers published by both ApJ and AJ that have had 98% of the
 effort done in LyX; the last 2% was the LaTeX post-processing and a few
 cleanups.
 I have had no trouble with the submission process, and I'm sure the journals
 were never aware that there might be a difference.
 So, go forth and publish!
\end_layout

\begin_layout Section
AMS LaTeX
\end_layout

\begin_layout Standard
by 
\noun on
David Johnson
\noun default
; updated by 
\noun on
Richard Heck
\end_layout

\begin_layout Standard
\begin_inset VSpace bigskip
\end_inset


\end_layout

\begin_layout Standard
\noindent
The AMS LaTeX layouts are set up to conform to suggested styles for mathematical
 papers to be submitted to American Mathematical Society publications.
 The layouts are not tailored to a specific journal, but easily can be.
 You should refer to the AMS documentation for specific instructions for
 each journal (usually it will entail only changing a single line in the
 TeX output).
 That documentation is available on the Web at 
\begin_inset Flex URL
status open

\begin_layout Plain Layout

http://www.ams.org
\end_layout

\end_inset

 or by ftp at 
\begin_inset Flex URL
status open

\begin_layout Plain Layout

ftp://ftp.ams.org/pub/tex/amslatex/
\end_layout

\end_inset

.
 These layouts are appropriate, and useful, for any mathematical writing.
 
\end_layout

\begin_layout Standard
There are two basic AMS LaTeX layouts: 
\end_layout

\begin_layout Itemize
amsart: The standard AMS article format.
\end_layout

\begin_layout Itemize
amsbook: the standard AMS book (really, monograph) format.
 
\end_layout

\begin_layout Standard
The layouts themselves contain only the minimum necessary to use the AMS
 classes.
 They do not, in particular, contain any of the `theorem' environments used
 for setting theorems, lemmas, and the like.
 These are contained, instead, in the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Theorems (AMS)
\end_layout

\end_inset

 module, which is loaded by default when when you select one of the AMS
 classes.
 (It can also be used with other classes and can be removed, if you would
 rather use something else.) Less commonly used environments are in the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Theorems (AMS-Extended)
\end_layout

\end_inset

 module, which must be loaded manually.
\end_layout

\begin_layout Standard
By default, theorems and the like are numbered consecutively throughout
 the document, but this may be modified by loading the module 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Theorems (Order by Section)
\end_layout

\end_inset

 or, if you are using 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
book (AMS)
\end_layout

\end_inset

, the module 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Theorems (Order by Chapter)
\end_layout

\end_inset

.
 These will number the results as 
\begin_inset Formula $n.m$
\end_inset

, where the first number refers to the section (or chapter) and the second
 refers to the total number of results so far in that section (or chapter).
 Many environments are also available unnumbered.
 These are indicated by an asterisk at the end.
 If you happen to want 
\emph on
only
\emph default
 unnumbered results, the module 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Theorems (Starred)
\end_layout

\end_inset

 provides that option.
\end_layout

\begin_layout Standard
Note that these modules do not 
\emph on
have
\emph default
 to be used with the AMS classes.
 It is perfectly possible to use the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Theorems (AMS)
\end_layout

\end_inset

 module, and the others mentioned, with other classes, such as 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article
\end_layout

\end_inset

, 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
report
\end_layout

\end_inset

, 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
book (KOMA-script)
\end_layout

\end_inset

, and so forth.
\end_layout

\begin_layout Subsection
What these layouts provide
\end_layout

\begin_layout Standard
There is a long list of included environments provided by these layouts.
 In AMS-LaTeX, there is, in fact, an opportunity to define an unlimited
 variety of `theorem' environments.
 However, the AMS recommends the environments that are available in LyX.
 
\end_layout

\begin_layout Standard
The following environments—as well as the standard environments, such as
 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
section
\end_layout

\end_inset

, 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
bibliography
\end_layout

\end_inset

, 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
title
\end_layout

\end_inset

, 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
author
\end_layout

\end_inset

, and 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
date
\end_layout

\end_inset

—are provided by 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
article (AMS)
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
book (AMS)
\end_layout

\end_inset

:
\end_layout

\begin_layout Description
Address This should be the author's permanent address.
\end_layout

\begin_layout Description
Current
\begin_inset space ~
\end_inset

Address This should be the author's temporary address at the time of submission,
 if different from the Address.
\end_layout

\begin_layout Description
Email Author's e-mail address
\end_layout

\begin_layout Description
URL Author's Web address, if desired.
\end_layout

\begin_layout Description
Keywords Key words or phrases used to identify specific topics discussed
 in the paper.
\end_layout

\begin_layout Description
Subjectclass These refer to the AMS Subject Classifications, published and
 described in 
\emph on
Mathematical Reviews
\emph default
.
 These are also available online at the AMS cites listed above.
\end_layout

\begin_layout Description
Thanks
\end_layout

\begin_layout Description
Dedicatory
\end_layout

\begin_layout Description
Translator
\end_layout

\begin_layout Standard
The following environments are provided by both the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Theorems
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Theorems (AMS)
\end_layout

\end_inset

 modules, in the latter case in both starred (unnumbered) and unstarred
 (numbered) versions.
 These same environments are provided only in the starred versions by the
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Theorems (Starred)
\end_layout

\end_inset

 module:
\end_layout

\begin_layout Theorem
This is typically used for the statements of major results.
 
\end_layout

\begin_layout Corollary*
This is used for statements which follow fairly directly from previous statement
s.
 Again, these can be major results.
 
\end_layout

\begin_layout Lemma
These are smaller results needed to prove other statements.
\end_layout

\begin_layout Proposition
These are less major results which (hopefully) add to the general theory
 being discussed.
\end_layout

\begin_layout Conjecture
These are statements provided without justification, which the author does
 not know how to prove, but which seem to be true (to the author, at least).
\end_layout

\begin_layout Definition*
Guess what this is for.
 The font is different for this environment than for the previous ones.
 
\end_layout

\begin_layout Example*
Used for examples illustrating proven results.
\end_layout

\begin_layout Problem
It's not really known what this is for.
 You should figure it out.
\end_layout

\begin_layout Exercise*
Write a description for this one.
\end_layout

\begin_layout Remark
This environment is also a type of theorem, usually a lesser sort of observation.
\end_layout

\begin_layout Claim*
Often used in the course of giving a proof of a larger result.
\end_layout

\begin_layout Case
Generally, these are used to break up long arguments, using specific instances
 of some condition.
 
\end_layout

\begin_layout Case
The numbering scheme for cases is on its own, not together with other numbered
 statements.
 
\end_layout

\begin_layout Proof
At the end of this environment, a QED symbol (usually a square, but it can
 vary with different styles) is placed.
 If you want to have other environments within this one—for example, Case
 environments—and have the QED symbol appear only after them, then the other
 environments need to be nested within the proof environment.
 See the section 
\emph on
Nesting Environments
\emph default
 of the 
\emph on
User's Guide
\emph default
 for information on nesting.
\end_layout

\begin_layout Standard
And these environments are provided by 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Theorems (AMS-Extended)
\end_layout

\end_inset

:
\end_layout

\begin_layout Criterion*
A required condition.
\end_layout

\begin_layout Algorithm*
A general procedure to be used.
\end_layout

\begin_layout Axiom*
This is a property or statement taken as true within the system being discussed.
\end_layout

\begin_layout Condition*
Sometimes used to state a condition assumed within the present context of
 discussion.
\end_layout

\begin_layout Note*
Similar to a Remark.
\end_layout

\begin_layout Notation*
Used for the explanation of, yes, notation.
\end_layout

\begin_layout Summary
Do we really need to tell you? 
\end_layout

\begin_layout Acknowledgement*
Acknowledgement.
\end_layout

\begin_layout Conclusion*
Sometimes used at the end of a long train of argument.
\end_layout

\begin_layout Fact
Used in a way similar to Proposition, though perhaps lower on the scale.
\end_layout

\begin_layout Standard
In addition, the AMS classes automatically provide the AMS LaTeX and AMS
 fonts packages.
 They need to be available on your system in order to use these environments.
\end_layout

\begin_layout Section
AGU journals (
\family sans
aguplus
\family default
)
\end_layout

\begin_layout Standard
by 
\shape smallcaps
Martin Vermeer
\end_layout

\begin_layout Subsection
Description
\end_layout

\begin_layout Standard
These are the layout files for some of the journals of the American Geophysical
 Society.
 It is assumed that you have both the AGU's own class files and AGUplus
 installed (everything to be found at
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

ftp://ftp.agu.org/journals/latex/journals
\end_layout

\end_inset

).
\end_layout

\begin_layout Subsection
New styles
\end_layout

\begin_layout Standard
Redefined are 
\family sans
Paragraph
\family default
, 
\family sans
Paragraph*
\family default
.
 They are still called this in the LyX GUI, though their LaTeX equivalents
 in the AGU classes are 
\family sans
Subsubsubsection
\family default
 and 
\family sans
Subsubsubsection*
\family default
.
\end_layout

\begin_layout Standard
Newly defined styles are 
\family sans
Left_Header
\family default
, 
\family sans
Right_Header
\family default
, 
\family sans
Received
\family default
, 
\family sans
Revised
\family default
, 
\family sans
Accepted
\family default
, 
\family sans
CCC
\family default
, 
\family sans
PaperId
\family default
, 
\family sans
AuthorAddr
\family default
, 
\family sans
SlugComment
\family default
.
 These are mostly manuscript attributes and defined in the AGU class documentati
on.
\end_layout

\begin_layout Standard
I suspect this is still badly incomplete.
\end_layout

\begin_layout Subsection
New floats
\end_layout

\begin_layout Standard

\family sans
Planotable
\family default
 and 
\family sans
Plate
\family default
.
 We also have a new 
\family sans
Table_Caption
\family default
.
\end_layout

\begin_layout Subsection
Supported journals
\end_layout

\begin_layout Itemize

\emph on
Journal of Geophysical Research
\emph default
: 
\family typewriter
jgrga.layout
\family default
 — Martin Vermeer
\end_layout

\begin_layout Standard
Add your own, it isn't so hard! Look at the 
\family typewriter
jgrga.layout
\family default
 example and 
\family typewriter
aguplus.inc
\family default
.
\end_layout

\begin_layout Subsection
Bugs and things to remember
\end_layout

\begin_layout Standard
In order to use the new layouts, you must remember to do the following for
 a new document:
\end_layout

\begin_layout Enumerate

\emph on
Turn off babel
\emph default
.
 This can be done in the 
\family sans
Layout\SpecialChar \menuseparator
Document
\family default
 or 
\family sans
Document\SpecialChar \menuseparator
Settings
\family default
 menu item.
 (AGU articles are always in English, right? So 
\emph on
don't
\emph default
 choose a language.)
\end_layout

\begin_layout Enumerate
Enter 
\family typewriter
jgrga
\family default
 into the document's 
\family sans
Extra Options
\family default
 field.
 (Yes, this is a bug.)
\end_layout

\begin_layout Enumerate
Make sure you use the 
\family typewriter
agu.bst
\family default
 bibliography style, by entering 
\family sans
agu
\family default
 into the second field of the BibTeX inset.
 None of the standard styles will do.
\end_layout

\begin_layout Section
Broadway
\end_layout

\begin_layout Standard
by 
\shape smallcaps
Garst Reese
\end_layout

\begin_layout Subsection
Introduction
\end_layout

\begin_layout Standard
Broadway is for writing plays.
 The format is more decorative than Hollywood, and much less standardized.
 This format should be suitable for workshops.
\end_layout

\begin_layout Subsection
Special problems
\end_layout

\begin_layout Standard
The same as in Hollywood.
\end_layout

\begin_layout Subsection
Special features
\end_layout

\begin_layout Standard
Insert the 
\family sans
Speaker
\family default
 names as labels then cross-reference the label to insert the name.
 The cross-reference dialog will show the current cast of characters.
\end_layout

\begin_layout Subsection
Paper size and Margins
\end_layout

\begin_layout Standard
USLetter, left 1.6in, right 0.75in, top 0.5in, bottom 0.75in
\end_layout

\begin_layout Subsection
Environments
\end_layout

\begin_layout Standard
The following environments are available.
 You can use broadway.bind to get the bind keys shown at the right.
\end_layout

\begin_layout Itemize

\family sans
Standard
\begin_inset Newline newline
\end_inset


\family default
You should not have to use this, but it is here for anything that does not
 fit otherwise.
\end_layout

\begin_layout Itemize

\family sans
Narrative
\begin_inset space \hfill{}
\end_inset

M-z n
\begin_inset Newline newline
\end_inset


\family default
Used to describe stage setting and the action.
 First use of speaker names in all CAPs.
\end_layout

\begin_layout Itemize

\family sans
ACT
\begin_inset space \hfill{}
\end_inset

M-z a
\begin_inset Newline newline
\end_inset


\family default
Automatically numbered.
 On screen it will be arabic, but will print as Roman.
\end_layout

\begin_layout Itemize

\family sans
ACT*
\begin_inset space \hfill{}
\end_inset

M-z S at
\begin_inset Newline newline
\end_inset


\family default
Subtitle for 
\family sans
ACT.

\family default
 It is just centered text.
\end_layout

\begin_layout Itemize

\family sans
SCENE
\begin_inset space \hfill{}
\end_inset

M-z S-S
\begin_inset Newline newline
\end_inset


\family default
Not automatically numbered.
 You supply the number.
 This is because I couldn't figure out how.
\end_layout

\begin_layout Itemize

\family sans
AT_RISE:
\begin_inset space \hfill{}
\end_inset

M-z S-R
\begin_inset Newline newline
\end_inset


\family default
A special case of Narrative to describe the setting and action as the curtain
 rises.
\end_layout

\begin_layout Itemize

\family sans
Speaker
\begin_inset space \hfill{}
\end_inset

M-z s
\begin_inset Newline newline
\end_inset


\family default
The speaker's (actor's) title, centered in all CAPS.
\end_layout

\begin_layout Itemize

\family sans
Parenthetical
\begin_inset space \hfill{}
\end_inset

M-z p
\begin_inset Newline newline
\end_inset


\family default
Instructions to the speaker.
 The parentheses are automatically inserted.
 The ( will appear on screen, but both will be in the printed play.
 This environment is only used within 
\family sans
Dialogue
\family default
.
\end_layout

\begin_layout Itemize

\family sans
Dialogue
\begin_inset space \hfill{}
\end_inset

M-z d
\begin_inset Newline newline
\end_inset


\family default
What the Speaker says.
\end_layout

\begin_layout Itemize

\family sans
CURTAIN
\begin_inset space \hfill{}
\end_inset

M-z S-C
\begin_inset Newline newline
\end_inset


\family default
The curtain comes down.
\end_layout

\begin_layout Itemize

\family sans
Title
\begin_inset space \hfill{}
\end_inset

M-z S-T
\end_layout

\begin_layout Itemize

\family sans
Author
\begin_inset space \hfill{}
\end_inset

M-z S-A
\end_layout

\begin_layout Itemize

\family sans
Right_Address
\begin_inset space \hfill{}
\end_inset

M-z r
\end_layout

\begin_layout Standard
Hello there.
\end_layout

\begin_layout Section
Dinbrief
\end_layout

\begin_layout Standard
The document class 
\family sans
dinbrief
\family default
 can be used to type letters according to German conventions.
 A template file is included in 
\family typewriter
.../lyx/share/templates
\family default
 for you to use as a starting point.
\end_layout

\begin_layout Section
EGS journals (
\family sans
egs
\family default
)
\end_layout

\begin_layout Standard
by 
\shape smallcaps
Martin Vermeer
\end_layout

\begin_layout Subsection
Description
\end_layout

\begin_layout Standard
This is the layout file for the European Geophysical Society journals.
 The needed 
\family typewriter
egs.cls
\family default
 can be downloaded from the web site of the EGS under 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

www.copernicus.org
\end_layout

\end_inset

.
\end_layout

\begin_layout Subsection
New styles
\end_layout

\begin_layout Standard

\family sans
Right_address, Latex_Title, Affil, Journal, msnumber, FirstAuthor, Received,
 Accepted
\family default
, 
\family sans
Offsets
\family default
.
 The current layout file is unfortunately very unmodular and would benefit
 from using the various 
\family typewriter
std*.inc
\family default
 file inclusions.
\end_layout

\begin_layout Section
Elsevier Journals
\end_layout

\begin_layout Standard
See the LyX template file 
\family typewriter
elsarticle.lyx
\family default
.
 It contains all infos you need.
\end_layout

\begin_layout Section
Foils [aka 
\family sans
FoilTeX
\family default
]
\begin_inset CommandInset label
LatexCommand label
name "sec:foiltex"

\end_inset


\end_layout

\begin_layout Standard
by 
\noun on
Allan Rae
\end_layout

\begin_layout Subsection
Introduction
\end_layout

\begin_layout Standard
This section describes how to use LyX to make slides for overhead projectors.
 There are two document classes that can do this: the default slides class
 and the 
\family sans
FoilTeX
\family default
 slides class.
 This section documents the latter.
\end_layout

\begin_layout Standard
I'm going to say this again, nice and clear, so that there's no misunderstanding
:
\end_layout

\begin_layout Standard
\begin_inset VSpace bigskip
\end_inset


\end_layout

\begin_layout Standard
\align center

\size large
This section documents the class 
\begin_inset Quotes eld
\end_inset


\family sans
slides (FoilTeX)
\family default

\begin_inset Quotes erd
\end_inset

 
\emph on
only.
\end_layout

\begin_layout Standard
\begin_inset VSpace bigskip
\end_inset


\end_layout

\begin_layout Standard
If you're looking for the documentation for 
\begin_inset Quotes eld
\end_inset


\family sans
slides (default)
\family default

\begin_inset Quotes erd
\end_inset

, check out section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "sec:slitex"

\end_inset

.
 If your machine doesn't have the 
\family sans
foils
\family default
 class [
\begin_inset Quotes eld
\end_inset


\family sans
slides (FoilTeX)
\family default

\begin_inset Quotes erd
\end_inset

] installed, you'll probably have to use the default 
\family sans
slides
\family default
 class, which isn't quite as good as 
\family sans
foils.
\end_layout

\begin_layout Standard
The 
\family sans
foils
\family default
 class is designed for use with version 2.1 of the 
\family sans
foils.cls
\family default
 LaTeX class file which is now an integral part of LaTeX2e.
\end_layout

\begin_layout Subsection
Getting Started
\end_layout

\begin_layout Standard
Obviously, to use this document class, you need to select 
\begin_inset Quotes eld
\end_inset


\family sans
slides (FoilTeX)
\family default

\begin_inset Quotes erd
\end_inset

 from the 
\family sans
Class
\family default
 entry in the 
\family sans
Document
\begin_inset space ~
\end_inset

Layout
\family default
 dialog.
 There are some settings in the 
\family sans
Document
\begin_inset space ~
\end_inset

Layout
\family default
 dialog that you should know about that are specific to this class:
\end_layout

\begin_layout Itemize
Don't change the options 
\family sans
Sides
\family default
 and 
\family sans
Columns
\family default
 on the 
\family sans
Document
\begin_inset space ~
\end_inset

Layout
\family default
 dialog.
 They're ignored by the 
\family sans
foils
\family default
 class.
\end_layout

\begin_layout Itemize
The default font size is 20
\begin_inset space \thinspace{}
\end_inset

pt with the other options being 17
\begin_inset space \thinspace{}
\end_inset

pt, 25
\begin_inset space \thinspace{}
\end_inset

pt and 30
\begin_inset space \thinspace{}
\end_inset

pt.
\end_layout

\begin_layout Itemize
The default font is 
\family sans
sans
\family default
 
\family sans
serif
\family default
 but all math equations are still typeset in the usual roman font.
\end_layout

\begin_layout Itemize

\family sans
FoilTeX
\family default
 supports A4 and Letter paper sizes as well as a special size for working
 with 35
\begin_inset space \thinspace{}
\end_inset

mm slides.
 It doesn't support A5, B5, legal or executive paper sizes.
\end_layout

\begin_layout Itemize
Don't bother changing the 
\family sans
Float Placement
\family default
 settings because they are ignored anyway.
 All floats appear where they are defined in the text.
\end_layout

\begin_layout Itemize
The 
\family sans
Pagestyle
\family default
 setting behaves a bit differently for this class.
 
\family sans
FoilTeX
\family default
 provides extensive footer and header capabilities including a user-defined
 logo.
 See section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "sec:foilfoot"

\end_inset

 for more details.
 The title page is treated differently to all other pages in the document
 and is 
\emph on
always
\emph default
 unnumbered and 
\emph on
always
\emph default
 has the logo centered at the bottom of the page (if one is defined).
 The possible page style choices and what they do are as follows:
\end_layout

\begin_deeper
\begin_layout Labeling
\labelwidthstring MMMMMMM

\family sans
\series bold
empty
\family default
\series default
 The final output contains no page numbers, or other headers or footers
 (except footnotes of course).
 
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMM

\family sans
\series bold
plain
\family default
\series default
 The final output contains page numbers centered at the bottom of the page.
 No other headings or footers (other than footnotes).
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMM

\series bold
foilheadings
\series default
 Page numbers in lower right corner.
 Additional headers and footers are also shown.
 This is also the default.
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMM

\series bold
fancy
\series default
 Gives you access to the 
\family sans
fancyheadings
\family default
 package although its use with 
\family sans
FoilTeX
\family default
 is discouraged by the writer of the 
\family sans
FoilTeX
\family default
 package because of some potential page layout clashes.
\end_layout

\end_deeper
\begin_layout Subsubsection
Extra Options
\end_layout

\begin_layout Standard
The following options may be used in the extra class options in the 
\family sans
Document\SpecialChar \menuseparator
Settings
\family default
 dialog.
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMx

\series bold
35mmSlide
\series default
 This sets up the page layout for 7.33
\begin_inset space \thinspace{}
\end_inset

in by 11
\begin_inset space \thinspace{}
\end_inset

in paper, which is about the same aspect ratio as a 35
\begin_inset space \thinspace{}
\end_inset

mm slide, making it a bit easier to work with this medium.
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMx

\series bold
headrule
\series default
 Places a rule across the page below the header on every page except the
 title page.
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMx

\series bold
footrule
\series default
 Places a rule across the page above the footer on every page except the
 title page.
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMx

\series bold
dvips
\series default
 This is automatically set each time you create a new 
\family sans
foils
\family default
 document.
 This option tells 
\family sans
FoilTeX
\family default
 to use the dvips driver to rotate those pages that are set as landscape
 foils.
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMx

\series bold
landscape
\series default
 Simply changes the page dimensions to those of a landscape page but doesn't
 do any rotation.
 Thus if you use this option you need to use an external program to rotate
 each page or feed your paper through your printer as landscape.
 Note that this option effectively reverses the roles of the 
\family sans
Foilhead
\family default
 and 
\family sans
Rotatefoilhead
\family default
 environments (don't worry these are described in the next section).
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMx

\series bold
leqno
\series default
 Equation numbers on the left.
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMx

\series bold
fleqn
\series default
 Flush-left equations.
\end_layout

\begin_layout Subsection
Supported Environments
\end_layout

\begin_layout Standard
Most of the environments commonly supported in other classes are also supported
 by the 
\family sans
foils
\family default
 class.
 There are several additional environments provided by 
\family sans
FoilTeX
\family default
 as well as a couple added by LyX.
 The following environments are shared with other classes:
\end_layout

\begin_layout Standard
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
begin{multicols}{2}
\end_layout

\end_inset


\end_layout

\begin_layout Itemize

\family sans
Standard
\end_layout

\begin_layout Itemize

\family sans
Itemize
\end_layout

\begin_layout Itemize

\family sans
Enumerate
\end_layout

\begin_layout Itemize

\family sans
Description
\end_layout

\begin_layout Itemize

\family sans
List
\end_layout

\begin_layout Itemize

\family sans
LyX-Code
\end_layout

\begin_layout Itemize

\family sans
Verse
\end_layout

\begin_layout Itemize

\family sans
Quote
\end_layout

\begin_layout Itemize

\family sans
Quotation
\end_layout

\begin_layout Itemize

\family sans
Title
\end_layout

\begin_layout Itemize

\family sans
Author
\end_layout

\begin_layout Itemize

\family sans
Date
\end_layout

\begin_layout Itemize

\family sans
Abstract
\end_layout

\begin_layout Itemize

\family sans
Bibliography
\end_layout

\begin_layout Itemize

\family sans
Address
\end_layout

\begin_layout Itemize

\family sans
RightAddress
\end_layout

\begin_layout Itemize

\family sans
Caption
\end_layout

\begin_layout Itemize

\family sans
Comment
\end_layout

\begin_layout Standard
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
end{multicols}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
That is, all the major environments apart from the sectioning environments.
 Since foils are essentially self-contained sections, with a title and body,
 
\family sans
FoilTeX
\family default
 provides specific commands for starting new foils and these are:
\end_layout

\begin_layout Itemize

\family sans
Foilhead
\end_layout

\begin_layout Itemize

\family sans
Rotatefoilhead
\end_layout

\begin_layout Standard
LyX also provides slightly modified versions of these two environments called:
\end_layout

\begin_layout Itemize

\family sans
ShortFoilhead
\end_layout

\begin_layout Itemize

\family sans
ShortRotatefoilhead
\end_layout

\begin_layout Standard
and the differences will be explained in the next section.
\end_layout

\begin_layout Standard
Since foils are often used in presenting ideas or new theorems and such
 
\family sans
FoilTeX
\family default
 also provides a comprehensive box of goodies for presenting them:
\end_layout

\begin_layout Standard
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
begin{multicols}{2}
\end_layout

\end_inset


\end_layout

\begin_layout Itemize

\family sans
Theorem
\end_layout

\begin_layout Itemize

\family sans
Lemma
\end_layout

\begin_layout Itemize

\family sans
Corollary
\end_layout

\begin_layout Itemize

\family sans
Proposition
\end_layout

\begin_layout Itemize

\family sans
Definition
\end_layout

\begin_layout Itemize

\family sans
Proof
\end_layout

\begin_layout Itemize

\family sans
Theorem*
\end_layout

\begin_layout Itemize

\family sans
Lemma*
\end_layout

\begin_layout Itemize

\family sans
Corollary*
\end_layout

\begin_layout Itemize

\family sans
Proposition*
\end_layout

\begin_layout Itemize

\family sans
Definition*
\end_layout

\begin_layout Standard
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
end{multicols}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
The starred versions are unnumbered while the unstarred versions are numbered.
 There are also two list environments added by LyX and these are:
\end_layout

\begin_layout Itemize

\family sans
TickList
\end_layout

\begin_layout Itemize

\family sans
CrossList
\end_layout

\begin_layout Standard

\family sans
FoilTeX
\family default
 provides some powerful header and footer capabilities that are best set
 in the preamble although they may be set at any point in a document.
 If you want to change these settings in your document the best place to
 do so is at the very top of a foil, i.
\begin_inset space \thinspace{}
\end_inset

g.
\emph on

\begin_inset space \space{}
\end_inset


\emph default
straight after the foilhead.
\end_layout

\begin_layout Standard
For this purpose, the following command styles are provided [
\shape smallcaps
Martin Vermeer
\shape default
]:
\end_layout

\begin_layout Standard
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
begin{multicols}{2}
\end_layout

\end_inset


\end_layout

\begin_layout Itemize

\family sans
My
\begin_inset space ~
\end_inset

Logo
\end_layout

\begin_layout Itemize

\family sans
Restriction
\end_layout

\begin_layout Itemize

\family sans
Right
\begin_inset space ~
\end_inset

Footer
\end_layout

\begin_layout Itemize

\family sans
Right
\begin_inset space ~
\end_inset

Header
\end_layout

\begin_layout Itemize

\family sans
Left
\begin_inset space ~
\end_inset

Header
\end_layout

\begin_deeper
\begin_layout Standard
\begin_inset space ~
\end_inset


\end_layout

\end_deeper
\begin_layout Standard
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
end{multicols}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
There are also a few commands provided by 
\family sans
FoilTeX
\family default
 that aren't directly supported by LyX but I'll tell you what they do and
 how to use them in section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "sec:unsuppfoils"

\end_inset

.
\end_layout

\begin_layout Subsection
Building a Set of Foils
\end_layout

\begin_layout Standard
This section will give a simple introduction to using the different environments
 to build a set of foils.
 If you want to see an example set of foils, take a look at the 
\family typewriter
Foils.lyx
\family default
 file you find in LyX's 
\family typewriter
examples
\family default
 folder.
\end_layout

\begin_layout Subsubsection
Give It a Title Page
\end_layout

\begin_layout Standard
Unlike other classes that provide 
\family sans
Title
\family default
, 
\family sans
Author
\family default
, 
\family sans
Date
\family default
 and 
\family sans
Abstract
\family default
 environments, 
\family sans
foils
\family default
 creates the title on a page of its own.
 If you leave out the 
\family sans
Date
\family default
 environment LaTeX will substitute the current date (every time you regenerate
 the output).
\end_layout

\begin_layout Subsubsection
Start a New Foil
\end_layout

\begin_layout Standard
As I mentioned earlier, there are four ways of starting a new foil.
 For portrait foils you should use 
\family sans
Foilhead
\family default
 or 
\family sans
ShortFoilhead.

\family default
 The difference between these two environments is the amount of space between
 the title of the foil (the foilhead) and the body of the foil.
\end_layout

\begin_layout Standard
Landscape foils are generated using the 
\family sans
Rotatefoilhead
\family default
 and 
\family sans
ShortRotatefoilhead
\family default
 environments.
 Again the only difference is the spacing between foilhead and body.
 Both of the short versions have 0.5 inches less separation between the foilhead
 and the body.
 
\end_layout

\begin_layout Standard
One problem with the support for landscape foils is the requirement that
 you have to use the 
\family typewriter
dvips
\family default
 driver to generate the PostScript output otherwise the foils won't be rotated.
 It is possible to get landscape foils even if you haven't got the 
\family typewriter
dvips
\family default
 driver provided you can feed your foils sideways through your printer ;-)
\end_layout

\begin_layout Subsubsection
Theorems, Lemmas, Proofs and more
\end_layout

\begin_layout Standard
Due to a small bug in LyX you can't have two of the same type of these environme
nts directly following each other.
 They must be separated by something.
 If you try, you will just be extending the previous environment as if you
 had merged the two environments together.
 So, how do you get around this problem? The simplest option is to insert
 some text between the two environments or add a 
\family sans
LaTeX
\family default
 environment between the two with just a 
\begin_inset Quotes eld
\end_inset


\family typewriter
%
\family default

\begin_inset Quotes erd
\end_inset

 in it.
 This will force LyX to produce two separate environments and hence the
 correct LaTeX output.
 An example is provided in the example file included with the LyX distribution.
 Remember, this problem only occurs if you are trying to place two of the
 same type of theorem-like environments one directly after the other.
\end_layout

\begin_layout Subsubsection
Lists
\end_layout

\begin_layout Standard
You get all the commonly supported list styles found in other classes as
 well as two new ones.
 I'll only describe the new ones here.
 If you want to find out more about the other list environments check out
 the 
\emph on
User's Guide.

\emph default
 If you intend to use itemized lists you might also want to read about the
 
\family sans
Itemize
\begin_inset space ~
\end_inset

Bullet
\begin_inset space ~
\end_inset

Selection
\family default
 dialog described above in section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "sec:bullet"

\end_inset

.
\end_layout

\begin_layout Standard
The two new list styles, 
\family sans
TickList
\family default
 and 
\family sans
CrossList
\family default
, are designed to make it easier for you to create lists of do's and don'ts
 or right and wrong by providing dedicated environments that use a tick
 or a cross as the label of the list.
 These lists are in fact dedicated variants of the 
\family sans
Itemize
\family default
 environment.
 They do however require that you have the 
\family typewriter
psnfss
\family default
 packages installed.
\end_layout

\begin_layout Subsubsection
Figures and Tables
\end_layout

\begin_layout Standard

\family sans
FoilTeX
\family default
 redefines the floating tables and figures so that they appear exactly where
 they are in the text rather than pushing them to the top of the page or
 to some user specified location.
 In fact if you change the float placement settings they are simply ignored.
\end_layout

\begin_layout Subsubsection
Page Headers and Footers
\begin_inset CommandInset label
LatexCommand label
name "sec:foilfoot"

\end_inset


\end_layout

\begin_layout Standard

\family sans
My
\begin_inset space ~
\end_inset

Logo
\family default
 and 
\family sans
Restriction
\family default
 are two commands used to control the left-footer text string.
 The first is meant to allow you to include a graphic logo on your foils
 and defaults to 
\begin_inset Quotes eld
\end_inset

-Typeset by 
\family sans
FoilTeX
\family default
-
\begin_inset Quotes erd
\end_inset

.
 While the second is meant to provide a classification for the audience,
 
\emph on
e.
\begin_inset space \thinspace{}
\end_inset

g.
\emph default

\begin_inset space \space{}
\end_inset

Confidential.
 It is empty by default.
\end_layout

\begin_layout Standard
The remaining page corners can be filled by 
\family sans
Right
\begin_inset space ~
\end_inset

Footer
\family default
 (which defaults to page numbers), 
\family sans
Right
\begin_inset space ~
\end_inset

Header
\family default
 (top right) and 
\family sans
Left
\begin_inset space ~
\end_inset

Header
\family default
 (top left).
\end_layout

\begin_layout Subsection
Unsupported 
\family sans
FoilTeX
\family default
 Goodies
\begin_inset CommandInset label
LatexCommand label
name "sec:unsuppfoils"

\end_inset


\end_layout

\begin_layout Standard
All the commands mentioned below need to be set in a 
\family sans
LaTeX
\family default
 environment or as 
\family sans
TeX
\family default
 within another environment.
\end_layout

\begin_layout Subsubsection
Lengths
\end_layout

\begin_layout Standard
All lengths are adjusted using the 
\family typewriter

\backslash
setlength{
\family default
\emph on
lengthname
\family typewriter
\emph default
}{
\family default
\emph on
newlength
\family typewriter
\emph default
}
\family default
 command.
 Where 
\emph on
lengthname
\emph default
 should be replaced by the name given to the length you want to change and
 
\emph on
newlength
\emph default
 is the length value.
 All lengths should be specified in units of length such as inches (
\family typewriter
in
\family default
), millimeters (
\family typewriter
mm
\family default
) or points (
\family typewriter
pt
\family default
) or relative to some document or font-based length such as 
\family typewriter

\backslash
textwidth
\family default
.
 
\end_layout

\begin_layout Standard
It's possible to change the spacing between a foilhead and the body of the
 foil by adjusting the length specified by 
\family typewriter

\backslash
foilheadskip
\family default
.
 For example, to make 
\emph on
all
\emph default
 foilheads 0.5
\begin_inset space \space{}
\end_inset

in closer to their bodies put the following in the preamble: 
\family typewriter

\backslash
setlength{
\backslash
foilheadskip}{-0.5in}
\end_layout

\begin_layout Standard
The spacings around floats can be adjusted by setting these lengths:
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMMMMMM

\family typewriter

\backslash
abovefloatskip
\family default
 Separation between the text and the top of the float
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMMMMMM

\family typewriter

\backslash
abovecaptionskip
\family default
 Separation between the float and the caption
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMMMMMM

\family typewriter

\backslash
belowcaptionskip
\family default
 Separation between the caption and the following text
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMMMMMM

\family typewriter

\backslash
captionwidth
\family default
 You can make the captions narrower than the surrounding text by adjusting
 this length.
 Best done relative to 
\family typewriter

\backslash
textwidth
\family default
.
\end_layout

\begin_layout Standard
There are also several title page related lengths that you may find useful
 if you have a long title or several authors:
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMMMMMM

\family typewriter

\backslash
abovetitleskip
\family default
 Separation from headers to 
\family sans
Title
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMMMMMM

\family typewriter

\backslash
titleauthorskip
\family default
 between 
\family sans
Title
\family default
 and 
\family sans
Author
\family default
 environments
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMMMMMM

\family typewriter

\backslash
authorauthorskip
\family default
 between multiple 
\family sans
Author
\family default
 lines
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMMMMMM

\family typewriter

\backslash
authordateskip
\family default
 between the 
\family sans
Author
\family default
 and the 
\family sans
Date
\end_layout

\begin_layout Labeling
\labelwidthstring MMMMMMMMMMM

\family typewriter

\backslash
dateabstractskip
\family default
 between the 
\family sans
Date
\family default
 and the 
\family sans
Abstract
\end_layout

\begin_layout Standard
The last length related command affects all the list environments.
 If you place 
\family typewriter

\backslash
zerolistvertdimens
\family default
 
\emph on
inside
\emph default
 a list environment then all the vertical spacing between the list items
 is removed.
 Note that this is a command not a length so it doesn't require 
\family typewriter

\backslash
setlength
\family default
 like the stuff mentioned above.
\end_layout

\begin_layout Subsubsection
Headers and Footers
\end_layout

\begin_layout Standard
The 
\family typewriter

\backslash
LogoOn
\family default
 and 
\family typewriter

\backslash
LogoOff
\family default
 commands control whether the logo in the 
\family sans
MyLogo
\family default
 definition appear on a given page.
 If you put 
\family typewriter

\backslash
LogoOff
\family default
 in the preamble then none of the foils will have the logo on them.
 If you don't want the logo on a particular page place the 
\family typewriter

\backslash
LogoOff
\family default
 directly after the foilhead of that page and the 
\family typewriter

\backslash
LogoOn
\family default
 directly after the next foilhead.
\end_layout

\begin_layout Standard
If you decide to use the 
\family sans
fancy
\family default
 page style setting in the 
\family sans
Document
\begin_inset space ~
\end_inset

Layout
\family default
 dialog you should probably add 
\family typewriter

\backslash
let
\backslash
headwidth
\backslash
textwidth
\family default
 to your preamble so headers and footers on landscape pages are correctly
 placed when rotated.
 This is due to some clashes between the page layouts provided by the 
\family sans
fancyheadings
\family default
 package and the 
\family sans
foils
\family default
 class.
\end_layout

\begin_layout Section
Hollywood (Hollywood spec scripts)
\end_layout

\begin_layout Standard
by 
\shape smallcaps
Garst Reese
\end_layout

\begin_layout Subsection
Introduction
\end_layout

\begin_layout Standard
Getting the format of a Hollywood script right is a 
\begin_inset Quotes eld
\end_inset

rite of passage.
\begin_inset Quotes erd
\end_inset

 It is designed to make the readers focus on content and to be easy and
 familiar for the actors to read.
 Each page of a script should be one minute of film.
 Nothing goes in a script that you cannot see or hear on screen.
 The courier 12 pt font should be used throughout.
 No italics.
\end_layout

\begin_layout Subsection
Special problems
\end_layout

\begin_layout Standard
Speakers' lines should NEVER break in mid-sentence.
 If a speaker's lines continue over a page break, repeat the 
\family sans
Speaker
\family default
 title followed by (Cont'd).
\end_layout

\begin_layout Subsection
Special features
\end_layout

\begin_layout Standard
Insert the 
\family sans
Speaker
\family default
 names as labels then cross-reference the label to insert the name.
 The cross-reference dialog will show the current cast of characters.
 You can use this to insert the speaker name in narratives also.
\end_layout

\begin_layout Subsection
Paper size and Margins
\end_layout

\begin_layout Standard
USLetter, left 1.6in, right 0.75in, top 0.5in, bottom 0.75in
\end_layout

\begin_layout Subsection
Environments
\end_layout

\begin_layout Standard
The following environments are available.
 You can use hollywood.bind to get the bind keys shown at the right.
\end_layout

\begin_layout Itemize

\family sans
Standard
\begin_inset Newline newline
\end_inset


\family default
Used where nothing else works.
 Try to avoid it.
\end_layout

\begin_layout Itemize

\family sans
FADE_IN
\family default
:
\begin_inset space \hfill{}
\end_inset


\family sans
M-z S-I
\family default

\begin_inset Newline newline
\end_inset

Usually followed by something like 
\begin_inset Quotes eld
\end_inset

on Sally waking up.
\begin_inset Quotes erd
\end_inset


\end_layout

\begin_layout Itemize

\family sans
INT:
\begin_inset space \hfill{}
\end_inset

M-z i
\begin_inset Newline newline
\end_inset


\family default
Introduces a new INTERIOR camera set-up.
 Always followed by DAY or NIGHT, or something similar to define the lighting
 required.
 Everthing on this line in CAPS.
\end_layout

\begin_layout Itemize

\family sans
EXT:
\begin_inset space \hfill{}
\end_inset

M-z e
\begin_inset Newline newline
\end_inset


\family default
Introduces a new EXTERIOR camera set-up.
 Everthing on this line in CAPS.
\end_layout

\begin_layout Itemize

\family sans
Speaker
\begin_inset space \hfill{}
\end_inset

M-z s
\begin_inset Newline newline
\end_inset


\family default
The character speaking.
\end_layout

\begin_layout Itemize

\family sans
Parenthetical
\begin_inset space \hfill{}
\end_inset

M-z p
\begin_inset Newline newline
\end_inset


\family default
Instructions to the speaker.
 The () are automatically inserted, but only the ( will show in LyX.
 Both will be printed.
\end_layout

\begin_layout Itemize

\family sans
Dialogue
\begin_inset space \hfill{}
\end_inset

M-z d
\begin_inset Newline newline
\end_inset


\family default
What the 
\family sans
Speaker
\family default
 says.
\end_layout

\begin_layout Itemize

\family sans
Transition
\begin_inset space \hfill{}
\end_inset

M-z t
\begin_inset Newline newline
\end_inset


\family default
Camera movement instruction.
 e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

CUT TO:
\end_layout

\begin_layout Itemize

\family sans
FADE OUT:
\begin_inset space \hfill{}
\end_inset

M-z S-I
\end_layout

\begin_layout Itemize

\family sans
Author
\begin_inset space \hfill{}
\end_inset

M-z S-A
\end_layout

\begin_layout Itemize

\family sans
Title
\begin_inset space \hfill{}
\end_inset

M-z S-T
\end_layout

\begin_layout Itemize

\family sans
Right_Address
\begin_inset space \hfill{}
\end_inset

M-z r
\end_layout

\begin_layout Subsection
Script jargon
\end_layout

\begin_layout Itemize
(O.S) — off screen
\end_layout

\begin_layout Itemize
(V.0) — voice over
\end_layout

\begin_layout Itemize
b.
\begin_inset space \thinspace{}
\end_inset

g.
 — background
\end_layout

\begin_layout Itemize
C.U.
 — close-up
\end_layout

\begin_layout Itemize
PAN — camera movement
\end_layout

\begin_layout Itemize
INSERT — cut to close-up of
\end_layout

\begin_layout Section
ijmpc and ijmpd
\end_layout

\begin_layout Standard
by 
\noun on
Panayotis Papasotiriou
\end_layout

\begin_layout Subsection
Overview
\end_layout

\begin_layout Standard
The ijmpc package is a set of macros that facilitates electronic manuscript
 submission to the 
\emph on
International Journal of Modern Physics C
\emph default
.
 Similarly, the ijmpd package is for creating manuscripts to be submitted
 to the 
\emph on
International Journal of Modern Physics D
\emph default
.
 Both journals are published by World Scientific.
 The corresponding document classes are named 
\family typewriter
ws-ijmpc.cls
\family default
 and 
\family typewriter
ws-ijmpd.cls
\family default
, respectively.
 These files, together with instructions for the authors, can be downloaded
 from the sites 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://www.worldscinet.com/ijmpc/mkt/guidelines.shtml
\end_layout

\end_inset

 and 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://www.worldscinet.com/ijmpd/mkt/guidelines.shtml
\end_layout

\end_inset

.
 Both packages are modified versions of the standard 
\begin_inset Quotes eld
\end_inset

article
\begin_inset Quotes erd
\end_inset

 package, and they are almost (but not exactly) identical.
 Most of their features are supported by LyX.
 I have used LyX successfully to write articles submitted to both journals
 without any problem.
\end_layout

\begin_layout Subsection
Writing a paper
\end_layout

\begin_layout Standard
As usual, the easiest way to write a paper is to start with a template.
 Click on 
\family sans
File\SpecialChar \menuseparator
New from
\family default
 
\family sans
\bar under
T
\bar default
emplate
\family default
, then choose the 
\family typewriter
ijmpc.lyx
\family default
 or 
\family typewriter
ijmpd.lyx
\family default
 template.
 This will give an (almost) empty document that includes the most common
 fields found in a manuscript.
 Simply overwrite the existing text (including the brackets, 
\family typewriter
<>
\family default
) with your text.
 You should keep in mind the following remarks.
\end_layout

\begin_layout Enumerate
LyX won't let you change the font size and the page style of the document,
 because such modifications are not allowed by both packages.
\end_layout

\begin_layout Enumerate
The language of the document should not be changed.
 Before previewing your paper, be sure that the babel package is not used.
 To do this, click on 
\family sans
Tools\SpecialChar \menuseparator
Preferences
\family default
, select the 
\family sans
Lang Opts
\family default
 tab, deselect the 
\family sans
Use babel
\family default
 checkbox in the language settings, and click on 
\family sans
Apply
\family default
 (or 
\family sans
Save
\family default
, if you wish to make this change permanent).
\end_layout

\begin_layout Enumerate
The 
\begin_inset Quotes eld
\end_inset

Keywords
\begin_inset Quotes erd
\end_inset

 style must be used to define keywords.
\end_layout

\begin_layout Enumerate
The ijmpc package provides a style named 
\begin_inset Quotes eld
\end_inset

Classification Codes
\begin_inset Quotes erd
\end_inset

, which can be used to define classification codes, such as PACS numbers.
 Note that this facility is not supported by the ijmpd package.
\end_layout

\begin_layout Enumerate
Several new environments are available: 
\begin_inset Quotes eld
\end_inset

Definition
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Step
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Example
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Remark
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Notation
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Theorem
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Proof
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Corollary
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Lemma
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Proposition
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Prop
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Question
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Claim
\begin_inset Quotes erd
\end_inset

, and 
\begin_inset Quotes eld
\end_inset

Conjecture
\begin_inset Quotes erd
\end_inset

.
 Their use is more or less obvious.
 LyX supports all these environments; it will use the proper label, text
 style, and numbering scheme for each of them.
\end_layout

\begin_layout Enumerate
Both packages use basic citations; the natbib package should not be used.
 In LyX, citation references are shown as usual; in the output, citations
 are shown as superscripts.
 If you want to use a citation as normal text, you should use the 
\family typewriter
refcite
\family default
 command, e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\begin_inset Quotes eld
\end_inset

See Ref.
\begin_inset space \space{}
\end_inset


\family typewriter

\backslash
refcite{key}
\family default

\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Enumerate
There is no 
\begin_inset Quotes eld
\end_inset

Acknowledgments
\begin_inset Quotes erd
\end_inset

 section in both packages.
 To put acknowledgments, just use the 
\begin_inset Quotes eld
\end_inset

Section*
\begin_inset Quotes erd
\end_inset

 environment.
\end_layout

\begin_layout Enumerate
Appendices may be added to the paper, 
\emph on
after
\emph default
 the Acknowledgments and 
\shape italic
before
\shape default
 the References.
 LyX provides a special environment, called 
\begin_inset Quotes eld
\end_inset

Appendices Section
\begin_inset Quotes erd
\end_inset

 which marks the beginning of the appendices.
 This environment should be left blank; it just sends a LaTeX command, but
 nothing is really printed.
 In LyX, the word 
\begin_inset Quotes eld
\end_inset

Appendix
\begin_inset Quotes erd
\end_inset

 is printed with blue letters, as a signal that all sections after that
 point are appendices.
 To write an appendix, use the 
\begin_inset Quotes eld
\end_inset

Appendix
\begin_inset Quotes erd
\end_inset

 environment.
 LyX will number each appendix with capital letters, as required by both
 journals.
 Note that 
\begin_inset Quotes eld
\end_inset

Appendices Section
\begin_inset Quotes erd
\end_inset

 
\emph on
must
\emph default
 be present before the first appendix; if not, all appendices will be numbered
 as normal sections in the output.
\end_layout

\begin_layout Enumerate
The ijmpc and the ijmpd packages use the 
\family typewriter
tbl
\family default
 command to implement table captions.
 As a result, a table created by LyX is printed correctly, but its caption
 is ignored.
 However, you can use some TeX code to overcome this problem, so that captions
 are printed as expected.
 To do so, create a float table as usual, remove the caption, and replace
 it with the TeX code 
\family typewriter

\backslash
tbl{
\emph on
your table caption
\emph default
}{
\family default
 (sic); you must also the TeX code 
\family typewriter
}
\family default
 immediately after the tabular material.
 Study the example table included in the template files to see how this
 trick is implemented.
 Alternatively, If you need table captions, you should implement the whole
 table float in a 
\family typewriter
.tex
\family default
 file, then include this file to the LyX document (
\family sans
Insert\SpecialChar \menuseparator
File\SpecialChar \menuseparator
Child
\begin_inset space ~
\end_inset

Document
\family default
).
 Details on how to create a table float can be found in the files 
\family typewriter
ws-ijmpc.tex
\family default
 and 
\family typewriter
ws-ijmpd.tex
\family default
, included in the corresponding packages.
\end_layout

\begin_layout Subsection
Preparing a paper for submission
\end_layout

\begin_layout Standard
Before you submit your paper you must export the LyX document as a LaTeX
 file (
\family sans
File\SpecialChar \menuseparator
Export\SpecialChar \menuseparator
LaTeX
\family default
)
\begin_inset Foot
status open

\begin_layout Plain Layout
Actually you have the choice between LaTeX (plain) and pdflatex.
 If you intend to use pdflatex to prepare the paper, you should use the
 pdflatex option so that included graphics are converted to PDF format,
 ready for use by pdflatex.
\end_layout

\end_inset

, then make the following changes to the resulting 
\family typewriter
.tex
\family default
 file.
\end_layout

\begin_layout Enumerate
Remove the comment lines before the 
\family typewriter

\backslash
documentclass
\family default
 command.
\end_layout

\begin_layout Enumerate
Remove everything between (and including) the 
\family typewriter

\backslash
makeatletter
\family default
 and 
\family typewriter

\backslash
makeatother
\family default
 commands, except for any commands you specifically put into the LaTeX preamble.
\end_layout

\begin_layout Standard
The modified 
\family typewriter
.tex
\family default
 file should be saved and processed through LaTeX as many times as necessary.
 You may also want to check the resulting 
\family typewriter
.dvi
\family default
 document.
\end_layout

\begin_layout Subsection
Use of TeX code
\end_layout

\begin_layout Standard
The use of TeX code is reduced to two commands, which must be placed at
 the top of the document.
 If you started writing your paper by using the 
\family typewriter
ijmpc.lyx
\family default
 or the 
\family typewriter
ijmpd.lyx
\family default
 template, the TeX code needed is already in its place; you usually don't
 need to delete it.
 You may only modify the first TeX code to specify the information printed
 to the top of odd and even pages (authors' names and short paper's title,
 respectively).
 This TeX code must have the form 
\family typewriter

\backslash
markboth{Authors' Names}{Short Paper's Title}
\family default
.
\end_layout

\begin_layout Section
iopart
\end_layout

\begin_layout Standard
by 
\noun on
Uwe Stöhr
\end_layout

\begin_layout Subsection
Overview
\end_layout

\begin_layout Standard
The iopart package provides a document class to create electronic manuscript
 submission to the journals published by the Institute of Physics.
 Instructions for the authors how to create a paper using the iopart class
 can be downloaded together with the iopart package from the site 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

ftp://ftp.iop.org/pub/journals/latex2e
\end_layout

\end_inset

.
\end_layout

\begin_layout Subsection
Writing a paper
\end_layout

\begin_layout Standard
The easiest way to write a paper is to start with the file 
\emph on
IOP-article.lyx
\emph default
 that is available in LyX's examples files folder.
 Open this file, save it under a new name, and start writing.
 The example file explains how to use the special text environments.
 Here are the most important advices:
\end_layout

\begin_layout Itemize
To be able to compile your document to a PDF, PS, or DVI, ensure that the
 two options 
\family sans
Use AMS math package
\family default
 in the document settings under 
\family sans
Math Options
\family default
 are not used!
\end_layout

\begin_layout Itemize

\size normal
The title environment defines the kind of your paper.
 So use one of the following environments for the title:
\end_layout

\begin_deeper
\begin_layout Itemize

\family sans
\size normal
Title
\family default
 for a Paper
\end_layout

\begin_layout Itemize

\family sans
\size normal
Review
\family default
 for a Review
\end_layout

\begin_layout Itemize

\family sans
\size normal
Topical
\family default
 for a Topical review
\end_layout

\begin_layout Itemize

\family sans
\size normal
Comment
\family default
 for a Comment
\end_layout

\begin_layout Itemize

\family sans
\size normal
Note
\family default
 for a Note
\end_layout

\begin_layout Itemize

\family sans
\size normal
Paper
\family default
 for a Paper (same as Title)
\end_layout

\begin_layout Itemize

\family sans
\size normal
Prelim
\family default
 for a Preliminary communication
\end_layout

\begin_layout Itemize

\family sans
\size normal
Rapid
\family default
 for a Rapid communication
\end_layout

\begin_layout Itemize

\family sans
\size normal
Letter
\family default
 for a Letter to the editor
\end_layout

\end_deeper
\begin_layout Itemize

\size normal
All title environments except of 
\family sans
Letter
\family default
 can have an optional short title.
\end_layout

\begin_layout Itemize
There is a general title environment 
\family sans
Article
\family default
 which is not directly supported by the LyX.
 This can be used as TeX code when your document doesn't fit into one of
 the other title types.
\end_layout

\begin_layout Standard
For more informations like hints for special table and formula formatting,
 look at the IOP author guidelines.
\end_layout

\begin_layout Section
Kluwer
\end_layout

\begin_layout Standard
by 
\noun on
Panayotis Papasotiriou
\end_layout

\begin_layout Subsection
Overview
\end_layout

\begin_layout Standard
The Kluwer package is a set of macros produced by Kluwer Academic Publishers
 that facilitates electronic manuscript submission to the journals they
 publish.
 Most known of them (at least in my domain of interest) are 
\emph on
Astrophysics and Space Science
\emph default
 and 
\emph on
Solar Physics
\emph default
, but there are many others (see a complete list at 
\begin_inset Flex URL
status open

\begin_layout Plain Layout

http://www.wkap.nl/jrnllist.htm/JRNLHOME
\end_layout

\end_inset

).
 The Kluwer package may be downloaded from the site 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://www.wkap.nl/kaphtml.htm/STYLEFILES
\end_layout

\end_inset

.
 A complete user guide is contained in that package (but it can also be
 downloaded separately).
\end_layout

\begin_layout Standard
LyX supports many features of the package but not everything.
 However, the TeX code needed is reduced to some 
\begin_inset Quotes eld
\end_inset

peculiar
\begin_inset Quotes erd
\end_inset

 commands of the package (see
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:kluwer_peculiarities"

\end_inset

).
 I have recently used LyX to write an article submitted to the 
\emph on
Astrophysics and Space Science
\emph default
 without any problem.
\end_layout

\begin_layout Subsection
Writing a paper
\end_layout

\begin_layout Standard
The easiest way to write a paper is to start with the Kluwer template file.
 Click on 
\family sans
File\SpecialChar \menuseparator
New from
\family default
 
\family sans
Template
\family default
, then choose the 
\family typewriter
kluwer.lyx
\family default
 template.
 This will give an (almost) empty document that includes the most common
 fields found in a manuscript and a short description of their use.
 As in most templates, simply overwrite the existing text (including the
 brackets, 
\family typewriter
<>
\family default
) with the correct information.
\end_layout

\begin_layout Subsection
Preparing a paper for submission
\end_layout

\begin_layout Standard
As in the AASTeX package, before you submit your paper to a journal you
 must 
\begin_inset Quotes eld
\end_inset

postprocess
\begin_inset Quotes erd
\end_inset

 it as follows.
\end_layout

\begin_layout Enumerate
Export your paper as a LaTeX file.
 To do this, click on 
\family sans
File\SpecialChar \menuseparator
Export\SpecialChar \menuseparator
LaTeX
\family default
.
 
\end_layout

\begin_layout Enumerate
Edit the resulting 
\family typewriter
.tex
\family default
 file with a text editor and make the following changes
\end_layout

\begin_deeper
\begin_layout Enumerate
remove the comment lines before the 
\family typewriter

\backslash
documentclass
\family default
 command,
\end_layout

\begin_layout Enumerate
remove everything between (and including) the 
\family typewriter

\backslash
makeatletter
\family default
 and 
\family typewriter

\backslash
makeatother
\family default
 commands, except for any commands you specifically put into the LaTeX preamble.
\end_layout

\begin_layout Standard
Save the resulting 
\family typewriter
.tex
\family default
 file.
\end_layout

\end_deeper
\begin_layout Enumerate
Run the 
\family typewriter
.tex
\family default
 file through LaTeX as many times as necessary (usually up to three).
\end_layout

\begin_layout Enumerate
View the resulting 
\family typewriter
.dvi
\family default
 document using, e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\family sans
xdvi
\family default
, and check if everything is OK (it should, if you didn't make any mistake).
\end_layout

\begin_layout Subsection
\begin_inset Quotes eld
\end_inset

Peculiarities
\begin_inset Quotes erd
\end_inset

 of the Kluwer package
\begin_inset CommandInset label
LatexCommand label
name "subsec:kluwer_peculiarities"

\end_inset


\end_layout

\begin_layout Standard
The Kluwer package has the following 
\begin_inset Quotes eld
\end_inset

peculiarities
\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Enumerate
It is possible to write multiple articles in the same LaTeX file
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
I can't imagine any good reason to do this.
\end_layout

\end_inset

.
 Each article must be included in the environment 
\begin_inset Quotes eld
\end_inset

article
\begin_inset Quotes erd
\end_inset

.
 Unfortunately, this environment cannot be omitted, even if you write just
 one article.
 Therefore, each article starts with the command 
\family typewriter

\backslash
begin{article}
\family default
 and, obviously, ends with the command 
\family typewriter

\backslash
end{article}
\family default
.
 Although this can be implemented in LyX, I didn't included it, since it
 looks ugly and can confuse the novice user.
 Therefore, you need to enter them directly and mark them as LaTeX code
 (the well-known 
\begin_inset Quotes eld
\end_inset

TeX code
\begin_inset Quotes erd
\end_inset

).
\end_layout

\begin_layout Enumerate
Information given at the beginning of the article (i.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

title, subtitle, author, institution, running title, running author, abstract
 and keywords) must be included in an environment called 
\begin_inset Quotes eld
\end_inset

opening
\begin_inset Quotes erd
\end_inset

.
 This is not implemented in LyX, so you must enter title, subtitle etc.
\begin_inset space ~
\end_inset

between two TeX code lines (
\family typewriter

\backslash
begin{opening}
\family default
 and 
\family typewriter

\backslash
end{opening}
\family default
).
\end_layout

\begin_layout Enumerate
According to the user manual, the label of each bibliography item must be
 written as 
\family typewriter

\backslash
protect
\backslash
citeauthoryear{
\family default
\emph on
author(s)
\family typewriter
\emph default
}{
\family default
\emph on
year
\family typewriter
\emph default
}
\family default
.
\end_layout

\begin_layout Standard
The 
\family typewriter
kluwer.lyx
\family default
 template takes care of all these 
\begin_inset Quotes eld
\end_inset

peculiarities
\begin_inset Quotes erd
\end_inset

.
 If you start a new paper using this template you don't need to do anything
 special.
 Just 
\end_layout

\begin_layout Enumerate
don't delete the TeX code included in the template, and
\end_layout

\begin_layout Enumerate
copy the example bibliography item included in the template and modify it
 as necessary to enter new bibliography items.
\end_layout

\begin_layout Section
Koma-Script
\end_layout

\begin_layout Standard
by 
\noun on
Bernd Rellermeyer
\end_layout

\begin_layout Subsection
Overview
\end_layout

\begin_layout Standard
The LyX document classes 
\emph on
article (koma-script)
\emph default
, 
\emph on
report (koma-script)
\emph default
, 
\emph on
book
\emph default
 
\emph on
(koma-script)
\emph default
, and 
\emph on
letter
\emph default
 
\emph on
(koma-script)
\emph default
 correspond to the LaTeX document classes 
\family typewriter
scrartcl.cls
\family default
, 
\family typewriter
scrreprt.cls
\family default
, 
\family typewriter
scrbook.cls
\family default
, and 
\family typewriter
scrlettr.cls
\family default
, resp.
\begin_inset space ~
\end_inset

of the Koma-Script family.
 They are replacements for the standard document classes 
\family typewriter
article.cls
\family default
, 
\family typewriter
report.cls
\family default
, 
\family typewriter
book.cls
\family default
 and 
\family typewriter
letter.cls
\family default
, resp., and fit better to European typography conventions in a number of
 points.
\end_layout

\begin_layout Itemize
Standard character size is 11pt in 
\emph on
article (koma-script)
\emph default
, 
\emph on
report (koma-script)
\emph default
, and 
\emph on
book (koma-script)
\emph default
, and 12pt in 
\emph on
letter (koma-script)
\emph default
.
\end_layout

\begin_layout Itemize
Headings, labels of the description environment, and a number of elements
 of the 
\emph on
letter (koma-script)
\emph default
 document class are set in a bold sans serif font.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
There is a big difference between the bold sans serif old cm fonts and new
 ec fonts, especially in the appearance of headings.
 In comparison, the ec bold sans serif fonts look a bit thin.
 Here the LaTeX package 
\family typewriter
cmsd.sty by
\family default
 
\shape smallcaps
Walter Schmidt
\shape default
 helps to produce the 
\begin_inset Quotes eld
\end_inset

usual
\begin_inset Quotes erd
\end_inset

 appearance when using the ec fonts.
\end_layout

\end_inset

 The numbering of chapter headings is made in the same way as the numbering
 of section headings, that is without the extra line 
\begin_inset Quotes eld
\end_inset

Chapter\SpecialChar \ldots{}

\begin_inset Quotes erd
\end_inset

.
 In addition, the appearance of the headings can be modified by using a
 number of options (in LyX to be entered in the field 
\family sans
Extra
\begin_inset space ~
\end_inset

Options
\family default
 of the dialog 
\family sans
Layout\SpecialChar \menuseparator
Document
\family default
).
 
\end_layout

\begin_layout Itemize
The main means in the Koma-Script document classes to design the type area
 are the options 
\family sans
BCOR
\family default
 and 
\family sans
DIV
\family default
 (in LyX to be entered in the extra class options field in the dialog 
\family sans
Document\SpecialChar \menuseparator
Settings
\family default
).
 They make a clearer modification of page margins possible as do the options
 of the dialog 
\family sans
Document\SpecialChar \menuseparator
Settings
\family default
.
 
\end_layout

\begin_layout Itemize
The LaTeX document classes of the Koma-Script family define a number of
 additional commands.
 Those part of it which makes sense in LyX is implemented in corresponding
 paragraph types.
\end_layout

\begin_layout Standard
Detailed descriptions of the LaTeX document classes of the Koma-Script family
 can be found in the Koma-Script documentation 
\emph on
scrguide
\emph default
 (German) and 
\emph on
scrguien
\emph default
 (English).
\end_layout

\begin_layout Subsection
article (koma-script), report (koma-script), and book (koma-script)
\end_layout

\begin_layout Standard
The document classes 
\emph on
article (koma-script)
\emph default
, 
\emph on
report (koma-script)
\emph default
, and 
\emph on
book
\emph default
 
\emph on
(koma-script)
\emph default
 are implemented in the layout files 
\family typewriter
scrartcl.layout
\family default
, 
\family typewriter
scrreprt.layout
\family default
, and 
\family typewriter
scrbook.layout
\family default
, resp.
 They contain all the paragraph types of the corresponding standard document
 classes 
\emph on
article
\emph default
, 
\emph on
report
\emph default
, and 
\emph on
book
\emph default
, resp., partly modified, with the exception of the LyX specific 
\family sans
List
\family default
-type, which is replaced by the new 
\family sans
Labeling
\family default
-type having the same functionality.
 Beside the 
\family sans
Labeling
\family default
-Type there is a number of new paragraph types added.
 They are 
\emph on
not
\emph default
 part of 
\emph on
letter (koma-script)
\emph default
.
\end_layout

\begin_layout Itemize

\family sans
Addpart, Addchap
\family default
, 
\family sans
Addsec
\family default
: are equivalents to 
\family sans
Part*, Chapter*
\family default
 and 
\family sans
Section*
\family default
, resp., additionally inserting an entry in the table of contents.
 
\family sans
Addpart
\family default
 and 
\family sans
Addchap
\family default
 are not contained in 
\emph on
article (koma-script)
\emph default
.
\end_layout

\begin_layout Itemize

\family sans
Addchap*
\family default
, 
\family sans
Addsec*
\family default
: behave exactly as 
\family sans
Addchap
\family default
 and 
\family sans
Addsec
\family default
, resp., additionally clearing running heads.
 
\family sans
Addchap*
\family default
 is not contained in 
\emph on
article (koma-script)
\emph default
.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
There is also an 
\family typewriter

\backslash
addpart*
\family default
 command in 
\emph on
book (koma-script)
\emph default
 and in 
\emph on
report (koma-script)
\emph default
, but since this is identical to 
\family sans
Part*
\family default
, is has not been implemented in LyX.
\end_layout

\end_inset


\end_layout

\begin_layout Itemize

\family sans
Minisec
\family default
: generates a heading directly above the following paragraph in the standard
 character size without affecting the structure of the document.
\end_layout

\begin_layout Itemize

\family sans
Captionabove
\family default
 and 
\family sans
Captionbelow
\family default
 are special captions which respect the different space settings needed
 for captions placed above or below an element (if you follow strict typographic
 rules, you might want to place table captions always above the table).
 You can also use the class option 
\family typewriter
tablecaptionsabove
\family default
, which will switch 
\family sans
caption
\family default
 to 
\family sans
captionabove
\family default
 for tables and 
\family sans
captionbelow
\family default
 for figures.
 You need at least Koma-Script version 2.8q to use this.
\end_layout

\begin_layout Itemize

\family sans
Dictum
\family default
: can be used to set a bonmot, e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

at the beginning of a chapter.
 If you use the optional argument (
\family sans
Insert\SpecialChar \menuseparator
Short
\begin_inset space ~
\end_inset

Title
\family default
), you can insert the dictum's author there.
 Dictum and author are separated by a line.
 You need at least Koma-Script version 2.8q to use this.
 
\family sans
Dictum
\family default
 is not contained in 
\emph on
article (koma-script)
\emph default
.
\end_layout

\begin_layout Standard
The following types, together with the standard types 
\family sans
Title
\family default
, 
\family sans
Author
\family default
, and 
\family sans
Date
\family default
, form the title area of the document.
 They must be entered ahead of the first 
\begin_inset Quotes eld
\end_inset

ordinary
\begin_inset Quotes erd
\end_inset

 paragraph.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
The corresponding LaTeX commands must appear before the 
\family typewriter

\backslash
maketitle
\family default
 command.
\end_layout

\end_inset

 When such a type is used more than once, the latter usage overwrites the
 former one, that means, for every type only the latest usage is valid.
 The order of the different types however has, like 
\family sans
Title
\family default
, 
\family sans
Author
\family default
, and 
\family sans
Date
\family default
, no effect on the appearance of the produced document.
\end_layout

\begin_layout Itemize

\family sans
Subject
\family default
: produces a centered paragraph above the ordinary title (
\family sans
Title
\family default
, 
\family sans
Author
\family default
, 
\family sans
Date
\family default
) for the subject of the document.
\end_layout

\begin_layout Itemize

\family sans
Publishers
\family default
: produces a centered paragraph below the ordinary title (
\family sans
Title
\family default
, 
\family sans
Author
\family default
, 
\family sans
Date
\family default
) for the publishers' name.
\end_layout

\begin_layout Itemize

\family sans
Dedication
\family default
: in 
\emph on
report (koma-script)
\emph default
 and 
\emph on
book (koma-script)
\emph default
 produces a centered paragraph on its own page behind the title page, or
 in 
\emph on
article (koma-script)
\emph default
 produces a centered paragraph below the ordinary title (
\family sans
Title
\family default
, 
\family sans
Author
\family default
, 
\family sans
Date
\family default
, 
\family sans
Publishers
\family default
) for a dedication.
\end_layout

\begin_layout Itemize

\family sans
Titlehead
\family default
: produces a left aligned paragraph above the ordinary title (
\family sans
Title
\family default
, 
\family sans
Author
\family default
, 
\family sans
Date
\family default
, 
\family sans
Subject
\family default
) for a document`s head.
\end_layout

\begin_layout Itemize

\family sans
Uppertitleback
\family default
: produces in a double-sided print in 
\emph on
report (koma-script)
\emph default
 and 
\emph on
book (koma-script)
\emph default
 a left-aligned paragraph at the top of the title page`s back or has no
 effect in a single-sided print or in 
\emph on
article (koma-script)
\emph default
.
\end_layout

\begin_layout Itemize

\family sans
Lowertitleback
\family default
: produces in a double-sided print in 
\emph on
report (koma-script)
\emph default
 and 
\emph on
book (koma-script)
\emph default
 a left-aligned paragraph at the bottom of the title page`s back or has
 no effect in a single-sided print or in 
\emph on
article (koma-script)
\emph default
.
\end_layout

\begin_layout Itemize

\family sans
Extratitle
\family default
: produces a special 
\begin_inset Quotes eld
\end_inset

dirty
\begin_inset Quotes erd
\end_inset

 page ahead of the actual document containing a paragraph without special
 formatting.
\end_layout

\begin_layout Standard
The layout files for the document classes 
\emph on
article (koma-script)
\emph default
, 
\emph on
report (koma-script)
\emph default
, and 
\emph on
book (koma-script)
\emph default
 do include the file 
\family typewriter
scrmacros.inc
\family default
.
 This is thought of as a place to define your own types.
 Copy scrmacros
\family typewriter
.inc
\family default
 in your personal layout directory and edit the file!
\end_layout

\begin_layout Subsection
letter (koma-script)
\end_layout

\begin_layout Standard
\noindent
The document class 
\emph on
letter (koma-script)
\emph default
 is implemented in the layout file 
\family typewriter
scrlettr.layout
\family default
.
 It contains all the paragraph types of the corresponding standard document
 class 
\emph on
letter
\emph default
, partly modified, with the exception of the LyX specific types 
\family sans
LyX-Code
\family default
 and 
\family sans
Comment
\family default
 and the 
\family sans
List
\family default
 type, which is replaced by the new 
\family sans
Labeling
\family default
 type.
 In addition, it contains, in contrast to the standard document class, the
 standard types 
\family sans
LaTeX
\family default
, 
\family sans
Quotation
\family default
, 
\family sans
Quote
\family default
, and 
\family sans
Verse
\family default
.
 Furthermore, there are a number of new letter specific types.
\end_layout

\begin_layout Standard
The appearance of the letter produced by this document class can be controlled
 by a number of LaTeX commands, which you can put in the LaTeX preamble.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
For example, the standard appearance of the letter`s heading, consisting
 of name and address, is quite self-willed.
 An 
\begin_inset Quotes eld
\end_inset

ordinary
\begin_inset Quotes erd
\end_inset

 heading is produced by the following LaTeX commands in the preamble:
\end_layout

\begin_layout LyX-Code

\backslash
firsthead{
\backslash
parbox[b]{
\backslash
textwidth}
\end_layout

\begin_layout LyX-Code
  {
\backslash
ignorespaces 
\backslash
fromname
\backslash

\backslash
 
\backslash
ignorespaces 
\backslash
fromaddress}} 
\end_layout

\begin_layout LyX-Code

\backslash
nexthead{
\backslash
parbox[b]{
\backslash
textwidth}
\end_layout

\begin_layout LyX-Code
  {
\backslash
ignorespaces 
\backslash
fromname 
\backslash
hfill 
\backslash
ignorespaces 
\backslash
pagename
\backslash
 
\backslash
thepage}}
\end_layout

\end_inset

 A detailed German description of such LaTeX commands can be found in the
 Koma-Script documentation 
\emph on
scrguide
\emph default
.
 With it, the letter's author can produce his personal letter layout.
\end_layout

\begin_layout Standard
The types 
\family sans
Letter
\family default
 and 
\family sans
Opening
\family default
 define the beginning of the letter and must be used in every letter.
 To emphasize them in the LyX document class, they are marked with the letter
 
\shape italic
L
\shape default
 or 
\shape italic
O
\shape default
, resp.
\begin_inset space ~
\end_inset

in the left margin.
 It is possible to write any number of letters in one file.
 An 
\family sans
Opening
\family default
 type produces a new letter using the same addressee and a 
\family sans
Letter
\family default
 type produces a new addressee.
 The types 
\family sans
Closing
\family default
, 
\family sans
PS
\family default
, 
\family sans
CC
\family default
, and 
\family sans
Encl
\family default
 are ordinary paragraph types and can also be used several times in one
 and the same letter.
\end_layout

\begin_layout Itemize

\family sans
Letter
\family default
: produces a paragraph for the addressee and implicitly defines the beginning
 of the letter.
\end_layout

\begin_layout Itemize

\family sans
Opening
\family default
: produces a paragraph for the form of address and implicitly produces a
 new letter.
\end_layout

\begin_layout Itemize

\family sans
Closing
\family default
: produces a paragraph for a close.
\end_layout

\begin_layout Itemize

\family sans
PS
\family default
: produces a paragraph for a postscript.
\end_layout

\begin_layout Itemize

\family sans
CC
\family default
: produces a paragraph for a distribution list.
\end_layout

\begin_layout Itemize

\family sans
Encl
\family default
: produces a paragraph for enclosures.
\end_layout

\begin_layout Standard
The types 
\family sans
Name
\family default
, 
\family sans
Signature
\family default
, 
\family sans
Address
\family default
, 
\family sans
Telephone
\family default
, 
\family sans
Place
\family default
, 
\family sans
Backaddress
\family default
, 
\family sans
Specialmail
\family default
, 
\family sans
Location
\family default
, 
\family sans
Title
\family default
, and 
\family sans
Subject
\family default
 are input types provided with a label to enter information, which will
 be processed by the document class.
\begin_inset Foot
status open

\begin_layout Plain Layout
It could be seen as a matter of inconsequence, that the types 
\family sans
Letter
\family default
 and 
\family sans
Opening
\family default
 described above are not such input types as well.
 Because of the special meaning of those types, however, I have implemented
 them as ordinary paragraph types with a one letter mark in the left margin.
 Moreover, it would affect my feeling of symmetry, if the 
\family sans
Opening
\family default
 type and the 
\family sans
Closing
\family default
 type had such a serious different appearance.
\end_layout

\end_inset

 The types must be used ahead of the corresponding 
\family sans
Opening
\family default
 type.
\end_layout

\begin_layout Standard
An implementation of these types in a WYSIWYG fashion does not seem to make
 sense, because the real appearance of the produced letter does not only
 depend on the usage of the particular type, but also on other factors.
 For example, a signature entered in the 
\family sans
Signature
\family default
 type will in the standard behavior appear in the produced letter only,
 when in the same letter also a 
\family sans
Closing
\family default
 type is used.
 The entered value of the 
\family sans
Telephone
\family default
 type will in the standard behavior not appear in the produced letter at
 all.
 The possibility to design the letter`s heading freely is already indicated
 in a footnote above.
\end_layout

\begin_layout Standard
The input types can also be used as empty paragraphs.
 This makes sense e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

for the 
\family sans
Signature
\family default
 type.
 If the 
\family sans
Signature
\family default
 type is not used at all, in the standard behavior the value of the 
\family sans
Name
\family default
 type is used as signature, whereas if an empty 
\family sans
Signature
\family default
 type is used, no signature value is defined.
\end_layout

\begin_layout Standard
By using the input types it is possible to write a letter template, containing
 filled input types with your personal dates (name, address, etc.) and empty
 input types for other dates you want to enter.
\end_layout

\begin_layout Itemize

\family sans
Name
\family default
: sender's name, in the standard behavior appears as a centered paragraph
 in small caps in the letter`s heading.
\end_layout

\begin_layout Itemize

\family sans
Signature
\family default
: sender's signature, in the standard behavior appears below the 
\family sans
Closing
\family default
 type.
 If no 
\family sans
Signature
\family default
 type is used, the value of the 
\family sans
Name
\family default
 type appears instead.
\end_layout

\begin_layout Itemize

\family sans
Address
\family default
: sender's address, in the standard behavior appears in a centered paragraph
 in the letter`s heading below the sender's name.
\end_layout

\begin_layout Itemize

\family sans
Telephone
\family default
: sender's telephone number, in the standard behavior only sets the LaTeX
 variable 
\family typewriter

\backslash
telephonenum
\family default
.
\end_layout

\begin_layout Itemize

\family sans
Place
\family default
: place of the letter`s making.
\end_layout

\begin_layout Itemize

\family sans
Date
\family default
: date of the letter`s making.
 
\family sans
Place
\family default
 and 
\family sans
Date
\family default
, in the standard behavior, produce the place and the date in a right-aligned
 line below the addressee's field.
 If an empty 
\family sans
Date
\family default
 type is used, neither place nor date appear, independent of the value of
 the 
\family sans
Place
\family default
 type.
 If no 
\family sans
Date
\family default
 type is used, the date of the letter `s production is used.
\end_layout

\begin_layout Itemize

\family sans
Backaddress
\family default
: sender`s back address, in the standard behavior appears above the addressee's
 field in a small sans serif font.
\end_layout

\begin_layout Itemize

\family sans
Specialmail
\family default
: special mail information, in the standard behavior appears underlined
 above the addressee's field below the back address.
\end_layout

\begin_layout Itemize

\family sans
Location
\family default
: additional information, in the standard behavior appears on right side
 below the addressee`s field.
\end_layout

\begin_layout Itemize

\family sans
Title
\family default
: the letter's title, in the standard behavior appears in a big, bold, sans
 serif font above the subject.
\end_layout

\begin_layout Itemize

\family sans
Subject
\family default
: the letter's subject, in the standard behavior appears in a bold font
 above the 
\family sans
Opening
\family default
 paragraph.
\end_layout

\begin_layout Standard
The types 
\family sans
Yourref
\family default
, 
\family sans
Yourmail
\family default
, 
\family sans
Myref
\family default
, 
\family sans
Customer
\family default
, and 
\family sans
Invoice
\family default
 produce a business letter like line above the 
\family sans
Title
\family default
 line containing the fields 
\begin_inset Quotes eld
\end_inset

Your ref.
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Your letter of
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Our ref.
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Customer no.
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset

Invoice no.
\begin_inset Quotes erd
\end_inset

, and 
\begin_inset Quotes eld
\end_inset

Date
\begin_inset Quotes erd
\end_inset

.
 For the date field, the value of the 
\family sans
Date
\family default
 type is used.
 If one of these 
\begin_inset Quotes eld
\end_inset

business letter types
\begin_inset Quotes erd
\end_inset

 is used, the value of the 
\family sans
Place
\family default
 type however does not appear, but only the LaTeX variable 
\family typewriter

\backslash
fromplace
\family default
 is set.
 The ordinary output of place and date in a right-aligned line below the
 addressee`s field is suppressed.
 The types are implemented as input types provided with a label and must
 be used ahead of the corresponding 
\family sans
Opening
\family default
 type.
\end_layout

\begin_layout Itemize

\family sans
Yourref
\family default
: Your ref.
\end_layout

\begin_layout Itemize

\family sans
Yourmail
\family default
: Your letter of.
\end_layout

\begin_layout Itemize

\family sans
Myref
\family default
: Our ref.
\end_layout

\begin_layout Itemize

\family sans
Customer
\family default
: Customer no.
\end_layout

\begin_layout Itemize

\family sans
Invoice
\family default
: Invoice no.
\end_layout

\begin_layout Subsection
The new letter class: letter (koma-script v.2)
\end_layout

\begin_layout Standard
by 
\noun on
Jürgen Spitzmüller
\end_layout

\begin_layout Standard
\begin_inset VSpace medskip
\end_inset


\end_layout

\begin_layout Standard
\noindent
Koma-Script version 2.8 has introduced a new letter class 
\family typewriter
scrlttr2
\family default
 which supersedes the now unsupported 
\family typewriter
scrlettr
\family default
.
 It has — on the LaTeX side — a completely new interface and is not compatible
 with the old class.
 Therefore, LyX supports both, though it is recommended you use the new
 class.
\end_layout

\begin_layout Standard
This class covers the same functionality as 
\emph on
letter (koma-script),
\emph default
 and a few more.
 The basic items are 
\family sans
Address
\family default
 (receiver's address, same as 
\family sans
Letter
\family default
 in the old layout), 
\family sans
Opening
\family default
, and 
\family sans
Closing
\family default
.
 
\family sans
NextAddress
\family default
 will start a new letter (i.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

you can write several letters per document).
 New elements are sender's 
\family sans
E-Mail
\family default
, 
\family sans
URL
\family default
, 
\family sans
Fax
\family default
, 
\family sans
Bank
\family default
 and the possibility to use a 
\family sans
Logo
\family default
 (via 
\family sans
Insert\SpecialChar \menuseparator
Graphics
\family default
) in the header.
\end_layout

\begin_layout Standard
The biggest improvement is, though, that the letter's layout is configurable
 to meet almost any needs.
 This can be done via the preamble or with a special style file (Letter
 Class Option, extension 
\family typewriter
*.lco
\family default
), that will be read in as a class option.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
The KOMA package comes with some default 
\family typewriter
*.lco
\family default
 files.
 There is, for instance, a 
\family typewriter
DIN.lco
\family default
 file that follows german typesetting rules, or a 
\family typewriter
KOMAold.lco
\family default
 that provides the default layout of the old 
\family typewriter
scrlettr
\family default
 class.
 The latter can be loaded with the class option 
\family typewriter
KOMAold
\family default
, inserted via the 
\family sans
\bar under
L
\bar default
ayout\SpecialChar \menuseparator

\bar under
D
\bar default
ocument\SpecialChar \menuseparator
Extra Options
\family default
 field.
\end_layout

\end_inset

 Have a look at the 
\emph on
koma-letter2
\emph default
 template that is included in LyX for examples.
 A detailed description is to be found in the Koma-Script documentation
 (
\emph on
scrguide
\emph default
).
\end_layout

\begin_layout Subsection
Problems
\end_layout

\begin_layout Standard
Visualizing the Koma-Script document classes in LyX, the LyX internals cause
 some problems.
\end_layout

\begin_layout Itemize
The chapter number of a 
\family sans
Chapter
\family default
 type appears on a line of its own above the chapter heading instead of
 appearing in the same line ahead of it.
 The cause for that is the LyX internal behavior for the labeltype 
\family sans
Counter_Chapter
\family default
 in the layout file.
\end_layout

\begin_layout Itemize
The headings of the types 
\family sans
Addchap
\family default
 and 
\family sans
Addsec
\family default
 are only put in the 
\begin_inset Quotes eld
\end_inset

true
\begin_inset Quotes erd
\end_inset

 LaTeX table of contents, but not in the LyX table of contents (
\family sans
Document\SpecialChar \menuseparator
Table
\begin_inset space ~
\end_inset

of
\begin_inset space ~
\end_inset

Contents
\family default
).
\end_layout

\begin_layout Itemize
The paragraphs in a 
\emph on
letter
\emph default
 document class appear in a skip separation mode, not indented.
 This is the standard behavior, no special LaTeX commands are needed for
 that.
 But in the 
\family sans
Document\SpecialChar \menuseparator
Settings
\family default
 dialog the corresponding radio button indicates 
\family sans
Indent
\family default
.
 A 
\family sans
Skip
\family default
 value always has the effect that extra LaTeX commands are inserted in the
 document to produce the gap, which is not what is wanted in this case.
\end_layout

\begin_layout Section
Memoir
\end_layout

\begin_layout Standard
By 
\noun on
Jürgen Spitzmüller
\end_layout

\begin_layout Subsection
Overview
\end_layout

\begin_layout Standard
Memoir is a very powerful and constantly evolving class.
 It has been designed with regard to fictional and non-fictional literature.
 Its aim is to let the user have maximum control over the typesetting of
 his document.
 Memoir is based on the standard book class, but it can also emulate the
 article class (see below).
\end_layout

\begin_layout Standard
Peter Wilson, the developer of Memoir, is known as the author of lots of
 useful packages in the LaTeX world.
 Most of them have been merged with Memoir.
 Therefore, it is much easier to layout the table of contents, appendices,
 chapter designs and such.
 LyX, though, does not support all of these goodies natively.
 Some of them might be added to forthcoming releases
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
You are invited to send suggestions to 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

lyx-devel@lists.lyx.org
\end_layout

\end_inset

.
\end_layout

\end_inset

, lots will probably never, due to the limitations of LyX's framework.
 Of course you can still use all features with the help of some native LaTeX
 commands (TeX code
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Cf.
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
 
\end_layout

\end_inset

section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "sec:Inserting-TeX-Code"

\end_inset

 for details.
\end_layout

\end_inset

).
 In this section, we can only list those features which are natively supported
 by LyX.
 For detailed descriptions (and for the rest of features) we recommend you
 have a look at the detailed manual of the Memoir class
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Cf.
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
 
\end_layout

\end_inset


\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

CTAN:/macros/latex/memoir/memman.pdf
\end_layout

\end_inset

.
\end_layout

\end_inset

, which is not only a user guide for the class, but also both a comprehensive
 description on good typesetting and a superb example for good typesetting
 itself.
\end_layout

\begin_layout Subsection
Basic features and restrictions
\end_layout

\begin_layout Standard
Memoir supports basically all features of the standard book classes.
 There are, however, some differences, as follows:
\end_layout

\begin_layout Description
Font
\begin_inset space ~
\end_inset

sizes: Memoir has a broader range of font sizes: 9, 10, 11, 12, 14, 17
\end_layout

\begin_layout Description
Page
\begin_inset space ~
\end_inset

style: The fancy page style is not supported, due to a command clash between
 Memoir and the fancyhdr package (they both define a command with the same
 name, which confuses LaTeX).
 Instead, Memoir comes with a number of its own page styles (see 
\family sans
Layout\SpecialChar \menuseparator
Document\SpecialChar \menuseparator
Page
\begin_inset space ~
\end_inset

Style
\family default
).
 If you want to use these for the chapter pages, you have to use the command
 
\family typewriter

\backslash
chapterstyle
\family default
 in the main text or in preamble (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\family typewriter

\backslash
chapterstyle{companion}
\family default
).
\end_layout

\begin_layout Description
Sectioning: Sectionings (chapter, section, subsection etc.) come with an
 optional argument in the standard classes.
 With this, you can specify an alternative version of the title for the
 table of contents and the headers (for instance, if the title is too long).
 In LyX, you can do this via 
\family sans
Insert\SpecialChar \menuseparator
Short
\begin_inset space ~
\end_inset

Title
\family default
 at the beginning of a chapter/section.
 Memoir features a second optional argument and thus separates the table
 of contents from the header.
 You can define three variants of a title with this: one for the main text,
 one for the table of contents, and one for the headers.
 Simply insert two optional arguments if you need this feature, the first
 one containing the short title for the Table of Contents, the second one
 containing an alternative short title for the headers.
\end_layout

\begin_layout Description
TOC/LOT/LOF: In the standard classes (and in many other classes), the table
 of contents, the list of figures and the list of table start a new page
 automatically.
 Memoir does not follow this route.
 You have to insert a page break yourself, if you want to have one.
\end_layout

\begin_layout Description
Titlepage: For some unknown reason, Memoir uses pagination on the title
 page (in the standard classes, title pages are 
\begin_inset Quotes eld
\end_inset

empty
\begin_inset Quotes erd
\end_inset

, i.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

without pagina).
 If you want an empty title page, type 
\family typewriter

\backslash
aliaspagestyle{title}{empty}
\family default
 in the preamble.
\end_layout

\begin_layout Description
Article: With the class option 
\emph on
article
\emph default
 (to be inserted in 
\family sans
Layout\SpecialChar \menuseparator
Document\SpecialChar \menuseparator
Extra
\begin_inset space ~
\end_inset

Options
\family default
), you can emulate article style.
 That is, counters (footnotes, figures, tables etc.) will not be reset on
 new chapters, chapters don't start a new page (but are—in contrary to 
\begin_inset Quotes eld
\end_inset

real
\begin_inset Quotes erd
\end_inset

 article classes—still allowed), parts, though, use their own page, as in
 book.
\end_layout

\begin_layout Description
Oldfontcommands: By default, Memoir does not allow the use of the deprecated
 font commands, which have been used in the old LaTeX version 2.09 (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\family typewriter

\backslash
rm
\family default
, 
\family typewriter

\backslash
it
\family default
).
 It produces an error and stops LaTeX whenever such a command appears.
 The class option 
\emph on
oldfontcommands
\emph default
 reallows the commands and spits out warnings instead (which does at least
 not stop LaTeX).
 Since a lot of packages and particularly BibTeX style files are still using
 those commands, we have decided to use this option by default.
\end_layout

\begin_layout Subsection
Extra features
\end_layout

\begin_layout Standard
We will only describe the features supported by LyX (which is not much currently
).
 Please consult the Memoir manual
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Cf.
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
 
\end_layout

\end_inset


\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

CTAN:/macros/latex/memoir/memman.pdf
\end_layout

\end_inset

.
\end_layout

\end_inset

 for details.
\end_layout

\begin_layout Description
Abstract: You may wonder why an abstract is an extra feature.
 Well, it is in book class.
 Usually books don't have abstracts.
 Memoir, however, has.
 You can use it wherever and how often you like.
\end_layout

\begin_layout Description
Chapterprecis: You may know this older typesetting style: The contents of
 a chapter are summarized below the title and also in the table of contents
 (e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\emph on
Our hero arrives in Troia; he loses some friends; he finds others
\emph default
).
 Chapterprecis does exactly this.
 It is therefore only sensible below a chapter.
\end_layout

\begin_layout Description
Epigraph: An epigraph is a smart slogan or motto at the beginning of a chapter.
 The epigraph environment provides an elegant way of typesetting such a
 motto.
 The motto itself (text) and its author (source) are divided by a short
 line.
 Unfortunately, we have to fool LyX a bit here again, since the environment
 needs two arguments (text and source).
 In this case, we have to use curly brackets (in TeX mode) between the two
 arguments: 
\emph on
<smart slogan>
\emph default
 
\family typewriter
}{
\family default
 
\emph on
<author of the slogan>.
\end_layout

\begin_layout Description
Poemtitle: Memoir has lots of possibilities to typeset poetry (up to very
 complex figurative poems).
 LyX can only support a few of them.
 One is poemtitle, which is a centered title for poems, which will also
 be added to the table of contents (verse is the standard environment for
 poems.
 Memoir has some enhanced versions of verse, but you need to use TeX code,
 because they have to be nested inside regular verse environments, which
 is not possible with LyX).
\end_layout

\begin_layout Description
Poemtitle*: Same as poemtitle, but it adds no entry to the table of contents.
\end_layout

\begin_layout Section
Article (mwart), book (mwbk) and report (mwrep)
\begin_inset Argument
status collapsed

\begin_layout Plain Layout
The 
\family typewriter
mw
\family default
 Classes
\end_layout

\end_inset


\end_layout

\begin_layout Standard
by 
\noun on
Tomasz Luczak
\end_layout

\begin_layout Standard
The LyX document classes 
\emph on
article (mwart)
\emph default
, 
\emph on
report (mwrep)
\emph default
 and 
\emph on
book
\emph default
 
\emph on
(mwbk)
\emph default
 correspond to the LaTeX document classes 
\family typewriter
mwart.cls
\family default
, 
\family typewriter
mwrep.cls
\family default
 and 
\family typewriter
mwbk.cls
\family default
, resp.
 They are replacements for the standard document classes 
\family typewriter
article.cls
\family default
, 
\family typewriter
report.cls
\family default
 and 
\family typewriter
book.cls
\family default
, resp., and fit better to Polish typography conventions in a number of points.
 
\end_layout

\begin_layout Standard
Basic differences:
\end_layout

\begin_layout Itemize
Unnumbered titles (with star, e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\family sans
Section*
\family default
) are added into table of contents,
\end_layout

\begin_layout Itemize
Additional page styles:
\end_layout

\begin_deeper
\begin_layout Description
uheadings header with separated lines,
\end_layout

\begin_layout Description
myheadings custom header, contents headers via commands: 
\family typewriter

\backslash
markright
\family default
 and 
\family typewriter

\backslash
markboth
\family default
,
\end_layout

\begin_layout Description
myuheadings custom header with separated lines,
\end_layout

\begin_layout Description
outer page number is placed on outer side of page
\end_layout

\end_deeper
\begin_layout Itemize
Options 
\end_layout

\begin_deeper
\begin_layout Description
rmheadings serif titles — default,
\end_layout

\begin_layout Description
sfheadings sansserif titles,
\end_layout

\begin_layout Description
authortitle on title page first placed is author next title — default,
\end_layout

\begin_layout Description
titleauthor on title page first placed is title next author,
\end_layout

\begin_layout Description
withmarginpar reserve place on page for margins.
\end_layout

\end_deeper
\begin_layout Section
Paper
\end_layout

\begin_layout Standard
The document class 
\family sans
paper
\family default
 provides an alternative to the standard 
\family sans
article
\family default
 class.
 It provides similar functionality, but you might prefer this layout with
 sans serif sections, headings, and more.
\end_layout

\begin_layout Section
RevTeX4
\end_layout

\begin_layout Standard
by 
\noun on
Amir Karger
\end_layout

\begin_layout Standard
\begin_inset VSpace bigskip
\end_inset


\end_layout

\begin_layout Standard
\noindent
The 
\family sans
Revtex
\begin_inset space ~
\end_inset

4
\family default
 textclass works with the American Physical Sociey's RevTeX 4.0 (the 
\begin_inset Formula $\beta$
\end_inset

 release of May, 1999) class.
\end_layout

\begin_layout Standard
LyX has a 
\family sans
Revtex
\family default
 textclass, which works with RevTeX 3.1.
 However, v3.1 is basically obsolete, as it works with LaTeX 2.09.
 That means that it doesn't interact very well with LyX, which requires
 LaTeX2e, although it has been kludged to work.
 Since RevTeX 4.0 has been designed to work much more cleanly with LaTeX2e,
 LyX with the 
\family sans
RevTeX
\begin_inset space ~
\end_inset

4
\family default
 textclass should also be pretty easy to use.
\end_layout

\begin_layout Standard
These documents are supposed to be used in 
\emph on
addition
\emph default
 to the RevTeX 4.0 documents, so we don't describe any of the special RevTeX
 macros, and assume you'll know what to put in the preamble if necessary.
\end_layout

\begin_layout Subsection
Installation
\end_layout

\begin_layout Standard
All you need to do is install RevTeX 4, as described in the package's README
 file.
 The package can be found at The RevTeX 4 Web Site 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://publish.aps.org/revtex4/
\end_layout

\end_inset

.
 Install it somewhere that LaTeX can see it.
 Test it by trying to LaTeX a short RevTeX 4 document in some random directory
 (i.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

not the directory where you installed the class file.) Then, if you reconfigure
 LyX, it will find the class file and let you use the RevTeX4 textclass.
\end_layout

\begin_layout Standard
Probably the easiest way to get started is either to import a RevTeX 4 document
 using 
\family typewriter
tex2lyx
\family default
, or to use the 
\family sans
Revtex
\begin_inset space ~
\end_inset

4
\family default
 template, found in the templates directory.
\end_layout

\begin_layout Subsection
Preamble Matter
\end_layout

\begin_layout Standard
Optional arguments to 
\family typewriter

\backslash
documentclass
\family default
, like 
\begin_inset Quotes eld
\end_inset

preprint
\begin_inset Quotes erd
\end_inset

 and 
\begin_inset Quotes eld
\end_inset

aps
\begin_inset Quotes erd
\end_inset

, go in the 
\family sans
E
\bar under
x
\bar default
tra
\begin_inset space ~
\end_inset

Options
\family default
 field in the 
\family sans
Document
\begin_inset space ~
\end_inset

Layout
\family default
 dialog, as usual.
 Remember that in RevTeX, at least one optional argument is required! 
\end_layout

\begin_layout Standard
Other preamble matter, like 
\family typewriter

\backslash
draft
\family default
 etc.
\begin_inset space ~
\end_inset

goes in the 
\family sans
LaTeX
\begin_inset space ~
\end_inset

Preamble
\family default
 dialog, also as usual.
\end_layout

\begin_layout Subsection
Layouts
\end_layout

\begin_layout Standard
The layouts basically correspond to the commands in RevTeX4.0.
 For example, the Email layout corresponds to 
\family typewriter

\backslash
email{}
\family default
.
 Note that (at least as of RevTeX 4.0 Beta), the 
\family sans
Address
\family default
 and 
\family sans
Affiliation
\family default
 layouts are exactly equivalent, so you shouldn't need to use both.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
In case you're curious, both were included so that 
\family typewriter
tex2lyx
\family default
 would be able to translate both 
\family typewriter

\backslash
address
\family default
 and 
\family typewriter

\backslash
affiliation
\family default
.
\end_layout

\end_inset


\end_layout

\begin_layout Subsection
Important Notes
\end_layout

\begin_layout Standard
There are a couple of important unique aspects of RevTeX 4 which might cause
 bugs that will be even more confusing in LyX.
\end_layout

\begin_layout Standard
In RevTeX, the 
\family typewriter

\backslash
thanks
\family default
 command goes 
\emph on
outside
\emph default
 the 
\family typewriter

\backslash
author
\family default
 command.
 The LyX equivalent is that there is a separate Thanks layout.
 Do 
\emph on
not
\emph default
 write footnotes in the 
\family sans
Author
\family default
 layout, or weird things may happen.
 See the RevTeX 4 documentation for more details.
\end_layout

\begin_layout Standard
Also, the 
\family sans
Author
\begin_inset space ~
\end_inset

Email
\family default
, 
\family sans
Author
\begin_inset space ~
\end_inset

URL
\family default
, and 
\family sans
Thanks
\family default
 layouts must be placed 
\emph on
in between
\emph default
 the 
\family sans
Author
\family default
 layout and the corresponding 
\family sans
Address
\family default
 (or equivalent 
\family sans
Affiliation
\family default
) layout.
 If you put the 
\family sans
Thanks
\family default
 after the 
\family sans
Address
\family default
, the LaTeX won't compile.
\end_layout

\begin_layout Subsection
Drawbacks
\end_layout

\begin_layout Standard
The main problem with this layout is that you can't use the optional arguments
 to layouts like Email and Title.
 (The problem is not unique to this layout; you can't use optional arguments
 to the Section layouts either.) This means that after you export that file
 to LaTeX (which you'll need to do eventually to send it in to APS), you'll
 need to edit the LaTeX file with a text editor to add the optional arguments
 to set, e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

the running title for the page headers.
 Lacking these layouts makes the 
\family typewriter

\backslash
altaffiliation
\family default
 (and the equivalent 
\family typewriter

\backslash
altaddress
\family default
) useless, so the corresponding layouts don't exist, and will have to be
 added by hand.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout

\emph on
Note from JMarc:
\emph default
 actually, LyX 1.3.0 supports some forms of optional arguments, but this layout
 has not been updated yet to take advantage of it.
\end_layout

\end_inset

 
\end_layout

\begin_layout Section
Springer Journals (
\family sans
svjour
\family default
)
\end_layout

\begin_layout Standard
by 
\noun on
Martin Vermeer
\end_layout

\begin_layout Subsection
Description
\end_layout

\begin_layout Standard
These are the layout files for some of the journal formats used by Springer
 Verlag and listed on 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://www.springer.de/author/tex/help-journals.html
\end_layout

\end_inset

, where you should also go to fetch the class files (yes, these are LaTeX2e
 now!).
 It is a modular system: the things common to all journals are implemented
 in 
\family typewriter
svjour.inc
\family default
, which journal-specific layout files (such as, e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset


\family typewriter
svjog.layout
\family default
 for Journal of Geodesy) can include.
\end_layout

\begin_layout Standard
This means that implementing support for any other Springer journal on this
 list is as simple as writing your own 
\family typewriter
sv
\family default
<myjournal>
\family typewriter
.layout
\family default
 file following the outline given in 
\family typewriter
svjog.layout
\family default
.
 
\end_layout

\begin_layout Standard
It is reasonably well tested only for the Journal of Geodesy.
 
\family typewriter
svjour
\family default
 and 
\family typewriter
svjog
\family default
 come with the standard LyX distribution.
 Install the relevant class file (downloaded from Springer) in a proper
 directory, reconfigure LaTeX (in the teTeX case by running 
\family typewriter
texhash
\family default
, as root if necessary — doesn't LyX take care of this?), reconfigure LyX
 and it should work.
\end_layout

\begin_layout Subsection
New styles
\end_layout

\begin_layout Standard
A large number of theorem-like styles — 
\family sans
Claim, Conjecture,
\family default
 
\family sans
\SpecialChar \ldots{}
Theorem
\family default
.
\end_layout

\begin_layout Standard

\family sans
Headnote, Dedication, Subtitle, Running_LaTeX_Title, Author_Running, Institute,
 Mail, Offprints, Keywords, Acknowledgements, Acknowledgement
\family default
.
 See the Springer class file documentation for details.
\end_layout

\begin_layout Subsection
Supported journals
\end_layout

\begin_layout Itemize

\emph on
Journal of Geodesy
\emph default
: 
\family typewriter
svjog.layout
\family default
 — Martin Vermeer
\end_layout

\begin_layout Itemize

\emph on
Probability Theory and Related Fields
\emph default
: 
\family typewriter
svprobth.layout
\family default
 — Jean-Marc Lasgouttes
\end_layout

\begin_layout Standard
Add your own, it isn't so hard!
\end_layout

\begin_layout Subsection
Credits
\end_layout

\begin_layout Standard
These files are partly based on the older 
\family typewriter
ejour2.layout
\family default
, which was again based on a tinkered-with version of an old LaTeX 2.09 style
 file from Springer.
 All this, and the 
\family typewriter
ejour2
\family default
 layout, are now defunct.
 Jean-Marc Lasgouttes helped out big in making me find my way around the
 LyX layout file mechanism.
\end_layout

\begin_layout Subsection
Bugs
\end_layout

\begin_layout Standard
Probably.
 But probably less than in the old hacked-LaTeX 
\family typewriter
ejour2
\family default
.
\end_layout

\begin_layout Standard
Limitations e.
\begin_inset space \thinspace{}
\end_inset

g.: does not display the number for theorem-like layouts, just #.
\end_layout

\begin_layout Section
Slides [aka 
\noun on
SliTeX
\noun default
]
\begin_inset CommandInset label
LatexCommand label
name "sec:slitex"

\end_inset


\end_layout

\begin_layout Standard
by 
\noun on
John Weiss
\noun default
 
\end_layout

\begin_layout Subsection
Introduction
\end_layout

\begin_layout Standard
This section describes how to use LyX to make slides for overhead projectors.
 There are two document classes that can do this: the default slides class
 and the 
\family sans
FoilTeX
\family default
 slides class.
 This section documents the former.
\end_layout

\begin_layout Standard
I'm going to say this again, nice and clear, so that there's no misunderstanding
:
\end_layout

\begin_layout Standard
\begin_inset VSpace bigskip
\end_inset


\end_layout

\begin_layout Standard
\align center

\size large
This section documents the class 
\begin_inset Quotes eld
\end_inset


\family sans
slides (default)
\family default

\begin_inset Quotes erd
\end_inset

 
\emph on
only.
\end_layout

\begin_layout Standard
\begin_inset VSpace bigskip
\end_inset


\end_layout

\begin_layout Standard
If you're looking for the documentation for 
\begin_inset Quotes eld
\end_inset


\family sans
slides (FoilTeX)
\family default

\begin_inset Quotes erd
\end_inset

, check out section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "sec:foiltex"

\end_inset

.
 The 
\family sans
foils
\family default
 class [
\begin_inset Quotes eld
\end_inset


\family sans
slides (FoilTeX)
\family default

\begin_inset Quotes erd
\end_inset

] is actually somewhat better than the default 
\family sans
slides
\family default
 class,
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
\SpecialChar \ldots{}
or so I've been told repeatedly by its advocates.
 Having never used it, I have no idea if this claim is true or not.
\end_layout

\end_inset

 which this section documents.
\end_layout

\begin_layout Standard
This class is the LaTeX2e improvement of the old 
\noun on
SliTeX
\noun default
 package.
 Every LaTeX2e distribution includes this class [which I'll just refer to
 as 
\begin_inset Quotes eld
\end_inset


\family sans
slides
\family default

\begin_inset Quotes erd
\end_inset

 from now on], so you're bound to have it.
 As I noted earlier, there are other classes, such as 
\family sans
foils
\family default
, which also produce slides for overhead projectors and do a better job
 at it.
 However, there are some things which 
\family sans
slides
\family default
 can do which the others can't, such as generate overlays.
 Read on to learn more!
\end_layout

\begin_layout Subsection
Getting Started
\begin_inset CommandInset label
LatexCommand label
name "sec:slidesetup"

\end_inset


\end_layout

\begin_layout Standard
Obviously, to use this document class, you need to select 
\begin_inset Quotes eld
\end_inset


\family sans
slides (default)
\family default

\begin_inset Quotes erd
\end_inset

 from the class list in the 
\family sans
Document\SpecialChar \menuseparator
Settings
\family default
 dialog.
 There are some other special things you should know about this class:
\end_layout

\begin_layout Itemize
Don't bother changing the options 
\family sans
Sides and Columns
\family default
.
 They're not supported by the 
\family sans
slides
\family default
 class, anyways.
\end_layout

\begin_layout Itemize
The option 
\family sans
Page
\begin_inset space ~
\end_inset

style
\family default
 behaves a bit differently for this class.
 The possible choices and what they do are as follows:
\end_layout

\begin_deeper
\begin_layout Description

\family sans
plain
\family default
 The final output contains page numbers in the lower right corner.
\end_layout

\begin_layout Description

\family sans
headings
\family default
 Like 
\family sans
plain
\family default
, but also prints out any time markers you've put in.
 This is the default.
\end_layout

\begin_layout Description

\family sans
empty
\family default
 The final output contains no page numbers, time markers, or alignment markers.
\end_layout

\end_deeper
\begin_layout Itemize
The 
\family sans
slides
\family default
 class has an extra option: 
\family typewriter
clock
\family default
.
 To use it, put 
\begin_inset Quotes eld
\end_inset


\family typewriter
clock
\family default

\begin_inset Quotes erd
\end_inset

 in the extra class options.
\end_layout

\begin_deeper
\begin_layout Standard
Using this options allows you to add time markers to 
\family sans
Note
\family default
s.
 See section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "sec:slideNote"

\end_inset

 for more details.
\end_layout

\end_deeper
\begin_layout Standard
You can also use the template file 
\begin_inset Quotes eld
\end_inset


\family typewriter
slides.lyx
\family default

\begin_inset Quotes erd
\end_inset

 to automatically set up a document to use the 
\family sans
slides
\family default
 class [using 
\family sans
File\SpecialChar \menuseparator
New
\begin_inset space ~
\end_inset

from
\begin_inset space ~
\end_inset

Template
\family default
 to open your new document].
 The template file also contains some examples of the special paragraph
 environments used by this class.
 I'll describe those next.
\end_layout

\begin_layout Subsection
Paragraph Environments
\end_layout

\begin_layout Subsubsection
Supported Environments
\end_layout

\begin_layout Standard
The first thing you'll notice when you start up a new 
\family sans
slides
\family default
 document is the font size and type: it's the equivalent of the size 
\begin_inset Quotes eld
\end_inset


\family sans
Largest
\family default

\begin_inset Quotes erd
\end_inset

 in the 
\family sans
Sans
\begin_inset space ~
\end_inset

Serif
\family default
 font.
 This is also what's used in the output.
 Think of this as a 
\begin_inset Quotes eld
\end_inset

visual cue
\begin_inset Quotes erd
\end_inset

 to remind you that this is a slide.
 Your final slides will use a larger font; ergo, you'll have less space.
 Of course, the larger default screen font isn't WYSIWYG, only a reminder.
\end_layout

\begin_layout Standard
The next thing that becomes obvious is the changes to the paragraph environment
 pull-down box [at the far-left end of the toolbar].
 Most of the paragraph environments you're used to seeing are missing.
 There are also five new ones.
 That's because the 
\family sans
slides
\family default
 class itself only supports certain paragraph environments:
\end_layout

\begin_layout Itemize

\family sans
Standard
\end_layout

\begin_layout Itemize

\family sans
Itemize
\end_layout

\begin_layout Itemize

\family sans
Enumerate
\end_layout

\begin_layout Itemize

\family sans
Description
\end_layout

\begin_layout Itemize

\family sans
List
\end_layout

\begin_layout Itemize

\family sans
Quotation
\end_layout

\begin_layout Itemize

\family sans
Quote
\end_layout

\begin_layout Itemize

\family sans
Verse
\end_layout

\begin_layout Itemize

\family sans
Caption
\end_layout

\begin_layout Itemize

\family sans
LyX-Code
\end_layout

\begin_layout Itemize

\family sans
Comment
\end_layout

\begin_layout Standard
All of the other standard environments, including the section-heading environmen
ts, aren't used in the 
\family sans
slides
\family default
 class.
\end_layout

\begin_layout Standard
On the other hand, you'll notice the following new environments:
\end_layout

\begin_layout Itemize

\family sans
Slide
\end_layout

\begin_layout Itemize

\family sans
Overlay
\end_layout

\begin_layout Itemize

\family sans
Note
\end_layout

\begin_layout Itemize

\family sans
InvisibleText
\end_layout

\begin_layout Itemize

\family sans
VisibleText
\end_layout

\begin_layout Standard
These five are kind of quirky, due to a 
\begin_inset Quotes eld
\end_inset

feature
\begin_inset Quotes erd
\end_inset

 in LyX.
 You see, LyX doesn't permit you to nest any other paragraph environment
 into an empty environment.
 Now, that's fine and dandy, but it means that you wouldn't be able to start
 a slide with anything except plain text.
 To deal with this, I've performed a little 
\begin_inset Quotes eld
\end_inset

LaTeX magic.
\begin_inset Quotes erd
\end_inset

 
\end_layout

\begin_layout Subsubsection
Quirks of the New Environments
\begin_inset CommandInset label
LatexCommand label
name "sec:slideQuirk"

\end_inset


\end_layout

\begin_layout Standard
All five of the new paragraph environments are somewhat quirky due to inherent
 limitiations in the current version of LyX.
 As I just mentioned, LyX forbids environments that begin with another environme
nt.
 To get around this, the 
\family sans
Slide
\family default
 environment isn't a paragraph environment as described in the 
\emph on
User's Guide
\emph default
.
 
\end_layout

\begin_layout Standard
You should consider 
\family sans
Slide
\family default
, 
\family sans
Overlay
\family default
, and 
\family sans
Note
\family default
 to be 
\begin_inset Quotes eld
\end_inset

pseudo-environments.
\begin_inset Quotes erd
\end_inset

 They look like a section heading or a 
\begin_inset Quotes eld
\end_inset


\family sans
Caption
\family default
,
\begin_inset Quotes erd
\end_inset

 but really begin a [and, if necessary, end the previous] paragraph environment.
 Likewise, treat 
\family sans
InvisibleText
\family default
 and 
\family sans
VisibleText
\family default
 as 
\begin_inset Quotes eld
\end_inset

pseudo-commands.
\begin_inset Quotes erd
\end_inset

 These two perform some action.
\end_layout

\begin_layout Standard
A common feature of all five environments, 
\family sans
Slide
\family default
, 
\family sans
Overlay
\family default
, 
\family sans
Note
\family default
, 
\family sans
InvisibleText
\family default
 and 
\family sans
VisibleText
\family default
, is a rather long-ish label.
 The text following this label — ordinarily the contents of the paragraph
 environment — is utterly irrelevant for 
\family sans
Slide
\family default
, 
\family sans
Overlay
\family default
, 
\family sans
Note
\family default
, 
\family sans
InvisibleText
\family default
 and 
\family sans
VisibleText
\family default
.
 LyX completely ignores it.
 In fact, you can leave these five environments completely empty.
 
\end_layout

\begin_layout Standard
While you don't 
\emph on
have
\emph default
 to put any text after the rather long-ish label, you might want to.
 This could be a short description of the contents of the 
\family sans
Slide
\family default
, for example.
 In that case, enter your descriptive comment and hit 
\family sans
Return
\family default
 as you normally would.
\end_layout

\begin_layout Standard
If, on the other hand, you don't want to enter any descriptive text, you'll
 hit another LyX quirk.
 LyX, like nature, abhors a vacuum, and will not let you start a new paragraph
 environment until you put something in the old one.
 So, do this:
\end_layout

\begin_layout Itemize
Start entering the text that will 
\emph on
follow
\emph default
 the new 
\family sans
Slide
\family default
, 
\family sans
Overlay
\family default
, 
\family sans
Note
\family default
, 
\family sans
InvisibleText
\family default
 or 
\family sans
VisibleText
\family default
.
 
\end_layout

\begin_layout Itemize
Now move to the beginning of that paragraph.
 
\end_layout

\begin_layout Itemize
Next, hit 
\family sans
Return
\family default
.
 
\end_layout

\begin_layout Itemize
Finally, change this new, empty paragraph to a 
\family sans
Slide
\family default
, 
\family sans
Overlay
\family default
, 
\family sans
Note
\family default
, 
\family sans
InvisibleText
\family default
 or 
\family sans
VisibleText
\family default
.
 
\end_layout

\begin_layout Standard
Some future version of LyX will, hopefully, resolve this quirkiness\SpecialChar \ldots{}

\end_layout

\begin_layout Subsection
Making a Presentation with 
\family sans
Slide
\family default
, 
\family sans
Overlay
\family default
 and 
\family sans
Note
\end_layout

\begin_layout Subsubsection
Using the 
\family sans
Slide
\family default
 Environment
\end_layout

\begin_layout Standard
If you're expecting this section to teach you how to actually make a presentatio
n, you'll be sorely disappointed.
 Naturally, I'll describe all of the ways the 
\family sans
slides
\family default
 class can assist you in preparing the materials for a presentation.
 Filling in the contents, however, is up to you.
 [Then again, that 
\emph on
is
\emph default
 the LyX philosophy.]
\end_layout

\begin_layout Standard
Choosing the 
\family sans
Slide
\family default
 environment [in the manner described in section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "sec:slideQuirk"

\end_inset

] tells LyX to begin a new slide [duh].
 The label for this environment/
\begin_inset Quotes erd
\end_inset

pseudo-command
\begin_inset Quotes erd
\end_inset

 is an 
\begin_inset Quotes eld
\end_inset

ASCII line,
\begin_inset Quotes erd
\end_inset

 in cool blue, followed by the label, 
\begin_inset Quotes eld
\end_inset

NewSlide:
\begin_inset Quotes erd
\end_inset

.
 Any text or paragraph environments that follow this one go on the new slide.
 It's that simple.
\end_layout

\begin_layout Standard
Slides are probably the only time you'll need to forcibly end pages in LyX
 (this can be specified in the 
\family sans
Paragraph Layout
\family default
 dialog).
 In fact, you'll want to, once you finish entering the contents of one slide.
 If you've entered more text than can physically fit on a slide, the extra
 overflows onto a new slide.
 I don't recommend doing this, however, since the overflow slide won't have
 any page number on it.
 Furthermore, it may interfere with any 
\family sans
Overlay
\family default
 you've made to accompany the oversized 
\family sans
Slide
\family default
.
\end_layout

\begin_layout Standard
The 
\family sans
Overlay
\family default
 and 
\family sans
Note
\family default
 environments work the same way as the 
\family sans
Slide
\family default
 environment.
 They both create an 
\begin_inset Quotes eld
\end_inset

ASCII line
\begin_inset Quotes erd
\end_inset

 followed by a label [
\begin_inset Quotes eld
\end_inset

NewOverlay:
\begin_inset Quotes erd
\end_inset

 and 
\begin_inset Quotes eld
\end_inset

NewNote:
\begin_inset Quotes erd
\end_inset

, respectively].
 The color is a stunning magenta instead of blue, and the 
\begin_inset Quotes eld
\end_inset

ASCII line
\begin_inset Quotes erd
\end_inset

 will look different, in style and in length.
 The label fonts of all three also differ from one another.
\end_layout

\begin_layout Standard
As with a 
\family sans
Slide
\family default
, if the contents of a 
\family sans
Note
\family default
 or 
\family sans
Overlay
\family default
 exceed the physical size of a slide or sheet of paper, the extra will overflow
 onto a new sheet.
 Again, you should avoid this.
 It defeats the whole purpose of 
\family sans
Note
\family default
s and 
\family sans
Overlay
\family default
s.
\end_layout

\begin_layout Subsubsection
Using 
\family sans
Overlay
\family default
 with 
\family sans
Slide
\end_layout

\begin_layout Standard
The idea behind an 
\family sans
Overlay
\family default
 is a slide that sits atop another slide.
 Perhaps you wish to discuss a figure on the main 
\family sans
Slide
\family default
 before displaying the text associated with it.
 One way to accomplish this is tape a flap of dark paper over the part of
 the 
\family sans
Slide
\family default
 you want to display later.
 This method fails, however, if you wish to overlap one graph with another,
 for example.
 You would then have to fumble while speaking to align the two separate,
 overlapping 
\family sans
Slide
\family default
s to align the two graphs.
 The use of an 
\family sans
Overlay
\family default
 environment in both cases makes life much easier.
\end_layout

\begin_layout Standard
Each 
\family sans
Overlay
\family default
 receives the page number of its 
\begin_inset Quotes eld
\end_inset

parent
\begin_inset Quotes erd
\end_inset

 
\family sans
Slide
\family default
, appended by 
\begin_inset Quotes eld
\end_inset


\family typewriter
-a
\family default

\begin_inset Quotes erd
\end_inset

.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Presumably, mutliple 
\family sans
Overlay
\family default
s would have 
\begin_inset Quotes eld
\end_inset


\family typewriter
-a
\family default

\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset


\family typewriter
-b
\family default

\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset


\family typewriter
-c
\family default

\begin_inset Quotes erd
\end_inset

, etc.
\begin_inset space ~
\end_inset

appended to the page number of the parent 
\family sans
Slide
\family default
.
 
\end_layout

\end_inset

 Clearly, you want the contents of both the 
\family sans
Slide
\family default
 and the 
\family sans
Overlay
\family default
 to each fit on a single physical slide! You should probably consider an
 
\family sans
Overlay
\family default
 as 
\begin_inset Quotes eld
\end_inset

part of
\begin_inset Quotes erd
\end_inset

 a 
\family sans
Slide
\family default
.
 Indeed, the LyX 
\family sans
slides
\family default
 class provides a visual cue for this: the label at the start of an 
\family sans
Overlay
\family default
 is shorter than that at the start of a 
\family sans
Slide
\family default
.
 Lastly, when you generate printable output, you'll find alignment markers
 in all four corners of both the 
\family sans
Overlay
\family default
 page and its parent 
\family sans
Slide
\family default
.
 These will assist you in lining up the two physical slides.
\end_layout

\begin_layout Standard
The major problem in overlaying two slides is aligning the contents of the
 two transparencies.
 How much space should you leave for that graph on the second slide? Worse
 still, what if you want a graph and a sentence on second slide, but there
 is text on the main transparency that goes in between them? You could try
 and insert vertical space of the right size.
 The better way is to use 
\family sans
InvisibleText
\family default
 and 
\family sans
VisibleText
\family default
.
\end_layout

\begin_layout Standard
As their names imply, 
\family sans
InvisibleText
\family default
 and 
\family sans
VisibleText
\family default
 are two command-like paragraph environments that make all subsequent text
 invisible and visible, respectively.
 Note from section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "sec:slideQuirk"

\end_inset

 that you don't place anything 
\emph on
into
\emph default
 these two environments, however.
 When you create an 
\family sans
InvisibleText
\family default
, it inserts a centered, sky-blue label into the page reading 
\begin_inset Quotes eld
\end_inset

<Invisible Text Follows>
\begin_inset Quotes erd
\end_inset

.
 For paragraphs following this label, the parts of the 
\family sans
Slide
\family default
 [or 
\family sans
Overlay
\family default
; it doesn't matter which] where they would be contain instead blank space.
 
\end_layout

\begin_layout Standard
For 
\family sans
VisibleText
\family default
, the corresponding centered label is 
\begin_inset Quotes eld
\end_inset

<Visible Text Follows>
\begin_inset Quotes erd
\end_inset

 in blazing green.
 Paragraphs following this label behave normally.
 Note that the beginning of a new 
\family sans
Slide
\family default
, 
\family sans
Overlay
\family default
, or 
\family sans
Note
\family default
 automatically shuts off an 
\family sans
InvisibleText
\family default
.
 It's therefore not necessary to use 
\family sans
VisibleText
\family default
 at the end of a 
\family sans
Slide
\family default
.
\end_layout

\begin_layout Standard
By now, it should be obvious how to create overlay transparencies using
 the proper combination of 
\family sans
InvisibleText
\family default
 and 
\family sans
VisibleText
\family default
 on a 
\family sans
Slide
\family default
 and 
\family sans
Overlay
\family default
:
\end_layout

\begin_layout Enumerate
Create a 
\family sans
Slide
\family default
, including everything that will appear on it, whether on the main slide
 or on the 
\family sans
Overlay
\family default
.
\end_layout

\begin_layout Enumerate
Before each figure or paragraph that will appear only on the 
\family sans
Overlay
\family default
, insert an 
\family sans
InvisibleText
\family default
 environment.
 If necessary, insert a 
\family sans
VisibleText
\family default
 environment after the 
\family sans
Overlay
\family default
-only text.
\end_layout

\begin_layout Enumerate
Start an 
\family sans
Overlay
\family default
 immediately following the 
\family sans
Slide
\family default
.
\end_layout

\begin_layout Enumerate
Copy the contents of this 
\family sans
Slide
\family default
 into the 
\family sans
Overlay
\family default
.
\end_layout

\begin_layout Enumerate
Within the 
\family sans
Overlay
\family default
, change all of the 
\family sans
InvisibleText
\family default
 lines to 
\family sans
VisibleText
\family default
 and vice-versa.
\end_layout

\begin_layout Standard
That's it.
 You've just made an 
\family sans
Overlay
\family default
.
\end_layout

\begin_layout Standard
There's one problem with the way I've designed the LyX 
\family sans
slides
\family default
 class: you can't make text in the middle of a paragraph invisible, nor
 make text in the middle of an invisible paragraph visible again.
 To accomplish this feat, you'll need to use some inlined LaTeX codes.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
The commands of interest are: 
\end_layout

\begin_layout Itemize

\family typewriter
{
\backslash
invisible \SpecialChar \ldots{}
 }
\end_layout

\begin_layout Itemize

\family typewriter
{
\backslash
visible \SpecialChar \ldots{}
 }
\end_layout

\begin_layout Plain Layout
\SpecialChar \ldots{}
and need to be marked as TeX.
 The text whose 
\begin_inset Quotes eld
\end_inset

visibility
\begin_inset Quotes erd
\end_inset

 you wish to change goes in between the brackets [and after the 
\family typewriter

\backslash
invisible
\family default
 or 
\family typewriter

\backslash
visible
\family default
 command].
 If you don't know how to mark text as TeX, see the appropriate section
 of the 
\emph on
User's Guide
\emph default
.
\end_layout

\end_inset


\end_layout

\begin_layout Subsubsection
Using 
\family sans
Note
\family default
 with 
\family sans
Slide
\family default

\begin_inset CommandInset label
LatexCommand label
name "sec:slideNote"

\end_inset


\end_layout

\begin_layout Standard
Like an 
\family sans
Overlay
\family default
, a 
\family sans
Note
\family default
 is associated with a 
\begin_inset Quotes eld
\end_inset

parent
\begin_inset Quotes erd
\end_inset

 
\family sans
Slide
\family default
.
 Here, too, the LyX 
\family sans
slides
\family default
 class provides visual cues.
 The label for a 
\family sans
Note
\family default
 is shorter than that of a 
\family sans
Slide
\family default
 [yet longer than that of an 
\family sans
Overlay
\family default
] and, like the label of an 
\family sans
Overlay
\family default
 is shockingly magenta.
 Additionally, the printed 
\family sans
Note
\family default
 has the page number of its 
\begin_inset Quotes eld
\end_inset

parent
\begin_inset Quotes erd
\end_inset

 
\family sans
Slide
\family default
, appended by 
\begin_inset Quotes eld
\end_inset


\family typewriter
-
\family default
1
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset


\family typewriter
-
\family default
2
\begin_inset Quotes erd
\end_inset

, 
\begin_inset Quotes eld
\end_inset


\family typewriter
-
\family default
3
\begin_inset Quotes erd
\end_inset

, etc.
 You can have multiple 
\family sans
Note
\family default
s associated with a single 
\family sans
Slide
\family default
, and, as with 
\family sans
Slide
\family default
 and 
\family sans
Overlay
\family default
, you'll probably want to break up long 
\family sans
Note
\family default
s so that they fit on a single sheet of paper.
\end_layout

\begin_layout Standard
The purpose of a 
\family sans
Note
\family default
 is obvious: it contains anything additional you might want to say about
 a 
\family sans
Slide
\family default
.
 It could also be used as a sheet of reminders for a particular 
\family sans
Slide
\family default
.
 In the case of the latter, you might want to make use of time markers.
 Currently, the LyX 
\family sans
slides
\family default
 class has no 
\begin_inset Quotes eld
\end_inset

native
\begin_inset Quotes erd
\end_inset

 support for time markers, a 
\noun on
SliTeX
\noun default
 feature.
 So, you'll have to resort to using the LaTeX codes.
\end_layout

\begin_layout Standard
To use time markers, you'll need to specify the extra class option 
\begin_inset Quotes eld
\end_inset


\family typewriter
clock
\family default

\begin_inset Quotes erd
\end_inset

 [see section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "sec:slidesetup"

\end_inset

].
 This option turns on timing marks, which will appear in the lower-left-hand
 corner of every 
\family sans
Note
\family default
 you generate.
 To set what appears in the time marker, you use the LaTeX commands 
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
settime{}
\family default

\begin_inset Quotes erd
\end_inset

 and 
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
addtime{}
\family default

\begin_inset Quotes erd
\end_inset

.
 The arguments of both commands are time measured in seconds.
 
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
settime{}
\family default

\begin_inset Quotes erd
\end_inset

 sets the time marker to a given time.
 
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
addtime{}
\family default

\begin_inset Quotes erd
\end_inset

 increments the time marker by the specified amount.
 Using time markers and 
\family sans
Note
\family default
s in this fashion, you can remind yourself how much time to spend on a particula
r 
\family sans
Slide
\family default
.
\end_layout

\begin_layout Standard
There's one last feature to describe.
 Clearly, you'd like to print out all of your 
\family sans
Slide
\family default
s and 
\family sans
Overlay
\family default
s on transparencies while printing all of your 
\family sans
Note
\family default
s on plain paper.
 However, a 
\family sans
Note
\family default
 
\emph on
must
\emph default
 follow the 
\family sans
Slide
\family default
 with which it is associated.
 What's a person to do?
\end_layout

\begin_layout Standard
Luckily, there are two LaTeX commands that allow you to select what to print
 out.
 Both must be placed into the preamble of your document.
 The command 
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
onlyslides{
\backslash
slides}
\family default

\begin_inset Quotes erd
\end_inset

 will cause the output to contain only the 
\family sans
Slide
\family default
s and 
\family sans
Overlay
\family default
s.
 Correspondingly, the command 
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
onlynotes{
\backslash
notes}
\family default

\begin_inset Quotes erd
\end_inset

 prevents the output of anything but 
\family sans
Note
\family default
s.
 I'd advise placing both commands in the preamble and initially comment
 both out.
 You can then preview your entire presentation as you write.
 When you're done writing, you can then uncomment one of the two to select
 what you want to print.
 I like to uncomment 
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
onlyslides{
\backslash
slides}
\family default

\begin_inset Quotes erd
\end_inset

 , print to a file with 
\begin_inset Quotes eld
\end_inset


\family typewriter
-slides
\family default

\begin_inset Quotes erd
\end_inset

 in its name, comment it back out, then uncomment 
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
onlynotes{
\backslash
notes}
\family default

\begin_inset Quotes erd
\end_inset

 and print to a 
\begin_inset Quotes eld
\end_inset


\family typewriter
*-notes.ps
\family default

\begin_inset Quotes erd
\end_inset

 file.
 I can then send either file to a printer, loading transparencies or plain
 paper as appropriate.
\end_layout

\begin_layout Standard
You can also provide other arguments to the 
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
onlyslides{}
\family default

\begin_inset Quotes erd
\end_inset

 and 
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
onlynotes{}
\family default

\begin_inset Quotes erd
\end_inset

 commands.
 See a good LaTeX book for details.
\end_layout

\begin_layout Subsection
The 
\family sans
slides
\family default
 Class Template File
\end_layout

\begin_layout Standard
I have also provided a template file, 
\begin_inset Quotes eld
\end_inset


\family typewriter
slides.lyx
\family default

\begin_inset Quotes erd
\end_inset

, with the 
\family sans
slides
\family default
 class.
 To use it, begin your new presentation with 
\family sans
\bar under
F
\bar default
ile\SpecialChar \menuseparator
New
\begin_inset space ~
\end_inset

from
\begin_inset space ~
\end_inset


\bar under
T
\bar default
emplate
\family default
.
 Your new LyX presentation file will contain an example 
\family sans
Slide
\family default
 – 
\family sans
Overlay
\family default
 – 
\family sans
Note
\family default
 triplet.
 The 
\family sans
Slide
\family default
 and 
\family sans
Overlay
\family default
 additionally contain an example of the use of 
\family sans
InvisibleText
\family default
 and 
\family sans
VisibleText
\family default
.
 Lastly, the preamble will contain:
\end_layout

\begin_layout LyX-Code
% Uncomment to print out only slides and overlays
\end_layout

\begin_layout LyX-Code
%
\end_layout

\begin_layout LyX-Code
%
\backslash
onlyslides{
\backslash
slides}
\begin_inset Newline newline
\end_inset

 
\end_layout

\begin_layout LyX-Code
% Uncomment to print out only notes
\end_layout

\begin_layout LyX-Code
%
\end_layout

\begin_layout LyX-Code
%
\backslash
onlynotes{
\backslash
notes}
\end_layout

\begin_layout Standard
One final thing: I created this class to support the LaTeX2e 
\begin_inset Quotes eld
\end_inset


\noun on
SliTeX
\noun default
 emulation
\begin_inset Quotes erd
\end_inset

 class, one of the built-in LaTeX2e classes.
 Neither I nor the rest of the LyX Team endorse or oppose the use of this
 built-in slide class.
 It's here if you want it or need it.
 There exist other LaTeX2e classes for creating presentations, such as the
 
\family sans
Foils
\family default
 class [see section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "sec:foiltex"

\end_inset

] or the 
\begin_inset Quotes eld
\end_inset


\family typewriter
seminar
\family default

\begin_inset Quotes erd
\end_inset

 package [present on some TeX distributions].
 The latter is not yet supported under LyX.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Perhaps you can take on the task\SpecialChar \ldots{}

\end_layout

\end_inset

 I know nothing about these other classes.
 Try them out to see what sort of alternative they provide.
\end_layout

\begin_layout Chapter
LyX Features needing Extra Software
\end_layout

\begin_layout Section
Checking TeX
\end_layout

\begin_layout Standard
by 
\noun on
Asger Alstrup
\end_layout

\begin_layout Subsection
Introduction
\end_layout

\begin_layout Standard
If you have the 
\family typewriter
chktex
\family default
 program installed
\begin_inset Foot
status collapsed

\begin_layout Plain Layout

\family typewriter
chktex
\family default
 is not yet available when you are using the LaTeX distribution MiKTeX.
\end_layout

\end_inset

, you'll find in the 
\family sans
Tools
\family default
 menu the entry: 
\family sans
Check
\begin_inset space ~
\end_inset

TeX
\family default
.
 You can get 
\family typewriter
chktex
\family default
 it from CTAN, 
\begin_inset CommandInset href
LatexCommand href
target "http://www.ctan.org/tex-archive/help/Catalogue/entries/chktex.html"

\end_inset

.
\end_layout

\begin_layout Standard
The 
\family sans
ChkTeX
\family default
 package is a program that was written by 
\begin_inset Flex Noun
status collapsed

\begin_layout Plain Layout
Jens T.
\begin_inset space ~
\end_inset

Berger Thielemann
\end_layout

\end_inset

 in frustration because some constructs in LaTeX are sometimes non-intuitive,
 and easy to forget.
 The program runs over your LaTeX file, checks the integrity of the file,
 and flags some common errors.
 In other technical words, it is 
\family typewriter
lint
\family default
 for LaTeX.
\end_layout

\begin_layout Standard
Well, what is a syntax checker doing in LyX which is supposed to produce
 correct LaTeX anyways? The answer is simple: Just as 
\family typewriter
Lint
\family default
 not only checks the 
\emph on
syntax
\emph default
 of C programs, but also does 
\emph on
semantic
\emph default
 checks for type-errors, 
\family sans
ChkTeX
\family default
 catches some common 
\emph on
typographic
\emph default
 errors, in addition to the syntactical ones.
 Specifically, 
\family sans
ChkTeX
\family default
 is capable of detecting several common errors, such as
\end_layout

\begin_layout Itemize
Ellipsis detection:
\begin_inset Newline newline
\end_inset

Use \SpecialChar \ldots{}
 instead of ...
\end_layout

\begin_layout Itemize
No space in front of/after parenthesis:
\begin_inset Newline newline
\end_inset

( wrong spacing )
\end_layout

\begin_layout Itemize
Enforcement of normal space after common abbreviations:
\begin_inset Newline newline
\end_inset

e.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

is too wide spacing.
\end_layout

\begin_layout Itemize
Enforcement of end-of-sentence space when the last sentence ends with a
 capital letter:
\begin_inset Newline newline
\end_inset

This is a TEST.
 And this is wrong spacing.
\end_layout

\begin_layout Itemize
Space in front of labels and similar commands:
\begin_inset Newline newline
\end_inset

The label should stick right up to the text to avoid falling to a wrong
 page.
 
\begin_inset CommandInset label
LatexCommand label
name "sec:chktex"

\end_inset

 
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
This footnote is in danger of falling off to a wrong page
\end_layout

\end_inset

 The label is separated too much.
\end_layout

\begin_layout Itemize
Space in front of references, instead of hard spaces:
\begin_inset Newline newline
\end_inset

In you are in bad luck, the text will break right between the referenced
 text and reference number, and that's a pity.
 See section 
\begin_inset CommandInset ref
LatexCommand ref
reference "sec:chktex"

\end_inset

.
\end_layout

\begin_layout Itemize
Use of 
\begin_inset Quotes eld
\end_inset

x
\begin_inset Quotes erd
\end_inset

 instead of 
\begin_inset Formula $\times$
\end_inset

 between numbers:
\begin_inset Newline newline
\end_inset

2x2 looks cheap compared to 
\begin_inset Formula $2\times2$
\end_inset

.
\end_layout

\begin_layout Standard
and more \SpecialChar \ldots{}
 It is an invaluable tool when you are 
\begin_inset Quotes eld
\end_inset

finishing up
\begin_inset Quotes erd
\end_inset

 your document before printing, and you should run it right after the obligatory
 spelling check, and before you go fine tuning the typesetting.
\end_layout

\begin_layout Subsection
How to use it
\end_layout

\begin_layout Standard
If you have the program installed, usage is as simple as choosing 
\family sans
Tools\SpecialChar \menuseparator
Check
\begin_inset space ~
\end_inset

TeX
\family default
.
 This will make LyX generate a LaTeX file of your document, start 
\family sans
ChkTeX
\family default
 to check it, and then make LyX insert 
\begin_inset Quotes eld
\end_inset

error boxes
\begin_inset Quotes erd
\end_inset

 with the warnings from 
\family sans
ChkTeX
\family default
, if there were any.
 The warnings will be placed close to the point of the mistake, and you
 can quickly find them by using the 
\family sans
Navigate\SpecialChar \menuseparator
Error
\family default
 menu item, or the shortcut key 
\family sans
C-g
\family default
 from the default 
\family typewriter
cua
\family default
 bind file.
 Open the error boxes by clicking on them with the mouse, or use the shortcut
 key 
\family sans
C-i
\family default
 from 
\family typewriter
cua
\family default
 bindings, or the corresponding 
\family sans
C-o
\family default
 for the alternate 
\family typewriter
emacs
\family default
 bind file.
 Read the warning and correct the mistake, if it is a mistake.
 If you have trouble understanding what the warning is about, you can safely
 ignore it.
 Remember that there is a hidden layer between the document on screen and
 the technical details in invoking 
\family sans
ChkTeX
\family default
, and this gap can make some warnings seem arcane or just right down plain
 silly.
\end_layout

\begin_layout Standard
This document is an excellent testing bed for the feature, and it should
 provide quite a few warnings for you to fiddle with.
 Since computers are only so smart, expect most of the warnings to be false
 alarms, though.
\end_layout

\begin_layout Subsection
How to fine tune it
\end_layout

\begin_layout Standard
Sometimes, you'll find that 
\family sans
ChkTeX
\family default
 makes more noise than suits your mood.
 Then you can choose not to use it, wait until your mood changes, or try
 to customize 
\family sans
ChkTeX
\family default
 to get better along with you.
\end_layout

\begin_layout Standard
Although 
\family sans
ChkTeX
\family default
 
\emph on
is
\emph default
 very configurable and extensible, you shouldn't expect to solve all problems
 with 
\family sans
ChkTeX
\family default
 in LyX this way.
 Since LyX has to generate a somewhat special LaTeX file to be able to match
 the line numbers from the 
\family sans
ChkTeX
\family default
 output
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
You can inspect the specific output from 
\family sans
chktex
\family default
 by using 
\family sans
Edit\SpecialChar \menuseparator
View
\begin_inset space ~
\end_inset

LaTeX
\begin_inset space ~
\end_inset

Log
\family default
 right after a 
\family sans
chktex
\family default
 run.
\end_layout

\end_inset

 to the internal document structure, some of the warnings will not seen
 to appear correctly.
 There are two things you can do about this:
\end_layout

\begin_layout Itemize
Fine tune the 
\family sans
ChkTeX
\family default
 invocation command line in 
\family sans
Preferences
\family default
 (tabs 
\family sans
Outputs
\family default
, 
\family sans
Misc
\family default
), or the global 
\family sans
ChkTeX
\family default
 installation configuration file (usually with the file 
\family typewriter
chktexrc
\family default
).
 See below to learn what warnings can be enabled and disabled on the command
 line.
 
\end_layout

\begin_layout Itemize
Export your document as a raw LaTeX file using 
\family sans
File\SpecialChar \menuseparator
Export\SpecialChar \menuseparator
LaTeX
\family default
 and run 
\family typewriter
chktex
\family default
 manually on that.
 Invoked in this way, it can be a hassle to find the corresponding place
 in the document inside LyX, but with a little patience, you should be able
 to do it.
\end_layout

\begin_layout Standard
Here follows the warning messages that can be enabled and disabled in 
\family sans
Preferences
\family default
.
 Use 
\family typewriter
-n#
\family default
 to disable a warning, and 
\family typewriter
-w#
\family default
 to enable a warning.
 The emphasized entries are disabled by default, because the default is
 "
\family typewriter
chktex -n1 -n3 -n6 -n9 -n22 -n25 -n30 -n38
\family default
".
\end_layout

\begin_layout Standard
Notice that you should only use the options that enable and disable warnings,
 because LyX relies on some of the other command line parameters to be set
 in a specific way to have a chance to communicate with 
\family typewriter
chktex
\family default
.
\end_layout

\begin_layout Enumerate

\size small
\emph on
Command terminated with space.
\end_layout

\begin_layout Enumerate

\size small
Non-breaking space (
\begin_inset Quotes eld
\end_inset


\family typewriter
~
\family default

\begin_inset Quotes erd
\end_inset

) should have been used.
\end_layout

\begin_layout Enumerate

\size small
\emph on
You should enclose the previous parenthesis with 
\begin_inset Quotes eld
\end_inset


\family typewriter
{}
\family default

\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Enumerate

\size small
Italic correction (
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
/
\family default

\begin_inset Quotes erd
\end_inset

) found in non-italic buffer.
\end_layout

\begin_layout Enumerate

\size small
Italic correction (
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
/
\family default

\begin_inset Quotes erd
\end_inset

) found more than once.
\end_layout

\begin_layout Enumerate

\size small
\emph on
No italic correction (
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
/
\family default

\begin_inset Quotes erd
\end_inset

) found.
\end_layout

\begin_layout Enumerate

\size small
Accent command 
\begin_inset Quotes eld
\end_inset


\family typewriter
cmd
\family default

\begin_inset Quotes erd
\end_inset

 needs use of 
\begin_inset Quotes eld
\end_inset


\family typewriter
cmd
\family default

\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Enumerate

\size small
Wrong length of dash may have been used.
\end_layout

\begin_layout Enumerate

\size small
\emph on
\begin_inset Quotes eld
\end_inset


\family typewriter
%s
\family default

\begin_inset Quotes erd
\end_inset

 expected, found 
\begin_inset Quotes eld
\end_inset


\family typewriter
%s
\family default

\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Enumerate

\size small
Solo 
\begin_inset Quotes eld
\end_inset


\family typewriter
%s
\family default

\begin_inset Quotes erd
\end_inset

 found.
\end_layout

\begin_layout Enumerate

\size small
You should use 
\begin_inset Quotes eld
\end_inset


\family typewriter
%s
\family default

\begin_inset Quotes erd
\end_inset

 to achieve an ellipsis.
\end_layout

\begin_layout Enumerate

\size small
Inter-word spacing (
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash

\family default
 
\begin_inset Quotes eld
\end_inset

) should perhaps be used.
\end_layout

\begin_layout Enumerate

\size small
Inter-sentence spacing (
\begin_inset Quotes eld
\end_inset


\family typewriter

\backslash
@
\family default

\begin_inset Quotes erd
\end_inset

) should perhaps be used.
\end_layout

\begin_layout Enumerate

\size small
Could not find argument for command.
\end_layout

\begin_layout Enumerate

\size small
No match found for 
\begin_inset Quotes eld
\end_inset


\family typewriter
%s
\family default

\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Enumerate

\size small
Math mode still on at end of LaTeX file.
\end_layout

\begin_layout Enumerate

\size small
Number of 
\begin_inset Quotes eld
\end_inset


\family typewriter
char
\family default

\begin_inset Quotes erd
\end_inset

 doesn't match the number of 
\begin_inset Quotes eld
\end_inset


\family typewriter
char
\family default

\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Enumerate

\size small
You should use either 
\family typewriter

\begin_inset Quotes eld
\end_inset


\family default
 or 
\family typewriter

\begin_inset Quotes erd
\end_inset


\family default
 as an alternative to 
\begin_inset Quotes eld
\end_inset


\family typewriter
"
\family default

\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Enumerate

\size small
You should use "
\family typewriter
'
\family default
" (ASCII 39) instead of "
\family typewriter
´
\family default
" (ASCII 180).
\end_layout

\begin_layout Enumerate

\size small
User-specified pattern found.
\end_layout

\begin_layout Enumerate

\size small
This command might not be intended.
\end_layout

\begin_layout Enumerate

\size small
\emph on
Comment displayed.
\end_layout

\begin_layout Enumerate

\size small
Either 
\family typewriter
''
\backslash
,'
\family default
 or 
\family typewriter
'
\backslash
,''
\family default
 will look better.
\end_layout

\begin_layout Enumerate

\size small
Delete this space to maintain correct page references.
\end_layout

\begin_layout Enumerate

\size small
\emph on
You might wish to put this between a pair of 
\begin_inset Quotes eld
\end_inset


\family typewriter
{}
\family default

\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Enumerate

\size small
You ought to remove spaces in front of punctuation.
\end_layout

\begin_layout Enumerate

\size small
Could not execute LaTeX command.
\end_layout

\begin_layout Enumerate

\size small
Don't use 
\family typewriter

\backslash
/
\family default
 in front of small punctuation.
\end_layout

\begin_layout Enumerate

\family typewriter
\size small
$
\backslash
times$
\family default
 may look prettier here.
\end_layout

\begin_layout Enumerate

\size small
\emph on
Multiple spaces detected in output.
\end_layout

\begin_layout Enumerate

\size small
This text may be ignored.
\end_layout

\begin_layout Enumerate

\size small
Use 
\family typewriter

\begin_inset Quotes eld
\end_inset


\family default
 to begin quotation, not 
\family typewriter
'
\family default
.
\end_layout

\begin_layout Enumerate

\size small
Use 
\family typewriter
'
\family default
 to end quotation, not 
\family typewriter

\begin_inset Quotes eld
\end_inset


\family default
.
\end_layout

\begin_layout Enumerate

\size small
Don't mix quotes.
\end_layout

\begin_layout Enumerate

\size small
You should perhaps use 
\begin_inset Quotes eld
\end_inset


\family typewriter
cmd
\family default

\begin_inset Quotes erd
\end_inset

 instead.
\end_layout

\begin_layout Enumerate

\size small
You should put a space in front of/after parenthesis.
\end_layout

\begin_layout Enumerate

\size small
You should avoid spaces in front of/after parenthesis.
\end_layout

\begin_layout Enumerate

\size small
\emph on
You should not use punctuation in front of/after quotes.
\end_layout

\begin_layout Enumerate

\size small
Double space found.
\end_layout

\begin_layout Enumerate

\size small
You should put punctuation outside inner/inside display math mode.
\end_layout

\begin_layout Enumerate

\size small
You ought to not use primitive TeX in LaTeX code.
\end_layout

\begin_layout Enumerate

\size small
You should remove spaces in front of 
\begin_inset Quotes eld
\end_inset


\family typewriter
%s
\family default

\begin_inset Quotes erd
\end_inset


\end_layout

\begin_layout Enumerate

\size small
\begin_inset Quotes eld
\end_inset


\family typewriter
%s
\family default

\begin_inset Quotes erd
\end_inset

 is normally not followed by 
\begin_inset Quotes eld
\end_inset


\family typewriter
%c
\family default

\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Standard
In later versions of LyX, we hope to provide a more complete interface to
 this tool (and it's smaller cousin 
\family typewriter
lacheck
\family default
) to exploit the full power of it.
 But it's not exactly useless as it is now: go try it on one of your existing
 documents of a certain length and be surprised.
\end_layout

\begin_layout Section
Version Control in LyX
\end_layout

\begin_layout Standard
by
\noun on
 Lars Gullik Bjønnes 
\noun default
and 
\noun on
Pavel Sanda
\end_layout

\begin_layout Subsection
Introduction
\end_layout

\begin_layout Standard
A friend of mine wanted to try LyX for a group project.
 When he didn't find support for version control or file locking, he dropped
 it.
 This angered me a bit, so I thought that I should at least make support
 for RCS (with the possibility of CVS and/or SCCS as a future improvement.)
 This has been done.
 LyX now supports some of the most basic RCS/CVS/SVN commands.
 If you need something a bit more sophisticated you will have to do that
 manually in a terminal.
\end_layout

\begin_layout Standard
Also note that CVS support is not as good as subversion support so we advice
 using SVN instead.
 Good place to start with Subversion is SVN Book
\begin_inset Foot
status open

\begin_layout Plain Layout
\begin_inset CommandInset href
LatexCommand href
target "http://svnbook.red-bean.com/"

\end_inset


\end_layout

\end_inset

.
 In case of RCS you should read 
\begin_inset Quotes eld
\end_inset

rcsintro
\begin_inset Quotes erd
\end_inset

 (a man file, read it with 
\family typewriter
man rcsintro
\family default
).
 This file describes all the basic features of RCS.
 You should especially notice the comment about a RCS directory, and the
 notion of a master RCS file (the file ending in 
\family typewriter
,v
\family default
).
\end_layout

\begin_layout Standard
Before you begin to use the version control features in LyX, you should
 be familiar with RCS/CVS/SVN usage.
 The implementation in LyX assumes a recent version of the GNU RCS or CVS/SVN
 package—no guarantees are made for older versions.
 Most of the log messages are not currently displayed after operations —
 you can check them in Messages pane if unsure.
 Regular users of version control will appreciate VC toolbar, which can
 be enabled via 
\family sans
View\SpecialChar \menuseparator
Toolbars\SpecialChar \menuseparator
Version
\begin_inset space ~
\end_inset

Control.
\family default
.
\end_layout

\begin_layout Standard
For introducing your own external commands consult vc-command in the manual
 of LyX functions.
\end_layout

\begin_layout Subsection
RCS commands in LyX
\end_layout

\begin_layout Standard
The following sections describe the RCS commands supported by LyX.
 You can find them in the 
\family sans
File\SpecialChar \menuseparator
Version
\begin_inset space ~
\end_inset

Control
\family default
 submenu.
 LyX was tested against RCS 5.7/5.8
\begin_inset Foot
status open

\begin_layout Plain Layout
Note that old DOS / MS Windows builds (5.7) need to setup environment variables
 in order to work properly with LyX.
 In particular time zone (TZ) should be set and more importantly RCSINIT
 in order to change default archive location ("
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
SET RCSINIT=-x,v/
\end_layout

\end_inset

") --- LyX expects archive to be found in 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
file.lyx,v
\end_layout

\end_inset

 within the original document directory.
 See also README shipped with Windows RCS binaries.
\end_layout

\end_inset

.
\end_layout

\begin_layout Subsubsection

\family sans
Register
\end_layout

\begin_layout Standard
If your document is not under revision control, this is the only item shown
 in the menu.
 And if it is under revision control, the 
\family sans
Register
\family default
 item is not visible.
 
\end_layout

\begin_layout Standard
This command registers your document with RCS (unless you are under the
 directory managed by CVS)\SpecialChar \@.
 You are asked interactively to supply an initial
 description of the document.
 The document is now set in Read-Only mode and you have to 
\family sans
Check
\begin_inset space ~
\end_inset

Out
\begin_inset space ~
\end_inset

For
\begin_inset space ~
\end_inset

Edit
\family default
, before making any changes to it.
 A document under revision control has a 
\begin_inset Quotes eld
\end_inset

[RCS:<version> <locker>]
\begin_inset Quotes erd
\end_inset

 item tagged to the filename in the minibuffer.
\end_layout

\begin_layout Standard
RCS command that is run: 
\family typewriter
ci -q -u -i -t-"<initial description>" <file-name>
\end_layout

\begin_layout Standard
Read 
\family typewriter
man ci
\family default
 to understand the switches.
 
\end_layout

\begin_layout Subsubsection

\family sans
Check In Changes
\end_layout

\begin_layout Standard
When you are finished editing a file, you check in your changes.
 When you do this, you are asked for a description of the changes.
 This is stored in the history log.
 The version number is bumped, your changes are applied to the master RCS
 file, the document is unlocked and set to Read-Only mode.
 
\end_layout

\begin_layout Standard
RCS command: 
\family typewriter
ci -q -u -m"<description>" <file-name>
\end_layout

\begin_layout Subsubsection

\family sans
Check Out For Edit
\end_layout

\begin_layout Standard
By doing this you lock the document so that only you can edit it.
 This will also make the document Read-Write only for you.
 You will usually continue editing for a while and when you are finished
 you check in your changes.
 The status line is changed to reflect that you have locked the file.
 
\end_layout

\begin_layout Standard
RCS command: 
\family typewriter
co -q -l <file-name>
\end_layout

\begin_layout Subsubsection

\family sans
Revert To Repository Version
\end_layout

\begin_layout Standard
This will discard all changes made to the document since the last check
 in.
 You get a warning before changes are discarded.
\end_layout

\begin_layout Standard
RCS command: 
\family typewriter
co -f -u<version> <file-name>
\end_layout

\begin_layout Subsubsection

\family sans
Undo Last Checkin
\end_layout

\begin_layout Standard
This makes as if the last check in never happened.
 No changes are made to the document loaded into LyX, but the last version
 is removed from the master RCS file.
 
\end_layout

\begin_layout Standard
RCS command: 
\family typewriter
rcs -o<version> <file-name>
\end_layout

\begin_layout Subsubsection

\family sans
Show History
\end_layout

\begin_layout Standard
This shows the complete history of the RCS document.
 The output of 
\family typewriter
rlog <file-name>
\family default
 is shown in a browser.
 See 
\family typewriter
man rlog
\family default
 for more info.
\end_layout

\begin_layout Subsubsection
Revision info
\end_layout

\begin_layout Standard
LyX supports RCS version number, author name, date and time of last commit.
 All those are extracted from 
\family typewriter
rlog -r <file-name>
\family default
.
 For other details see 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:VCS-Revision-Information"

\end_inset

 for details.
\end_layout

\begin_layout Subsection
CVS commands in LyX
\end_layout

\begin_layout Standard
A subset of CVS operations is supported by LyX.
 You can find the commands in the 
\family sans
File\SpecialChar \menuseparator
Version
\begin_inset space ~
\end_inset

Control
\family default
 submenu.
 The version control system SVN is more powerful, so please use it instead
 of CVS if possible.
\end_layout

\begin_layout Subsubsection

\family sans
General CVS usage
\end_layout

\begin_layout Standard
If you start from scratch with CVS you have to create your repository and
 checkout the working copy with external tools.
 If you're using a client-server setup you may need to login before doing
 the first repository checkout.
\end_layout

\begin_layout Standard
If your documents are under revision control and others are using the same
 repository problems arise when different changes to the same document at
 the same location happen.
 Standard CVS repositories doesn't operate with a file locking mechanism.
 This may be surprising, but conflicts only occur if people disagree on
 the proper content of the same part of a document.
 So, if co-workers are used to communicate regularly, these conflicts occur
 rarely.
 If they don't communicate they have a fundamental problem anyway.
 Nevertheless some people like to work with so called 
\begin_inset Quotes eld
\end_inset

reserved checkouts
\begin_inset Quotes erd
\end_inset

.
 If they do so the working copy of all files is readonly when checked out
 first and the user starts editing after using a special command to make
 the working copy writable.
 When the changes are checked in the working copy returns to readonly state.
 With LyX one has to edit the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.cvsrc
\end_layout

\end_inset

 file and add the line 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
cvs -r
\end_layout

\end_inset

 to work with reserved checkouts.
 The benefit is the possibility to see who is using a writable copy of some
 document.
 It's not guaranteed only one user makes a copy writable.
\end_layout

\begin_layout Standard
LyX tries to guess if you're using reserved or non-reserved checkouts.
 If your working copy is readonly or it is writable and an additional copy
 of your document exists in the CVS/Base sub-directory a reserved otherwise
 a non-reserved checkout is assumed.
 When a reserved checkout is detected you have to use 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Check Out
\end_layout

\end_inset

 to make your working copy writable if it's readonly.
 After doing so the 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Check In
\end_layout

\end_inset

 operation is possible and that makes your working copy readonly again after
 transferring your changes to the repository.
\end_layout

\begin_layout Standard
More information about CVS can be found here 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://www.nongnu.org/cvs
\end_layout

\end_inset

 and here 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://ximbiot.com/cvs
\end_layout

\end_inset

.
\end_layout

\begin_layout Standard
Read 
\family typewriter
man cvs
\family default
 to understand the sub-commands and the switches mentioned below.
\end_layout

\begin_layout Subsubsection

\family sans
Register
\end_layout

\begin_layout Standard
If your document is not under revision control, this is the only item shown
 in the menu.
 And if it is under revision control, the 
\family sans
\bar under
R
\bar default
egister
\family default
 item is not visible.
 
\end_layout

\begin_layout Standard
This command registers in CVS your document 
\begin_inset Flex Strong
status collapsed

\begin_layout Plain Layout

\emph on
only
\end_layout

\end_inset

 in case you have already the documents directory under CVS control (in
 particular 
\family typewriter
CVS/Entries
\family default
 file exists).
 This means you have to create or checkout the archive by yourself using
 external tools.
 (In case you forget that step LyX registers the document with RCS.)
\end_layout

\begin_layout Standard
Then you are asked interactively to supply an initial description of the
 document.
 Don't forget that registered file is not yet checked in.
\end_layout

\begin_layout Standard
CVS command that is run: 
\family typewriter
cvs -q add -m"<entered message>" "<file-name>"
\end_layout

\begin_layout Standard
The term 
\family typewriter
"<file-name>"
\family default
 above and for all other CVS commands is an abbreviation for 
\begin_inset Quotes eld
\end_inset

change the current working directory to file location and use the file name
 without path component as argument
\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Subsubsection

\family sans
Check In Changes
\end_layout

\begin_layout Standard
When you are finished editing a file, you commit your changes.
 When you do this and you had changed the document, you are asked for a
 description of the changes.
 After that changes are written to the repository.
 In case you didn't change the document and a reserved checkout is detected
 the reservation made on 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Check Out
\end_layout

\end_inset

 is undone.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
CVS
\begin_inset space ~
\end_inset

command: 
\begin_inset space ~
\end_inset


\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
cvs 
\family typewriter
-q commit -m"<description>" "<file-name>"
\end_layout

\end_inset

 or
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
cvs -q unedit 
\family typewriter
"<file-name>"
\end_layout

\end_inset


\end_layout

\begin_layout Subsubsection

\family sans
Check Out Changes
\end_layout

\begin_layout Standard
When you are sharing a repository with others, you may have to incorporate
 their changes into your working copy.
\end_layout

\begin_layout Standard
CVS command: 
\family typewriter
cvs -q update "<file-name>"
\end_layout

\begin_layout Standard
If a readonly checkout is detected the working copy is made writable and
 reserved.
\end_layout

\begin_layout Standard
CVS command: 
\family typewriter
cvs -q edit "<file-name>"
\end_layout

\begin_layout Subsubsection

\family sans
Revert To Repository Version
\end_layout

\begin_layout Standard
This will discard all changes made to the document since the last check
 in.
 You get a warning before changes are discarded.
 Firstly the file is deleted, secondly CVS update command is run.
\end_layout

\begin_layout Standard
CVS command: 
\family typewriter
cvs -q update "<file-name>"
\end_layout

\begin_layout Standard
If a reserved checkout is detected and the working copy has no changes only
 the reservation is undone.
\end_layout

\begin_layout Standard
CVS command: 
\family typewriter
cvs -q unedit "<file-name>"
\end_layout

\begin_layout Subsubsection
Update of the local directory checkout from repository
\end_layout

\begin_layout Standard
Once your documents gets more complex, containing sub-documents and pictures,
 including external 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.tex
\end_layout

\end_inset

 files and so on using version control becomes more complicated.
 LyX supports updating the whole tree in which resides the document.
 This become especially useful once you cooperate with people which neither
 have detailed knowledge about CVS usage nor they have ambition to commit
 additional material to the repository.
 You have to organize the files structure so that all external files are
 in the same directory or subdirectories of the document.
 It's good practice anyway to store multipart documents in an extra directory.
\end_layout

\begin_layout Standard
The 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Update local directory from repository
\end_layout

\end_inset

 command updates the whole directory.
 If local changes are detected user is warned before update starts.
 In case of merge conflicts both versions of the conflicting document parts
 are placed in the final document.
 You have to review and correct the result of the merge.
 You'll find the conflicts enclosed in pairs of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
<<<<<<<
\end_layout

\end_inset

 and 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
>>>>>>>
\end_layout

\end_inset

 separated by 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
=======
\end_layout

\end_inset

.
 The first part is your version as before the update operation with the
 document name prepended.
 The second one is the repository version with the version number after
 the sequence of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
>
\end_layout

\end_inset

 signs.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
CVS
\begin_inset space ~
\end_inset

commands: 
\begin_inset space ~
\end_inset


\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
cd $path; cvs diff 
\family typewriter
"."
\end_layout

\end_inset

 (Ask if changes are detected.)
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
cd $path; cvs -q update 
\family typewriter
"."
\end_layout

\end_inset


\end_layout

\begin_layout Standard
where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$path
\end_layout

\end_inset

 stands for the path to the document.
\end_layout

\begin_layout Subsubsection

\family sans
Show History
\end_layout

\begin_layout Standard
This shows the complete history of the CVS document.
 The output of 
\family typewriter
cvs log "<file-name>"
\family default
 is shown in a browser.
\end_layout

\begin_layout Subsection
SVN commands in LyX
\end_layout

\begin_layout Standard
SVN is now partially supported by LyX.
 You can find the commands in the 
\family sans
File\SpecialChar \menuseparator
Version
\begin_inset space ~
\end_inset

Control
\family default
 submenu.
 Please note that if you use password protected access to repository via
 ssh, you will be asked in terminal window.
 LyX was tested against SVN 1.5 and 1.6.
\begin_inset Foot
status open

\begin_layout Plain Layout
Most of the commands will work with 1.4 too, see 
\begin_inset CommandInset ref
LatexCommand ref
reference "sub:SVN-Repo-Update"

\end_inset

.
\end_layout

\end_inset

 Subversion completely changed its internal data structures in version 1.7
 and LyX does not support this version yet.
\end_layout

\begin_layout Subsubsection

\family sans
Register
\end_layout

\begin_layout Standard
If your document is not under revision control, this is the only item shown
 in the menu.
 And if it is under revision control, the 
\family sans
\bar under
R
\bar default
egister
\family default
 item is not visible.
 
\end_layout

\begin_layout Standard
This command registers in SVN your document ONLY in case you have already
 the documents directory under SVN control (in particular 
\family typewriter
.svn/entries
\family default
 file exists).
 This means you have to checkout the archive by yourself.
 
\end_layout

\begin_layout Standard
Then you are asked interactively to supply an initial description of the
 document.
 Don't forget that registered file is not yet commited.
\end_layout

\begin_layout Standard
SVN command that is run: 
\family typewriter
svn add -q 
\begin_inset Quotes eld
\end_inset

<file-name>
\begin_inset Quotes erd
\end_inset


\end_layout

\begin_layout Standard
Read 
\family typewriter
man svn
\family default
 to understand the switches.
 
\end_layout

\begin_layout Subsubsection

\family sans
Check In Changes
\end_layout

\begin_layout Standard
When you are finished editing a file, you commit your changes.
 When you do this, you are asked for a description of the changes.
 After that changes are commited.
\end_layout

\begin_layout Standard
SVN command:
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
In case locking is not enabled.
 See Section 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:SVN-File-Locking"

\end_inset

.
\end_layout

\end_inset

 
\family typewriter
svn commit -q -m"<description>" <file-name>
\end_layout

\begin_layout Subsubsection

\family sans
Check Out For Edit
\end_layout

\begin_layout Standard
Updates the changes of this file from the repository.
 Be sure you understand SVN merging and conflicts resolving before using
 this function, because all conflicts has to be resolved manually by you!
\end_layout

\begin_layout Standard
SVN command:
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Ditto.
\end_layout

\end_inset

 
\family typewriter
svn update --non-interactive 
\begin_inset Quotes eld
\end_inset

<file-name>
\begin_inset Quotes erd
\end_inset


\end_layout

\begin_layout Subsubsection

\family sans
Revert To Repository Version
\end_layout

\begin_layout Standard
This will discard all changes made to the document since the last check
 in.
 You get a warning before changes are discarded.
 
\end_layout

\begin_layout Standard
SVN command: 
\family typewriter
svn revert -q 
\begin_inset Quotes eld
\end_inset

<file-name>
\begin_inset Quotes erd
\end_inset


\end_layout

\begin_layout Subsubsection
\begin_inset CommandInset label
LatexCommand label
name "sub:SVN-Repo-Update"

\end_inset

Update of the local directory checkout from repository
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Note that this command will work only with subversion 
\begin_inset Formula $\geqq1.5$
\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Standard
All the commands above have one shortcomming - they deal with the current
 document only.
 Once your document contains pictures, includes external 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.tex
\end_layout

\end_inset

 files and so on administration becomes more complicated.
 LyX now supports updating the whole tree in which resides the document
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
One need to organize the files structure so that all external files are
 in the same directory or subdirectories of the document.
 
\end_layout

\end_inset

.
 This become especially useful once you cooperate with people which neither
 know about subversion management nor they have ambition to commit additional
 material to the repository.
 
\end_layout

\begin_layout Standard
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
Update local directory from repository
\end_layout

\end_inset

 command updates the whole directory and in case of merge conflicts local
 version of the files are left, so no unintended data loss occurs.
 If local changes are detected user is warned before update starts.
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
SVN
\begin_inset space ~
\end_inset

commands: 
\begin_inset space ~
\end_inset


\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
svn diff $path
\end_layout

\end_inset

 (Ask if changes are detected.)
\begin_inset Newline newline
\end_inset


\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
svn update --accept mine-full $path
\end_layout

\end_inset


\end_layout

\begin_layout Standard
where 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
$path
\end_layout

\end_inset

 stands for the path to the document.
\end_layout

\begin_layout Subsubsection

\family sans
Show History
\end_layout

\begin_layout Standard
This shows the complete history of the SVN document.
 The output of 
\family typewriter
svn log 
\begin_inset Quotes eld
\end_inset

<file-name>
\begin_inset Quotes erd
\end_inset


\family default
 is shown in a browser.
\end_layout

\begin_layout Subsubsection
File Locking
\begin_inset CommandInset label
LatexCommand label
name "subsec:SVN-File-Locking"

\end_inset


\end_layout

\begin_layout Standard
The file exchange through various revision control systems brings the problem
 of merge conflicts in case two different users try to edit the same (parts
 of) document.
 When such a conflict happens it needs manual resolving and one reasonable
 alternative is to provide some kind of locking mechanism, which guarantees
 that only one user is allowed to edit file at the given time.
\end_layout

\begin_layout Standard
SVN has two such mechanisms to provide mutual exclusivity for file access
 - locks and automatic setting of write permissions (see sec.
 
\begin_inset CommandInset ref
LatexCommand ref
reference "subsec:Automatical-Locking-Property"

\end_inset

) based on 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
svn:needs-lock
\end_layout

\end_inset

 file svn property
\begin_inset Foot
status open

\begin_layout Plain Layout
http://svnbook.red-bean.com/en/1.2/svn.advanced.locking.html
\end_layout

\end_inset

.
 If this property is detected for a given document LyX starts to use SVN
 locks for document editing automatically and the whole check-in/out mechanism
 switches to the same regimen as for RCS.
 This in particular means there are two different modes of file use in LyX:
\end_layout

\begin_layout Itemize
Unlocked state.
 The loaded file is in the read-only mode.
 For editing on needs to check-out.
 
\emph on
Check-out
\emph default
 consists of updating from the repository and gaining write lock.
 If the lock is not possible to obtain, we remain in unlocked state.
\end_layout

\begin_layout Itemize
Locked state.
 The loaded file is in the 'normal' edit mode.
 No other user is allowed to edit the file.
 
\emph on
Check-in
\emph default
 consists of commiting changes and releasing write-lock.
 If no changes have been made to the document, no commit will be produced
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Don't be puzzled by the fact that you will be asked for commit message anyway.
\end_layout

\end_inset

 and only the write-lock will be released.
\end_layout

\begin_layout Standard
SVN commands:
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
Check-in:
\family typewriter
 svn commit -q -m"<description>" "<file-name>"
\begin_inset Newline newline
\end_inset

svn unlock "<file-name>"
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
Check-out: 
\family typewriter
svn update "<file-name>"
\begin_inset Newline newline
\end_inset

svn lock "<file-name>"
\end_layout

\begin_layout Subsubsection

\family typewriter
\begin_inset CommandInset label
LatexCommand label
name "subsec:Automatical-Locking-Property"

\end_inset


\family default
Automatic Locking Property
\end_layout

\begin_layout Standard
The above mentioned automatic setting of write permissions of the .lyx file
 can be set through
\family sans
\bar under
 F
\bar default
ile\SpecialChar \menuseparator

\bar under
V
\bar default
ersion
\begin_inset space ~
\end_inset

Control\SpecialChar \menuseparator

\bar under
T
\bar default
oggle locking property
\family default
.
 This command is active only when the file is not locked on the svn server
 (i.e.
 you need to check-out before proceeding).
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
SVN
\begin_inset space ~
\end_inset

commands:
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
Set:
\family typewriter
 svn propset svn:needs-lock ON "<file-name>"
\end_layout

\begin_layout Labeling
\labelwidthstring 00.00.0000
Unset: 
\family typewriter
svn propdel svn:needs-lock "<file-name>"
\end_layout

\begin_layout Subsubsection
\begin_inset CommandInset label
LatexCommand label
name "sub:VCS-Revision-Information"

\end_inset

Revision Information in Documents
\end_layout

\begin_layout Standard
There are more possibilities how to activate revision information in our
 document.
\end_layout

\begin_layout Itemize
LyX supports directly:
\end_layout

\begin_deeper
\begin_layout Itemize
tree revision information (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
vcs-tree-revision
\end_layout

\end_inset

).
 The result is the output of the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
svnversion
\end_layout

\end_inset

 command, the following table gives you an idea, how to read the results.
\end_layout

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

\begin_layout Plain Layout
Output
\end_layout

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

\begin_layout Plain Layout
Meaning
\end_layout

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

\begin_layout Plain Layout
4123:4168
\end_layout

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

\begin_layout Plain Layout
mixed revision working copy
\end_layout

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

\begin_layout Plain Layout
4168M
\end_layout

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

\begin_layout Plain Layout
modified working copy
\end_layout

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

\begin_layout Plain Layout
4123S
\end_layout

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

\begin_layout Plain Layout
switched working copy
\end_layout

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

\begin_layout Plain Layout
4123P
\end_layout

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

\begin_layout Plain Layout
partial working copy, from a sparse checkout
\end_layout

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

\begin_layout Plain Layout
4123:4168MS
\end_layout

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

\begin_layout Plain Layout
mixed revision, modified, switched working copy
\end_layout

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

\end_inset


\end_layout

\begin_layout Itemize
file revision information.
 The result comes from parsing the output of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
svn
\begin_inset space ~
\end_inset

info
\begin_inset space ~
\end_inset

--xml
\begin_inset space ~
\end_inset

file.lyx
\end_layout

\end_inset

.
 Supported flags are:
\end_layout

\begin_deeper
\begin_layout Itemize
version number of the last commit (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
vcs-revision
\end_layout

\end_inset

)
\end_layout

\begin_layout Itemize
author of the last commit (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
vcs-author
\end_layout

\end_inset

)
\end_layout

\begin_layout Itemize
date of the last commit (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
vcs-date
\end_layout

\end_inset

)
\end_layout

\begin_layout Itemize
time of the last commit (
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
vcs-time
\end_layout

\end_inset

)
\end_layout

\end_deeper
\begin_layout Standard
You can obtain this info via InsetInfo (e.g.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
info-insert buffer vcs-date
\end_layout

\end_inset

).
 The information will be available only when you have the file stored under
 svn managment (i.e.
 the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
.svn
\end_layout

\end_inset

 directory is available with your document).
\end_layout

\end_deeper
\begin_layout Itemize
Another---a hacking one---possibility is to use svn keywords
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
http://svnbook.red-bean.com/en/1.4/svn.advanced.props.special.keywords.html
\end_layout

\end_inset

.
 In short -- you set file keywords property (e.g.
 
\family sans
svn propset svn:keywords 'Rev' file.lyx
\family default
) and then paste keyword TeX code
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
This is an easy way how to ensure that LyX won't break the line in the middle
 of keyword tag.
\end_layout

\end_inset

 tag in your document (e.g.
 
\begin_inset ERT
status open

\begin_layout Plain Layout

$Rev$
\end_layout

\end_inset

).
 This way svn client will automatically substitute revision number (e.g.
 
\begin_inset ERT
status open

\begin_layout Plain Layout

$Rev: 59 $
\end_layout

\end_inset

) after each update and commit.
 There are more problems with this approach.
 Firstly, the '$' character is used in TeX world for math equations, so
 any occurence of math formula 
\begin_inset Formula $Rev$
\end_inset

 become 
\begin_inset Formula $Rev:59$
\end_inset

 in your LyX document.
 Similarly for other keywords like Id, Date, Author, etc.
 Secondly svn output is dependent on your locales, so its very easy that
 svn would produce some problematic strings once Date is used.
 Thirdly you get the whole 'Rev: 59' string in your document instead of
 the plain number.
 Until subversion implements user's custom keywords it will be hard to use
 this approach reliably or let LyX to support it directly.
\end_layout

\begin_layout Subsection
SVN and Windows Environment
\end_layout

\begin_layout Quote
My inclination is to say that if the user cannot figure out the command
 line operations on their own fairly quickly, they would be well advised
 to use TortoiseSVN.
 ---P.
 A.
 Rubin
\end_layout

\begin_layout Subsubsection
Preparation
\end_layout

\begin_layout Standard
In addition to installing LyX, and having access to a Subversion repository,
 the user will need to install the Subversion 1.6 client program.
 A Windows installer for the client program is available from 
\begin_inset CommandInset href
LatexCommand href
name "CollabNet"
target "http://www.collab.net/downloads/subversion/svn-other.html"

\end_inset

.
 The user may also want to install 
\begin_inset CommandInset href
LatexCommand href
name "TortoiseSVN"
target "http://tortoisesvn.tigris.org/"

\end_inset

, which integrates Subversion operations into the context (rightclick) menu
 of Windows Explorer.
 Operations done outside LyX will typically be more convenient using the
 Explorer context menu.
 Note that TortoiseSVN is not a replacement for the client program, which
 is what LyX itself will use.
\end_layout

\begin_layout Subsubsection
Bringing a document under Subversion control
\end_layout

\begin_layout Standard
Before a LyX document can be brought under version control in Subversion,
 its parent directory needs to be under version control.
 If the document is being added to a project already in the repository,
 this is accomplished by checking the project out to the directory where
 the new document will be placed.
 If the project itself is not yet under version control (for instance, if
 this document starts a new project), the directory must be imported into
 the repository.
 This is done outside LyX.
 Both import and checkout are easily accomplished from the Explorer context
 menu using TortoiseSVN, or alternatively can be done using the command
 line client at a DOS prompt.
 The procedure for importing the project using TortoiseSVN is described
 below, assuming an existing repository and a new project being started
 in 
\family typewriter
C:
\backslash
new project
\family default
.
 For information on using the Subversion client program, run 
\family typewriter
svn --help 
\family default
in a DOS shell.
\end_layout

\begin_layout Enumerate
Locate 
\family typewriter
C:
\backslash
new project 
\family default
in Windows Explorer, right click it, and select 
\family typewriter
TortoiseSVN > Repo-browser
\family default
.
 If necessary, adjust the URL for the repository, then click OK.
\end_layout

\begin_layout Enumerate
Right click the level of the repository under which you want to place the
 new project folder (typically the top level) and click 
\family typewriter
Create folder\SpecialChar \ldots{}

\family default
 Supply a name for the project folder and click OK.
 Add a message for the log file if desired, then click OK again.
 The new project folder should appear in the repository.
 Finally, click OK again to exit the repository browser.
\end_layout

\begin_layout Enumerate
Once again right click 
\family typewriter
C:
\backslash
new project
\family default
, this time selecting SVN Checkout\SpecialChar \ldots{}
 Select the URL of the project folder
 you just created in the repository, and set the checkout directory to 
\family typewriter
C:
\backslash
new project.

\family default
 Click OK.
 You will be warned about a non-empty folder; click OK to proceed.
 You should now have a 
\family typewriter
.svn
\family default
 directory under 
\family typewriter
C:
\backslash
new project.
\end_layout

\begin_layout Enumerate
Create or open your document in LyX and click 
\family sans
\bar under
F
\bar default
ile\SpecialChar \menuseparator

\bar under
V
\bar default
ersion
\begin_inset space ~
\end_inset

Control\SpecialChar \menuseparator

\bar under
R
\bar default
egister.
 
\family default
Add a log message and click OK to commit the document to version control.
\end_layout

\begin_layout Standard
From this point onward, you should have full functionality in the 
\family sans
\bar under
F
\bar default
ile\SpecialChar \menuseparator

\bar under
V
\bar default
ersion
\begin_inset space ~
\end_inset

Control
\family default
 menu.
 You also have the option of checking the document in and out, viewing its
 history, etc.
 using the TortoiseSVN context menu in Windows Explorer or the Subversion
 client program from a command prompt.
\end_layout

\begin_layout Subsubsection
SSH tunnel used with SVN under Windows
\end_layout

\begin_layout Standard
Compared with Linux setting up svn client to communicate over ssh under
 Windows is a rather troublesome task.
 We will at least offer some hints how to setup the client side but prior
 knowledge about ssh and the Windows command line is needed, also be prepared
 for a great deal of frustration\SpecialChar \ldots{}

\end_layout

\begin_layout Enumerate
Get a svn client for windows, as described in the previous sections.
 When it is a fresh install run some svn command (e.g.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
svn --version
\end_layout

\end_inset

) to create config files, which you will need to change later on.
\end_layout

\begin_layout Enumerate
Choose a ssh client for Windows.
 There are several possibilities, we will use the one from Putty tools
\begin_inset Foot
status open

\begin_layout Plain Layout
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
\end_layout

\end_inset


\end_layout

\end_inset

.
 You will need to set the connection up so that the client doesn't ask for
 any password from you.
 To keep things easy we will use only keys without any additional password
 protection etc.
\end_layout

\begin_deeper
\begin_layout Enumerate
Generate keys by 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
puttygen
\end_layout

\end_inset

.
 Save your private .ppk key file and put the public one on the server side.
 If the SVN server runs on Linux, note that the format of the public key
 is not compatible with Linux openssh and you will need to direcly copy-paste
 the key from the “
\emph on
Public key for pasting into OpenSSH authorized_keys file
\emph default
:” edit field into the server's 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
~/.ssh/authorized_keys
\end_layout

\end_inset

/ 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
authorized_keys2
\end_layout

\end_inset

 file.
\end_layout

\begin_layout Enumerate
Get the Putty's 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
plink
\end_layout

\end_inset

.
 In the SVN config file
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
Exact path depends on Windows version, usually somewhere around 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
c:
\backslash
Documents and Settings
\backslash
user
\backslash
Application Data
\backslash
Subversion
\backslash
config
\end_layout

\end_inset

 / 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
AppData
\backslash
Roaming
\backslash
Subversion
\end_layout

\end_inset

.
\end_layout

\end_inset

, section [tunnels], setup ssh command, e.g.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
ssh=c:/path/plink.exe -i c:/path/private_key.ppk
\end_layout

\end_inset

.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
It will usually take a lot of time to get exact command right and it depends
 on many things.
 For example do not have some remote server saved as a default session in
 Putty etc.
 If things fail, try to connect via plink without SVN first.
\end_layout

\end_inset


\end_layout

\end_deeper
\begin_layout Enumerate
Checkout the SVN archive, e.g.
 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
svn co svn+ssh://user@server/repository_path
\end_layout

\end_inset

.
\end_layout

\begin_layout Subsubsection
End-of-Line Conversions
\end_layout

\begin_layout Standard
When the collaborators are mixing Linux and Windows environments, LyX will
 use different line endings inside the .lyx files.
 This is not a problem as far as LyX functionality is concerned, but the
 commit diffs will be huge and merge-conflicts prone.
 Fortunately SVN itself knows
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://svnbook.red-bean.com/en/1.4/svn.advanced.props.file-portability.html
\end_layout

\end_inset


\end_layout

\end_inset

 how to deal with CR/LF problems when switching .lyx files to the 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
native
\end_layout

\end_inset

 mode.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
For the lazy guys: 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
svn propset svn:eol-style native FILE_NAME
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Subsection
Further tuning
\end_layout

\begin_layout Standard
With the recent addition of the vc-command function LyX power users are
 allowed to create their own commands for revision control.
\end_layout

\begin_layout Standard
As an example you can see how two TortoiseSVN commands could be integrated
 directly:
\end_layout

\begin_layout Description
Commit: 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
vc-command DR "." "TortoiseProc /command:commit /path:$$p"
\end_layout

\end_inset


\end_layout

\begin_layout Description
Revert: 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
vc-command DR "." "TortoiseProc /command:revert /path:$$p"
\end_layout

\end_inset


\end_layout

\begin_layout Subsection
Version control and Document comparison
\end_layout

\begin_layout Standard
One of the typical uses of version control is to inspect the changes between
 revisions, usually by creating 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
diff
\end_layout

\end_inset

 dumps.
 While this is useful for plain text files, it is much less useful in the
 case of LyX files, which have more complicated structure.
 Hence we provide binding to the Document comparison feature.
 They are two ways of calling this feature - either by direct call of 
\begin_inset Flex Code
status collapsed

\begin_layout Plain Layout
VC_COMPARE
\end_layout

\end_inset

 LyX function (for details see LyX functions manual) or by icon/menu item
 
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
Compare with older revision...
\end_layout

\end_inset

.
 One can either compare two chosen revisions of the document or he can simply
 compare the current version of edited text with older revisions (where
 '
\begin_inset Flex MenuItem
status collapsed

\begin_layout Plain Layout
0
\end_layout

\end_inset

' revisions back means comparison of the edited file with last commited
 revision).
 
\end_layout

\begin_layout Standard
This feature is supported for SVN and RCS though due to the more complicated
 versioning scheme of RCS there is a constraint -- when addressing the revisions
 in dialog, numbers always point to the last number in RCS revision number,
 i.e.
 '35' in '1.2.35'.
\end_layout

\begin_layout Section
Literate Programming
\end_layout

\begin_layout Standard
Updated by 
\noun on
Kayvan Sylvan 
\noun default
(kayvan@sylvan.com)
\noun on
, 
\noun default
original documentation written by 
\noun on
Edmar Wienskoski Jr.

\noun default
 (edmar-w-jr@technologist.com)
\end_layout

\begin_layout Subsection
Introduction
\end_layout

\begin_layout Standard
The main purpose of this documentation is to show you how to use LyX for
 literate programming, where it is assumed that you are familiar with this
 programming technique, and know what 
\begin_inset Quotes eld
\end_inset

tangling
\begin_inset Quotes erd
\end_inset

 and 
\begin_inset Quotes eld
\end_inset

weaving
\begin_inset Quotes erd
\end_inset

 means.
 If that is not the case, please follow the web links provided in the following
 sections.
 There is a lot of good documentation out there covering old development
 history to the latest tools tips.
\end_layout

\begin_layout Standard
It is also assumed that you are familiar with LyX itself to a point that
 you are comfortable changing your LyX preferences, and X resources file.
 If that is not the case please refer to other LyX documentation to cover
 your specific needs.
\end_layout

\begin_layout Subsection
Literate Programming
\end_layout

\begin_layout Standard
From the Literate Programming FAQ: 
\end_layout

\begin_layout Quotation
Literate programming is the combination of documentation and source together
 in a fashion suited for reading by human beings.
 In fact, literate programs should be enjoyable reading, even inviting!
 (Sorry Bob, I couldn't resist!) In general, literate programs combine source
 and documentation in a single file.
 Literate programming tools then parse the file to produce either readable
 documentation or compilable source.
 The WEB style of literate programming was created by D.
\begin_inset space \thinspace{}
\end_inset

E.
 Knuth during the development of his TeX typesetting software.
 
\end_layout

\begin_layout Standard
Another excerpt says:
\end_layout

\begin_layout Quotation

\emph on
How is literate programming different from verbose commenting?
\end_layout

\begin_layout Quotation
There are three distinguishing characteristics.
 In order of importance, they are: 
\end_layout

\begin_deeper
\begin_layout Itemize
flexible order of elaboration 
\end_layout

\begin_layout Itemize
automatic support for browsing 
\end_layout

\begin_layout Itemize
typeset documentation, especially diagrams and mathematics 
\end_layout

\end_deeper
\begin_layout Standard
Now that I sparked your curiosity, take a look in the references.
\end_layout

\begin_layout Subsubsection
References
\end_layout

\begin_layout Standard
The complete Literate Programming FAQ can be found at:
\end_layout

\begin_layout Quote
Literate Programming FAQ 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://www.literateprogramming.com/lpfaq.pdf
\end_layout

\end_inset


\end_layout

\begin_layout Standard
The FAQ lists 23 (twenty three!) different literate programming tools.
 Where some are specialized or 
\begin_inset Quotes eld
\end_inset

tailored
\begin_inset Quotes erd
\end_inset

 for particular programming languages, while other have general scope.
 I selected 
\noun on
Noweb
\noun default
 for my own use for several reasons:
\end_layout

\begin_layout Itemize
It can generate the documentation either in LaTeX or HTML.
\end_layout

\begin_layout Itemize
It has a open architecture, i.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

it is easy to plug in new filters and to perform special processing that
 you may need.
 
\end_layout

\begin_layout Itemize
There is a good selection of filters available already (the HTML is one
 of them).
\end_layout

\begin_layout Itemize
It is free.
\end_layout

\begin_layout Standard
The Noweb web page can be found at: 
\end_layout

\begin_layout Quote
Noweb home page 
\begin_inset Flex URL
status collapsed

\begin_layout Plain Layout

http://www.cs.virginia.edu/~nr/noweb/
\end_layout

\end_inset


\end_layout

\begin_layout Standard
Starting from there you can reach many other interesting links and even
 some literate program examples.
\end_layout

\begin_layout Subsection
LyX and Literate Programming
\end_layout

\begin_layout Standard
The LyX support for Literate Programming is provided by using the generic
 LyX converters mechanism.
 This support is provided in a 
\begin_inset Quotes eld
\end_inset

Noweb independent
\begin_inset Quotes erd
\end_inset

 way, i.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

you will be able to use this new LyX feature with some other literate programmin
g tool of your choice by just changing your LyX preferences.
\end_layout

\begin_layout Subsubsection
Generating documents and code (weaving and tangling)
\end_layout

\begin_layout Paragraph
Selecting the document class
\end_layout

\begin_layout Standard
If you have installed Noweb and LyX successfully, whenever you open a new
 document or try to change the document class of an existing one, you will
 find that there are three new document classes available:
\end_layout

\begin_layout Itemize
Article (Noweb)
\end_layout

\begin_layout Itemize
Book (Noweb)
\end_layout

\begin_layout Itemize
Report (Noweb)
\end_layout

\begin_layout Standard
You must select one of them to create your literate documents from.
 
\end_layout

\begin_layout Standard
Note that literate documents are not limited to these three classes.
 New classes can be generated from other styles like letter or in combination
 with other class variations like Article (AMS).
 If you have special needs that cannot be covered by one of the existing
 classes, let the LyX developers list (lyx-devel@lists.lyx.org) know and we
 will arrange to insert a new entry, or teach you how to do it.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
It is very simple, it involves the creation of a file with four lines, and
 re-running of the auto configuration.
\end_layout

\end_inset

 Moreover, if you use a literate tool other than Noweb you may need to create
 a new set of document classes for it.
\end_layout

\begin_layout Paragraph
Typing code in
\end_layout

\begin_layout Standard
LyX enables you to write code with a layout named 
\noun on
Scrap
\noun default
.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
The equivalent Noweb term is 
\begin_inset Quotes eld
\end_inset

Chunk
\begin_inset Quotes erd
\end_inset

.
 For historical reasons, I got used to the term 
\begin_inset Quotes eld
\end_inset

scrap
\begin_inset Quotes erd
\end_inset

 introduced by other literate tool named Nuweb, which I used for many years
 before rendering myself to Noweb.
\end_layout

\end_inset

 Noweb delimits scraps like this:
\end_layout

\begin_layout LyX-Code
<<My scrap>>=
\end_layout

\begin_layout LyX-Code
  code
\end_layout

\begin_layout LyX-Code
  more code
\end_layout

\begin_layout LyX-Code
  even more code
\end_layout

\begin_layout LyX-Code
  @
\end_layout

\begin_layout Standard
The problem is that whatever is written in between the << and the 
\family typewriter
@
\family default
 must be taken literally, i.
\begin_inset space \thinspace{}
\end_inset

g.
\begin_inset space \space{}
\end_inset

LyX should be prevented from making any special interpretation of what has
 been written.
 This is handled by a special layout named Scrap, that works like a normal
 paragraph but has a free spacing capability.
\end_layout

\begin_layout Standard
The down side of the Scrap paragraph layout is that consecutive paragraphs
 of code will be spaced with one empty line in the source code and also
 in the printed documentation.
 The work around is to enter each line of code within a single Scrap, with
 a newline (ctrl-return).
 The example above will look like this:
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
If you have a printed version of this document you will not see any difference
 between the previous example and this one.
\end_layout

\end_inset


\end_layout

\begin_layout LyX-Code
<<My scrap>>=
\begin_inset Newline newline
\end_inset

  code
\begin_inset Newline newline
\end_inset

  more code
\begin_inset Newline newline
\end_inset

  even more code
\begin_inset Newline newline
\end_inset

  @
\end_layout

\begin_layout Standard
This layout works fine.
 The only real inconvenience is that you have to type ctrl-return instead
 of a plain return.
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
It is in my list of 
\begin_inset Quotes eld
\end_inset

improvements
\begin_inset Quotes erd
\end_inset

 to fix that.
\end_layout

\end_inset


\end_layout

\begin_layout Standard
As a special note, you can also use the 
\begin_inset Quotes eld
\end_inset

%def
\begin_inset Quotes erd
\end_inset

 construct of Noweb in your scraps to add items to Noweb's identifier cross-refe
rence:
\end_layout

\begin_layout LyX-Code
<<My scrap>>=
\begin_inset Newline newline
\end_inset

  def some_function(args):
\begin_inset Newline newline
\end_inset

    "This is the doc string for this function."
\begin_inset Newline newline
\end_inset

    print "My args: ", args
\end_layout

\begin_layout LyX-Code
@ %def some_function
\end_layout

\begin_layout Standard
For an example of this usage and the resulting cross-reference output, look
 at the Literate python program in 
\emph on
LIBDIR/examples/listerrors.lyx
\emph default
 which should make this all clear.
\end_layout

\begin_layout Paragraph
Generating the documentation
\end_layout

\begin_layout Standard
At this point you already have a new document file with a proper document
 class, and with some code and text on it.
 How do I print it? The answer is simple, you select 
\family sans
View\SpecialChar \menuseparator
DVI,
\family default
 etc.
 Just like you would do for a plain document.
 No special procedure is required.
\end_layout

\begin_layout Standard
To help orientate you, I will now explain what happens inside LyX:
\end_layout

\begin_layout Enumerate
When the 
\family sans
Update\SpecialChar \menuseparator
DVI
\family default
 menu option is chosen, a LaTeX file is generated.
 
\end_layout

\begin_deeper
\begin_layout Standard
If the document is of any literate class the generated file will be named
 with an extension name defined by the 
\begin_inset Quotes eld
\end_inset

literate
\begin_inset Quotes erd
\end_inset

 format (defined in the Preferences panel), otherwise the file will have
 the usual 
\family typewriter
.tex
\family default
 extension.
\end_layout

\end_deeper
\begin_layout Enumerate
Note that the only difference so far is in the name of the file, no special
 processing is required by LyX.
 Given that you formatted the code using the Scrap layout that, by itself,
 takes care of the business.
\end_layout

\begin_layout Enumerate
If the document is of any literate class LyX will then use the internal
 LyX to Noweb converter, followed by the Noweb to LaTeX converter
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
The converters are defined in the 
\family sans
Tools\SpecialChar \menuseparator
Preferences
\family default
 panel, under the 
\begin_inset Quotes eld
\end_inset

Conversion
\begin_inset Quotes erd
\end_inset

 tab.
 See section 
\emph on
Converters
\emph default
 of the 
\emph on
Customization
\emph default
 manual for general information about converters.
\end_layout

\end_inset

 to generate the LaTeX file.
\end_layout

\begin_deeper
\begin_layout Standard
Otherwise it will just skip this step.
\end_layout

\end_deeper
\begin_layout Enumerate
Finally, LaTeX is invoked and the regular post processing continues as in
 a plain document.
\end_layout

\begin_layout Standard
Independence from a particular 
\begin_inset Quotes eld
\end_inset

literate tool
\begin_inset Quotes erd
\end_inset

 is easily achieved by changing the commands that are run by the various
 converters.
\end_layout

\begin_layout Paragraph
Generating the code
\end_layout

\begin_layout Standard
When the build menu option is chosen or the corresponding button in the
 toolbar is pressed, a LaTeX file is generated just like step 1 above.
 Next, LyX invokes the 
\family typewriter
Noweb->Program
\family default
 converter.
 This converter needs to be defined by the user and is not installed by
 default, though the Program format is.
 This converter (like any other converter) will have two parts:
\end_layout

\begin_layout Enumerate
The converter program itself.
 This program performs the conversion from the one format to the other (in
 this case, from the Noweb format to the Program pseudo-format).
\end_layout

\begin_layout Enumerate
The error log parser.
 This is a program whose sole purpose is to rewrite error messages in a
 format that LyX understands.
 This makes it possible for LyX to place error boxes in the right places
 in the file buffer.
\end_layout

\begin_layout Standard
The first part, the 
\begin_inset Quotes eld
\end_inset

Converter
\begin_inset Quotes erd
\end_inset

 setting, should be set to 
\begin_inset Quotes eld
\end_inset


\family typewriter
build-script $$i
\family default

\begin_inset Quotes erd
\end_inset

.
 This basically means that LyX will call 
\begin_inset Quotes eld
\end_inset

build-script
\begin_inset Quotes erd
\end_inset

 (a program or script) with the name of the Noweb file (normally a file
 in the LyX temp directory).
 
\end_layout

\begin_layout Standard
This is an implementation of 
\begin_inset Quotes eld
\end_inset

build-script
\begin_inset Quotes erd
\end_inset

 that you can place in a directory on your path:
\end_layout

\begin_layout LyX-Code
#!/bin/sh
\end_layout

\begin_layout LyX-Code
#
\end_layout

\begin_layout LyX-Code
notangle -Rbuild-script $1 | env NOWEB_SOURCE=$1 sh
\end_layout

\begin_layout Standard
The next part of the converter setting is the 
\begin_inset Quotes eld
\end_inset

Flags
\begin_inset Quotes erd
\end_inset

 which is to be set to 
\begin_inset Quotes eld
\end_inset


\family typewriter
parselog=listerrors
\family default

\begin_inset Quotes erd
\end_inset

.
 This will run any errors that are generated by the 
\begin_inset Quotes eld
\end_inset

build-script
\begin_inset Quotes erd
\end_inset

 process through the 
\begin_inset Quotes eld
\end_inset

listerrors
\begin_inset Quotes erd
\end_inset

 program.
\end_layout

\begin_layout Standard
The converter code looks in 
\emph on
MYLYXDIR/scripts
\emph default
 first, then in 
\emph on
LIBDIR/scripts
\emph default
 then on the path for the 
\begin_inset Quotes eld
\end_inset

listerrors
\begin_inset Quotes erd
\end_inset

 program.
\end_layout

\begin_layout Standard
The build will normally take place in LyX's temporary directory, so the
 files produced by the conversion will be in that directory.
 LyX will copy out what it regards as the `main' file, but the 
\family typewriter
Noweb->Program
\family default
 conversion may produce several files, and so most of these would then be
 deleted when LyX was closed.
 The present solution is to use a `copier',
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
See section 
\emph on
Copiers
\emph default
 of the 
\emph on
Customization
\emph default
 manual for information on these.
\end_layout

\end_inset

 in this case, the 
\family typewriter
ext_copy.py
\family default
 script in its default mode, so that the entire contents of the temporary
 directory is copied.
 More will get copied than is needed, to be sure, but nothing will be lost.
 If, however, you know what extensions the generated files will have, this
 can be improved by using the 
\family typewriter
-e
\family default
 option to 
\family typewriter
ext_copy
\family default
.
 This option takes a comma-separated list of extensions to copy.
 So, for example, if the conversion will generate only files with the extensions
 
\family typewriter
.c
\family default
 and 
\family typewriter
.h
\family default
, then the correct definition would be:
\end_layout

\begin_layout LyX-Code
python -tt $$s/scripts/ext_copy.py -e c,h $$i $$o
\end_layout

\begin_layout Standard
The result will be that only files with these two extensions will be copied
 out.
\end_layout

\begin_layout Paragraph
Build instructions in the document
\end_layout

\begin_layout Standard
The last piece of the integration between LyX and noweb is the 
\begin_inset Quotes eld
\end_inset

build-script
\begin_inset Quotes erd
\end_inset

 scrap.
 Generally, the instructions for building your program should be embedded
 in a scrap of its own.
 The noweb-specific 
\begin_inset Quotes eld
\end_inset

build-script
\begin_inset Quotes erd
\end_inset

 above uses the notangle command to look for this scrap (called 
\begin_inset Quotes eld
\end_inset

build-script
\begin_inset Quotes erd
\end_inset

) and runs its contents through 
\begin_inset Quotes eld
\end_inset

sh
\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Standard
Typically, such a scrap would look something like this:
\end_layout

\begin_layout LyX-Code
<<build-script>>=
\begin_inset Newline newline
\end_inset

#!/bin/sh
\begin_inset Newline newline
\end_inset


\begin_inset Newline newline
\end_inset

if [ -z "${NOWEB_SOURCE}" ]
\begin_inset Newline newline
\end_inset

then
\begin_inset Newline newline
\end_inset

  NOWEB_SOURCE=myfile.nw
\begin_inset Newline newline
\end_inset

fi
\begin_inset Newline newline
\end_inset

[...
 code to extract files ...]
\begin_inset Newline newline
\end_inset

[...
 code to compile files ...]
\begin_inset Newline newline
\end_inset

@
\end_layout

\begin_layout Standard
Look in 
\emph on
LIBDIR/examples/listerrors.lyx
\emph default
 or in 
\emph on
LIBDIR/examples/Literate.lyx
\emph default
 which implement two versions of the 
\begin_inset Quotes eld
\end_inset

listerrors
\begin_inset Quotes erd
\end_inset

 program for some illustrations of how all of these pieces go together or
 in 
\emph on
LIBDIR/examples/noweb2lyx.lyx.

\emph default
 Interestingly, these three files show off the language-indepence of the
 LyX literate programming support since they are written in Python, C and
 Perl respectively.
\end_layout

\begin_layout Subsubsection
Configuring LyX
\end_layout

\begin_layout Standard
All the Literate Programming support is configured by the 
\family sans
Tools\SpecialChar \menuseparator
Preferences
\family default
 panel in the 
\begin_inset Quotes eld
\end_inset

Conversion
\begin_inset Quotes erd
\end_inset

 tab.
 The important parts are:
\end_layout

\begin_layout Description
the
\begin_inset space ~
\end_inset


\begin_inset Quotes eld
\end_inset

literate
\begin_inset Quotes erd
\end_inset


\begin_inset space ~
\end_inset

format Set up via the Formats tab, this is where the Noweb-specific pieces
 are set up.
 The 
\family sans
GUI Name
\family default
 is set to 
\family typewriter
NoWeb
\family default
, the file extension is set to 
\family typewriter
.nw
\family default
.
 This tells LyX to create a file with a 
\family typewriter
.nw
\family default
 extension in the first step of the conversion process.
\end_layout

\begin_layout Description
the
\begin_inset space ~
\end_inset


\family sans
Program
\family default

\begin_inset space ~
\end_inset

format This is an empty format whose sole purpose is to be the endpoint
 of a conversion (which then allows us to set up a converter for it).
\end_layout

\begin_layout Description

\family sans
NoWeb
\family default
->
\family sans
LaTeX
\family default
 This converter performs the 
\begin_inset Quotes eld
\end_inset

weaving
\begin_inset Quotes erd
\end_inset

 of the literate document.
 For Noweb, it is set to 
\begin_inset Quotes eld
\end_inset


\family typewriter
noweave -delay -index $$i > $$o
\family default

\begin_inset Quotes erd
\end_inset


\end_layout

\begin_layout Description

\family sans
NoWeb
\family default
->
\family sans
Program
\family default
 This performs the 
\begin_inset Quotes eld
\end_inset

tangling step
\begin_inset Quotes erd
\end_inset

.
 As stated above, the Converter is set to 
\begin_inset Quotes eld
\end_inset


\family typewriter
build-script $$i
\family default

\begin_inset Quotes erd
\end_inset

, with Flags set to 
\begin_inset Quotes eld
\end_inset


\family typewriter
originaldir,parselog=listerrors
\family default

\begin_inset Quotes erd
\end_inset

.
\end_layout

\begin_layout Subsubsection
Debug extensions
\end_layout

\begin_layout Standard
There is also a new function implemented in the LyX server, the 
\begin_inset Quotes eld
\end_inset

server-goto-file-row" function, to be used with ddd/gdb or other debugger.
 
\end_layout

\begin_layout Standard
When debugging code with ddd/gdb, it is possible to invoke a text editor
 at the current execution position with a single key stroke.
 The default ddd configuration for that is shift-ctrl-V.
 It happens that you can define the editor command line invocation in ddd
 by accessing the 
\family sans
Edit\SpecialChar \menuseparator
Preferences\SpecialChar \menuseparator
Helpers
\family default
 dialog and changing the "Edit Sources" entry.
\end_layout

\begin_layout Standard
I take advantage of the new created LyX server function and this ddd feature,
 and set 
\begin_inset Quotes eld
\end_inset

Edit Sources
\begin_inset Quotes erd
\end_inset

 to:
\end_layout

\begin_layout LyX-Code
echo "LYXCMD:monitor:server-goto-file-row:@FILE@ @LINE@" >~/.lyxpipe.in
\end_layout

\begin_layout Standard
With this, whenever you are using ddd and find a point in the program that
 you want to edit, you just press shift-ctrl-V (in the ddd window), and
 ddd you forward this information to LyX through the LyX server and then
 the LyX window will show the same file with the cursor at the same position
 ddd was pointing to.
 No more guessing or long scrolling to locate a point in the program back
 from debugging !
\end_layout

\begin_layout Standard
Note however that you must enable the LyX server to get this feature working
 (it is disabled by default).
 You can enable it in 
\family sans
Preferences
\family default
 (tabs 
\family sans
Inputs
\family default
, 
\family sans
Paths
\family default
) by entering in the 
\family sans
LyXserver pipe
\family default
 a path like 
\begin_inset Quotes eld
\end_inset


\family typewriter
/home/<your-home-directory>/.lyx/lyxpipe
\family default

\begin_inset Quotes erd
\end_inset


\end_layout

\begin_layout Standard
Read the LyX server documentation in the 
\emph on
Customization Manual
\emph default
 for further information.
\end_layout

\begin_layout Subsubsection
Toolbar extensions
\end_layout

\begin_layout Standard
There are six new buttons that can be added to your LyX toolbar.
 Five of these buttons are short cuts to layout styles: 
\family sans
Standard
\family default
, 
\family sans
Section
\family default
, 
\family sans
LaTeX
\family default
, 
\family sans
LyX-Code
\family default
, and 
\family sans
Scrap
\family default
.
 The last one is a short cut to the 
\begin_inset Quotes eld
\end_inset

Build Program
\begin_inset Quotes erd
\end_inset

 File menu entry.
 
\end_layout

\begin_layout Standard
LyX has a range of buttons that are available for tool bar customization.
 In my toolbar I like to combine the six short cuts above with two more:
 One for 
\family sans
View
\family default
\SpecialChar \menuseparator

\family sans
Update
\family default
\SpecialChar \menuseparator

\family sans
DVI
\family default
 and the other for 
\family sans
View\SpecialChar \menuseparator
DVI
\family default
 File menu entries.
 Here is how it looks like:
\end_layout

\begin_layout LyX-Code
Toolbar
\end_layout

\begin_layout LyX-Code
  Layouts
\end_layout

\begin_layout LyX-Code
  Icon "layout Standard"
\end_layout

\begin_layout LyX-Code
  Icon "layout Section"
\end_layout

\begin_layout LyX-Code
  Icon "layout LaTeX"
\end_layout

\begin_layout LyX-Code
  Icon "layout LyX-Code"
\end_layout

\begin_layout LyX-Code
  Icon "layout Scrap"
\end_layout

\begin_layout LyX-Code
  Separator
\end_layout

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

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

\begin_layout LyX-Code
  Icon "build-program"
\end_layout

\begin_layout LyX-Code
  Separator
\end_layout

\begin_layout LyX-Code
.
\end_layout

\begin_layout LyX-Code
.
\end_layout

\begin_layout LyX-Code
.
\end_layout

\begin_layout LyX-Code
End
\end_layout

\begin_layout Subsubsection
Colors customization
\end_layout

\begin_layout Standard
There are a number of colors in LyX that can be customized in 
\family sans
Preferences
\family default
.
 One of the things that bothers people is the LaTeX font color.
 The default color is red, since the scraps uses LaTeX font, and there is
 a lot of scraps in literate documents, you may get tired of seeing everything
 in red.
 You can change it by going to the tabs 
\family sans
Look&Feel
\family default
, 
\family sans
Colors.
\end_layout

\begin_layout Standard
The next thing is the visible presence of the newline character in the screen.
 You can choose the color of this particular character and make it blend
 in the background.
 I recommend you choosing a color that is close to the background but not
 equal, that way you still can see it is there, but it is not bothering
 you anymore.
 
\end_layout

\begin_layout Chapter
Special features
\end_layout

\begin_layout Standard
You can do everything with LyX that you can do with LaTeX.
 However, LyX cannot support every LaTeX feature directly.
 But you can always use TeX Code.
 This chapter shows you some more special things you might want to use.
 For other special things you can do with figures, tables, floats, boxes
 and notes, have a look at the 
\emph on
EmbeddedObjects
\emph default
 manual.
\end_layout

\begin_layout Section
Multiple Columns
\end_layout

\begin_layout Standard
The aim for this section is to show how the LaTeX package 
\series bold
multicol
\series default
 can be used in a LyX document.
 LyX does not support the 
\series bold
multicol
\series default
 package natively yet, so you have to use some TeX code.
\end_layout

\begin_layout Standard
The 
\series bold
multicol
\series default
 package allows switching between one and multicolumn format on the same
 page.
 Footnotes are handled correctly, but will be placed at the bottom of the
 page and not under each column.
 Within the different columns you can use everyting, with the limitation
 that for floats you need to use the option 
\family sans
Span colums
\family default
 for each column.
\end_layout

\begin_layout Subsection
Two columns
\end_layout

\begin_layout Standard
If you want to have two columns in your text, insert the comand
\end_layout

\begin_layout Standard

\series bold

\backslash
begin{multicols}{2}
\end_layout

\begin_layout Standard
at the point where you want the two column layout to start, and then
\end_layout

\begin_layout Standard

\series bold

\backslash
end{multicols}
\end_layout

\begin_layout Standard
where you want it to end.
 Like this:
\end_layout

\begin_layout Standard
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
begin{multicols}{2}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
\noindent

\series bold
\size small
The Adventure of the Empty House
\series default

\begin_inset Newline newline
\end_inset

by 
\noun on
Sir Arthur Conan Doyle
\end_layout

\begin_layout Standard

\size small
It was in the spring of the year 1894 that all London was interested, and
 the fashionable world dismayed, by the murder of the Honourable Ronald
 Adair under most unusual and inexplicable circumstances.
 The public has already learned those particulars of the crime which came
 out in the police investigation, but a good deal was suppressed upon that
 occasion, since the case for the prosecution was so overwhelmingly strong
 that it was not necessary to bring forward all the facts.
 Only now, at the end of nearly ten years, am I allowed to supply those
 missing links which make up the whole of that remarkable chain.
 The crime was of interest in itself, but that interest was as nothing to
 me compared to the inconceivable sequel, which afforded me the greatest
 shock and surprise of any event in my adventurous life.
 Even now, after this long interval, I find myself thrilling as I think
 of it, and feeling once more that sudden flood of joy, amazement, and increduli
ty which utterly submerged my mind.
 Let me say to that public, which has shown some interest in those glimpses
 which I have occasionally given them of the thoughts and actions of a very
 remarkable man, that they are not to blame me if I have not shared my knowledge
 with them, for I should have considered it my first duty to do so, had
 I not been barred by a positive prohibition from his own lips, which was
 only withdrawn upon the third of last month.
\end_layout

\begin_layout Standard
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
end{multicols}
\end_layout

\end_inset


\end_layout

\begin_layout Subsection
Multiple columns
\end_layout

\begin_layout Standard
The same pattern is used when you want more than two columns:
\end_layout

\begin_layout Standard
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
begin{multicols}{3}
\end_layout

\end_inset


\end_layout

\begin_layout Standard

\size footnotesize
It can be imagined that my close intimacy with Sherlock Holmes had interested
 me deeply in crime, and that after his disappearance I never failed to
 read with care the various problems which came before the public.
 And I even attempted, more than once, for my own private satisfaction,
 to employ his methods in their solution, though with indifferent success.
 There was none, however, which appealed to me like this tragedy of Ronald
 Adair.
 As I read the evidence at the inquest, which led up to a verdict of willful
 murder against some person or persons unknown, I realized more clearly
 than I had ever done the loss which the community had sustained by the
 death of Sherlock Holmes.
 There were points about this strange business which would, I was sure,
 have specially appealed to him, and the efforts of the police would have
 been supplemented, or more probably anticipated, by the trained observation
 and the alert mind of the first criminal agent in Europe.
 All day, as I drove upon my round, I turned over the case in my mind and
 found no explanation which appeared to me to be adequate.
 At the risk of telling a twice-told tale, I will recapitulate the facts
 as they were known to the public at the conclusion of the inquest.
\end_layout

\begin_layout Standard
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
end{multicols}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
You can have more than 3
\begin_inset space ~
\end_inset

columns if you want to, but that might not be very pleasant for the eye.
\end_layout

\begin_layout Subsection
Columns inside columns
\end_layout

\begin_layout Standard
You can even have columns inside columns:
\end_layout

\begin_layout Standard
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
begin{multicols}{2}
\end_layout

\end_inset


\end_layout

\begin_layout Standard

\size footnotesize
The Honourable Ronald Adair was the second son of the Earl of Maynooth,
 at that time governor of one of the Australian colonies.
 Adair's mother had returned from Australia to undergo the operation for
 cataract, and she, her son Ronald, and her daughter Hilda were living together
 at 427 Park Lane.
\end_layout

\begin_layout Standard
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
begin{multicols}{2}
\end_layout

\end_inset


\end_layout

\begin_layout Standard

\size footnotesize
The youth moved in the best society–had, so far as was known, no enemies
 and no particular vices.
 He had been engaged to Miss Edith Woodley, of Carstairs, but the engagement
 had been broken off by mutual consent some months before, and there was
 no sign that it had left any very profound feeling behind it.
 For the rest {sic} the man's life moved in a narrow and conventional circle,
 for his habits were quiet and his nature unemotional.
 Yet it was upon this easy-going young aristocrat that death came, in most
 strange and unexpected form, between the hours of ten and eleven-twenty
 on the night of March 30, 1894.
\end_layout

\begin_layout Standard
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
end{multicols}
\end_layout

\end_inset


\end_layout

\begin_layout Standard

\size footnotesize
Ronald Adair was fond of cards–playing continually, but never for such stakes
 as would hurt him.
 He was a member of the Baldwin, the Cavendish, and the Bagatelle card clubs.
 It was shown that, after dinner on the day of his death, he had played
 a rubber of whist at the latter club.
 He had also played there in the afternoon.

\size default
 
\size footnotesize
The evidence of those who had played with him– Mr.
 Murray, Sir John Hardy, and Colonel Moran–showed that the game was whist,
 and that there was a fairly equal fall of the cards.
 Adair might have lost five pounds, but not more.
 His fortune was a considerable one, and such a loss could not in any way
 affect him.
 He had played nearly every day at one club or other, but he was a cautious
 player, and usually rose a winner.
 It came out in evidence that, in partnership with Colonel Moran, he had
 actually won as much as four hundred and twenty pounds in a sitting, some
 weeks before, from Godfrey Milner and Lord Balmoral.
 So much for his recent history as it came out at the inquest.
\end_layout

\begin_layout Standard
\begin_inset ERT
status open

\begin_layout Plain Layout


\backslash
end{multicols}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
Please read the example file 
\family typewriter
multicol.lyx
\family default
 for more advanced examples including column and header spacing, vertical
 separator lines, and more.
\end_layout

\begin_layout Standard
\begin_inset Newpage newpage
\end_inset


\end_layout

\begin_layout Section
Non-standard Paragraph Shapes
\end_layout

\begin_layout Standard
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
begin{sloppypar}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
newdimen
\backslash
varunit 
\end_layout

\begin_layout Plain Layout


\backslash
setlength{
\backslash
varunit}{4.5in}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
\noindent
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
parshape 19 0.45
\backslash
varunit 0.332
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.40
\backslash
varunit 0.300
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.35
\backslash
varunit 0.293
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.30
\backslash
varunit 0.300
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.25
\backslash
varunit 0.317
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.20
\backslash
varunit 0.342
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.15
\backslash
varunit 0.373
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.10
\backslash
varunit 0.410
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.05
\backslash
varunit 0.453
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.00
\backslash
varunit 0.500
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.05
\backslash
varunit 0.453
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.10
\backslash
varunit 0.410
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.15
\backslash
varunit 0.373
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.20
\backslash
varunit 0.342
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.25
\backslash
varunit 0.317
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.30
\backslash
varunit 0.300
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.35
\backslash
varunit 0.293
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.40
\backslash
varunit 0.300
\backslash
varunit
\end_layout

\begin_layout Plain Layout

0.45
\backslash
varunit 0.332
\backslash
varunit
\end_layout

\begin_layout Plain Layout

\end_layout

\end_inset

There are times when the tyranny of rectangular paragraphs must be overthrown.
 In such situations, a call to the delightful plain TeX command 
\family typewriter

\backslash
parshape
\family default
 is called for.
 As you can see, completely arbitrary shapes can be laid out with a suitable
 set of linelength definitions.
 While this parshape may look a bit silly and useless, one could conceive
 of situations such as finely tuned dropped capitals, word wrapping around
 non-rectangular graphics, etc.
 which will benefit from such handcrafting.
\end_layout

\begin_layout Standard
\begin_inset VSpace bigskip
\end_inset


\end_layout

\begin_layout Standard
The syntax is 
\family typewriter

\backslash
parshape numlines #1indent #1length #2indent #2length \SpecialChar \ldots{}
 #nindent #nlength
\family default
, where 
\family typewriter
numlines
\family default
 is the number of lines of text which define the paragraph.
 If there turn out to be fewer lines, the shape is truncated; if there are
 more, the excess lines have the same dimensions as the last line of the
 definition.
 The 
\family typewriter
#nindent
\family default
 and 
\family typewriter
#nlength
\family default
 entries specify the indentation of the line from the left margin, and the
 length of the line as measured from that point.
 The shape applies only to the current paragraph; everything is reset to
 normal for the next paragraph.
\end_layout

\begin_layout Standard
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
end{sloppypar}
\end_layout

\end_inset


\end_layout

\end_body
\end_document
