summaryrefslogtreecommitdiff
path: root/usergrps/uktug/baskervi/7_1/lyx-intro.tex
blob: 11834c4cd255a35b57d542670969a3a1504b6d1e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
%% This LaTeX-file was created by <sa346> Mon Jun 30 22:46:50 1997
%% LyX 0.10 (C) 1995 1996 by Matthias Ettrich and the LyX Team

%% Don't edit this file unless you are sure what you are doing.
%\documentclass[11pt,letterpaper,oneside,onecolumn]{article}
%\usepackage[]{fontenc}
%\usepackage[dvips]{epsfig}

%%
%% BEGIN The lyx specific LaTeX commands.
%%

\makeatletter
\def\LyX{L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\spacefactor1000}%
\newcommand{\lyxtitle}[1] {\thispagestyle{empty}
\global\@topnum\z@
\section*{\LARGE \centering \sffamily \bfseries \protect#1 }
}
\newcommand{\lyxline}[1]{
{#1 \vspace{1ex} \hrule width \columnwidth \vspace{1ex}}
}
\newenvironment{lyxbibliography}
{
\begin{thebibliography}{99}}
{\end{thebibliography}}
\def\lxq{"}
\newenvironment{lyxcode}
{\list{}{
\rightmargin\leftmargin
\raggedright
\itemsep 0pt
\parsep 0pt
\ttfamily
}%
\item[]
}
{\endlist}
\newcommand{\lyxlabel}[1]{#1 \hfill}
\newenvironment{lyxlist}[1]
{\begin{list}{}
{\settowidth{\labelwidth}{#1}
\setlength{\leftmargin}{\labelwidth}
\addtolength{\leftmargin}{\labelsep}
\renewcommand{\makelabel}{\lyxlabel}}}
{\end{list}}
\newcommand{\lyxletterstyle}{
\setlength\parskip{0.7em}
\setlength\parindent{0pt}
}
\newcommand{\lyxaddress}[1]{
\par {\raggedright #1 
\vspace{1.4em}
\noindent\par}
}
\newcommand{\lyxrightaddress}[1]{
\par {\raggedleft \begin{tabular}{l}\ignorespaces
#1
\end{tabular}
\vspace{1.4em}
\par}
}
\newcommand{\lyxformula}[1]{
\begin{eqnarray*}
#1
\end{eqnarray*}
}
\newcommand{\lyxnumberedformula}[1]{
\begin{eqnarray}
#1
\end{eqnarray}
}
\makeatother

%%
%% END The lyx specific LaTeX commands.
%%

%\pagestyle{plain}
%\setcounter{secnumdepth}{3}
%\setcounter{tocdepth}{3}

%% Begin LyX user specified preamble:
%\usepackage{a4wide}
%\addtolength{\hoffset}{-1in}

%% End LyX user specified preamble.
%\begin{document}

\title{Review of the {\LyX} ``wysiwyg''
front-end editor for {\LaTeX}}
\author[Andrew F.~Lack]{Andrew F.~Lack\\\texttt{sa346@city.ac.uk}}

\begin{Article}

\subsection*{\sffamily \Large Introducing \LyX{}\rmfamily }

Am I a dinosaur living beyond my `best before' date? Sometimes feels
like it. To start with I use Unix. Every popular computing magazine
you pick up today is filled with one word, and it isn't Unix. Then
I use \LaTeX{} under Unix. People look at you as if you are from another
planet. \LaTeX{}? You mean you can't \em see \em what it looks like as you
type? But then I come across something like \LyX{} and my faith in humanity,
or that part of it which still uses Unix and \LaTeX{}, is restored.

\LyX{} is a full-featured ``near \scshape wysiwyg'' \upshape editor
for creating and editing \LaTeX{} documents. Surprisingly, it's not currently
available from the \scshape ctan \upshape archive, but by anonymous
ftp from \ttfamily ftp.via.ecp.fr/pub/lyx. \rmfamily Binaries
are available for some popular varieties of the Unix system, including
Sun Solaris and Linux. To compile the source you'll need (to quote
the authors) ``a good C\ttfamily ++ \rmfamily compiler'' (\ttfamily g++
\rmfamily is fine) as well as the \sffamily xforms \rmfamily library
(available from \ttfamily ftp.via.ecp.fr/pub/xform\rmfamily s).
Although the current version is only 0.10.7, and described as a beta
version, it is reasonably complete and usable. The software is written
by Matthias Ettrich ably assisted by many others, too numerous to
mention. 

This article was prepared using \LyX{}. While doing so, I experienced 3~crashes
over a period of several hours plus a few oddities which are described.


\LyX{} is a front-end for an existing, working, \LaTeXe{} installation. It won't
work with the older 2.09 release. It likes to use \bfseries xdvi
\mdseries for screen previewing and \bfseries dvips \mdseries for
printing, though other printer drivers may be usable by re-configuring
\LyX{} via its configuation file.

To create a \scshape wysiwyg \upshape word-processor for \LaTeX{} would
be an extremely complicated task. So \LyX{} takes a different approach;
it uses ``\ttfamily .lyx\rmfamily '' files, which internally
resemble \TeX{}, but which are not. This allows \LyX{} to manage the `style'
of the code creation which, in turn, simplifies what is already a
complicated task. [How many different ways are there to make a word
bold with \LaTeX{}? I can think of at least three, but \LyX{} only understands
one.] \LyX{} then `interprets' the code in real-time---it does not constantly
run latex in order to update the display. Thus the screen shows an
approximation to the final output, not the \em exact \em output. Because
\LyX{} uses its own internal format, you cannot use it to open a ``\ttfamily .tex\rmfamily ''
file. Neither should you edit ``\ttfamily .lyx\rmfamily '' files
using \bfseries vi \mdseries or other text editors.

\LyX{} is not for \LaTeX{} `power users'. You'll find many things which are easy
using \bfseries vi \mdseries are just not possible within \LyX{},
as I found while composing this review. However, if you are a \LaTeX{} beginner,
or you have a requirement to `encourage' users away from inferior
and troublesome PC word-processors, \LyX{} may be just what you need.


\subsection*{The main Window}

The main window resembles any other GUI word processor.\footnote{
I'm being careful here not to mention that dreaded word word---damn
} It has a menu bar along the top plus a single row of icons in the
tool bar. At the bottom of the screen a status window gives the user
messages about what's happening. Figure~\ref{fig:fullscreen} shows the main \LyX{} window.

\begin{figure*}
\centering
\includegraphics{lyx-full.eps.gz}
\caption{\LyX{} showing the \em Character Layout \em and \em Maths Panels\label{fig:fullscreen}\em}
\end{figure*}

My first gripe is that the authors have chosen to use the \sffamily xforms
\rmfamily library to give the application its look and feel. This
is a bit like Motif, but has a number of deviations. Most significant
among these is the way the scroll bars work. But once you've got over
this the look and feel should be acceptable. According to the documentation
which comes shipped with \LyX{}, the authors have had to do a lot of work
on \sffamily xforms \rmfamily to get it into the current state.

The choice of which tools appear in the tool bar is configurable via
the \ttfamily .lyxrc \rmfamily file.\footnote{
users can have their own or can use a system-wide version
} Those that are available by default are the only ones which currently
have icons, so the choice isn't that great. This is where I get to
air my second gripe---the font selection icons. There are only three;
and exclamation mark for \em select emphasised style\em , I'm happy
with that. But the second is a figure of a person (man?) which denotes
something called noun style for setting small caps. Now this \em is
\em weird. The reason lies with the authors trying to give logical
names to styles---hence the choice for the small-caps which, apparently,
is used for people's names. However, I think this is a bad idea. The
third button has a user-customisable effect, which is set from the
\bfseries Layout/Character \mdseries menu. The menu gets `pinned'
to the display so enabling quick changes to family, series, shape
and size. Even so, dedicated buttons for typewriter font and bold
should be provided in a later release.

On the left of the tool bar is the \em style selector. \em Here you
can choose most of the important \LaTeX{} layout styles, such as sections
(with and without asterisk) the three basic list environments, verse
and quote. There's also the \textbf{\texttt{LaTeX}} option which allows
the author to directly enter a \LaTeX{} command---these appear in red on
the screen. More about this later.


\subsection*{Getting started}

Choose \bfseries New \mdseries from the \bfseries File \mdseries menu.
The file picker is definitely \em not \em Motif, which is one good
thing to say about \sffamily xforms\rmfamily . You can also
choose a file template which is used to initialise the document, by
inserting its contents into the new one. And away you go!

{As you type, \LyX{} automatically breaks the line and wraps the cursor
onto the following line. You should only press \sffamily \(<\)Return\(>\)
\rmfamily to end the paragraph. Using \sffamily \(<\)Control-Return\(>\)
\rmfamily enters a \ttfamily \(\backslash\)\(\backslash\) \rmfamily command.
If you make change to a paragraph, \LyX{} instantly re-formats the screen
to show its new appearance. \LyX{} doesn't hyphenate words, it always breaks
at word boundaries. However, remember \LyX{} is only \em approximating
\em to the final appearance. Once you format the document, \TeX{} will
be finding the line breaks instead.\par}

{Use \sffamily \(<\)Control-Space\(>\) \rmfamily for an unbreakable
space (tie) which is shown as a small red~{\footnotesize$\sqcup$}.\footnote{
I tried, unsuccessfully, to create this symbol by using \ttfamily \(\backslash\)verb*+
+. \rmfamily This produced a \LaTeX{} error, though not when I created
a ``\ttfamily .tex\rmfamily '' file and then formated that.
} New paragraphs are automatically shown indented (but not, of course,
immediately following a section). The menu \bfseries Layout/Paragraph
\mdseries can be used to cancel paragraph indentation. This has
a global effect on the document.\par}

\LyX{} has intelligent quotes, which are used when the double-quote character
is entered. You can select English, French or German, single or double
marks.

Clicking the floppy-disc icon in the tool bar automatically saves
your document back to disc. There's also a timed-backup feature. 

From the \bfseries Edit \mdseries menu, there is an ``infinite''
depth undo facility. \LyX{} also supports PC-style \bfseries cut\mdseries ,
\bfseries copy \mdseries and \bfseries paste \mdseries via
three buttons in the tool bar. It doesn't, however, support the normal
X-selection, which is a shame, so you can't export from \LyX{} to other
X-applications, though you can import using \bfseries Edit/Paste
Primary Selection\mdseries .


\subsubsection*{Changing the Appearance}

You have two choices about changing the visual appearance. You can
either change the settings \em before \em you type something, or you
can go back, highlight it and then apply some new combination of effects.
For many commands `sensible' things happen when attributes are changed
and nothing is highlit. For example if I were to pick left-block from
the \bfseries Layout/Paragraph \mdseries menu in the middle
of this paragraph, the new setting would be automatically applied
to the whole of the current paragraph.


\subsection*{Lists}

The easiest way to create a list is to enter each item as a separate
paragraph, then highlight all the items and choose the required list
type from the style drop-down. When a description list is used, the
first word of the item is automatically emboldened and you must use
unbreakable spaces (\sffamily \(<\)Control-Space\(>\)\rmfamily )
to include more than one word.

\LyX{} provides a forth list-type, \bfseries list\mdseries , which
which is based on the \LaTeX{} \ttfamily list \rmfamily environment.
An example follows;

\begin{lyxlist}{enumeratedx}

\item [itemized]produces bullet-points

\item [enumerated]produces numbered lists

\item [description]produces a bold subject followed by a description

\item [list]produces this type of list. Note that the width used for each
label is the same. The actual width used is set by simply highlighting
the entire list and setting the label width using the \bfseries Layout/Paragraph
\mdseries menu, then clicking \bfseries Apply\mdseries .

\end{lyxlist}


\subsubsection*{Lists within lists}

The tool bar provides the button \em change environment depth\em .
This is used to insert a new list `level' into an existing list. For
example to achieve;

\begin{itemize}

\item This is an item of an \ttfamily itemize \rmfamily list

\begin{itemize}

\item This is the first item of a list \em within \em the first

\end{itemize}

\item end.

\end{itemize}

the \em change environment depth \em was used after entering the first
item so that the following item was at the next level. After entering
the second line, \sffamily \(<\)Return\(>\) \rmfamily puts
\LyX{} back at the previous level. Using the highlight-then-apply model,
it's possible to select a number of items for `moving' to a new level.

\begin{enumerate}

\item This is an item of an enumerated list

\begin{itemize}

\item When typed this was item 2, it will be moved to a new level

\item When typed this was item 3

\end{itemize}

\item When typed this was item 4

\end{enumerate}


\subsection*{Footnotes and marginal notes}

A footnote is inserted into the document by using the dedicated button
in the tool bar. This opens a text box on the screen into which the
footnote text is entered. By clicking-left on the box's \em foot \em tab,
the footnote is closed and a small red ``foot'' appears in the main
text. Double-clicking left on this, re-opens the box for editing.
Clicking-right in the opened box allows the footnote to be deleted
(called \em melting\em ). Once the footnote has been melted, its text
just becomes part of the document. The opposite it true as well, just
highlight a piece of text, click the footnote button, and voil\`{a}---one
footnote.

Marginal notes are handled in an identical manner.


\subsection*{Tables}

Tables can be inserted either ``here'' or as floats and you can paste
an existing table into or out of a float. Inserting a table causes
it to appear on the screen centred under the ``current'' sentence.
Choosing a table float opens up a red table box into which the table
can be inserted and a caption added to the \bfseries Table: \mdseries prompt.
The box can then be collapsed in a same way as for footnotes.


\subsubsection*{The Table Editor}

Creating a table (actually a \ttfamily tabular \rmfamily environment)
is achieved using a \em table editor\em . The first stage is to select
the number of rows and columns. Sliders are provided for this, defaulting
to 5x5. Once the size is set, an empty table is inserted into the
document, with the cursor positioned in the top left cell. The table's
initial layout assumes the first row will be used as a heading and
it is separated from the rest of the table by two horizontal lines
(\ttfamily \(\backslash\)hline\rmfamily s). Rows and columns
have separating rules.

With the cursor positioned in a cell, entering text causes the text
to appear in the cell, and all cells of the same column automatically
expand to the same width---exactly as you'd expect with the \ttfamily tabular
\rmfamily environment. To edit neighbouring cells, simple use the
cursor arrow keys, or click the left mouse button.

With the insert-cursor in a cell, clicking-right displays a table
menu which allows you to change the following;

\begin{itemize}

\item the text alignment from \bfseries center \mdseries to \bfseries left
\mdseries or \bfseries right\mdseries 

\item delete the column or row

\item append a new column or row

\item choose the rules used separate cells (select rule \bfseries left\mdseries ,
\bfseries top \mdseries and/or \bfseries bottom\mdseries ).
If no rule is selected, a dotted-line is drawn to show the separation
between rows or columns.

\item combine adjacent cells into a single cell (\em multicolumn\em )\em .
\em This is achieved by high-lighting the cells and choosing \bfseries multicolumn
\mdseries from the table-menu. I found that in version 0.10.7,
this sometimes caused problems.

\end{itemize}

Using the table editor, this is one of the examples from \em Lamport\em ;

\vspace{0.92cm}
{\centering \begin{tabular}{|l|c|r|}
\hline 
\em type\em &\multicolumn{2}{|c|}{\em style \em }\\
\hline 
smart&red&short\\
\hline 
rather silly&puce&tall\\
\hline 
\end{tabular}\par}
\vspace{0.92cm}

In \em Lamport \em the table had a double rule at the top and bottom.
This particular feature seems not to be possible with the table editor.
\ttfamily \(\backslash\)cline\rmfamily 's aren't possible either.
Another tabular feature which I almost always use, namely \ttfamily \(\backslash\)arraystretch\rmfamily ,
must be set by entering the required command directly (see below).

Vertical space above and/or below the table can be added by high-lighting
the entire table and then changing the paragraph settings from the
\bfseries Layout/Paragraph \mdseries menu. This also permits
the table alignment to be changed to left or right.


\subsubsection*{Figures}

Figures, like tables, are inserted ``here'' or as a float. You have
to decide which at the point of creation. \LyX{} allows the inclusion of
figures in one of three formats;
%
\begin{description}

\item [encapsulated~PostScript]which is displayed centred on the page

\item [in-lined~encapsulated~PostScript]which is displayed aligned with the
adjacent text

\item [\LaTeX{}]which permits you to \ttfamily \(\backslash\)input \rmfamily a
file and display it centred on the page

\end{description}

The first two formats create boxes on the screen with an \bfseries F
\mdseries to signify a figure. Double-clicking-left on the box
opens up a dialogue box in which the details of the figure are programmed.
Apart from the obvious one of filename, the author can choose the
size, rotation angle and a command which \LyX{} uses to display the image.
(It defaults to using \bfseries ghostscript\mdseries .) Once
the parameters have been entered and applied, \LyX{} updates the display
with the image.


\subsection*{Setting Mathematics}

\LyX{} has a \em maths editor \em which is much like the mathematics editor
of any other GUI-based word processor. To enter maths mode you can
either click the maths editor button from the tool bar, or choose
\bfseries Math/Math mode \mdseries for in-line maths or \bfseries Math/Display
\mdseries for displayed maths. In either case a small blue box
appears on the screen and the insert cursor is positioned within.
You are now in the maths editor.

It is more difficult to describe how to use the editor than to use
it---even I quickly picked-up how it worked. The menu option \bfseries Math/Math
Panel \mdseries brings up a separate window from from which you
can pick the multitude of special \LaTeX{} symbols. For simple maths, for
example using Greek characters, just pick the character required from
the menu in the maths panel. For more complex maths, which perhaps
requires a ``two dimensional'' layout, the essential feature of the
editor is the use of the arrow keys which navigate you through the
equation. 

There are no menu options for superscripts and subscripts which greatly
simplifies the maths panel. Instead, these are entered by using \sffamily \(<\)\^{}\(>\)
\rmfamily and \sffamily \(<\)\_\(>\) \rmfamily respectively.
So, by just using the maths panel, \^{}/\_ keys and the arrow keys, you
can quickly create
\[
\sum ^{\infty }_{i=0}\frac{1}{k^{2}}=\frac{\pi ^{2}}{6}\]
Or, how about
\begin{equation}
\label{maths:num}
y=\int _{0}^{\infty }\left\{ \frac{\sin ^{2}\left( \alpha \sqrt{\frac{ax+b}{cx+b}}\right) }{\sqrt{\beta =\alpha x}}\right\} ^{\frac{a+b}{c+d}}dx
\end{equation}


The appearance of the maths on the screen is more than adequate to
show the detail of what has been selected. The Greek characters and
special symbols are very well drawn.

The maths panel supports roots, fractions, delimiters, ``over symbols''
(called decorations), arrays and maths spacing. Any other feature
you require can be entered directly by typing the \TeX{} command directly
into the maths editor. The backslash is not displayed, but the remainder
of the command is shown in red. Numbered equations are created by
applying a label to the equation. Currently, you cannot swap a piece
of maths between `display' and `in-line'; you have to choose at the
point of creation. 


\subsection*{Document styles}

From the \bfseries Layout/Document \mdseries menu you can choose
a number of parameters which affect the whole document. These include
the document class, the typeface (\LyX{} supports the common \scshape PostScript
\upshape faces) body type size (\ttfamily 10pt\rmfamily , \ttfamily 11pt
\rmfamily etc), paper size, paper orientation (landscape or portrait),
single or two-sided, single or double column,\footnote{
though \LyX{} does not display two columns if double column is chosen
} language (from which you can choose from about 20 possibilities),
baseline stretch, section numbering depth and table-of-contents depth.
Also from the \bfseries Layout \mdseries menu, the \bfseries Preamble
\mdseries option allows you to enter a series of lines which are
added verbatim to the document's preamble.

There's good support for letters with \LyX{}; you can can select \bfseries letter
\mdseries as the document class and the standard installation comes
with a suitable template. Selecting the \bfseries letter \mdseries class
also changes the \LaTeX{} formatting options available from the style drop-down.
Included is \bfseries cc\mdseries , \bfseries Signature\mdseries ,
\bfseries Opening \mdseries and \bfseries Closing\mdseries .


\subsection*{Entering \LaTeX{} Commands}

Sooner or later you will want to achieve some formatting effect which
\LyX{} cannot currently handle. To do this you can enter a \TeX{} or \LaTeX{} command
directly into the document. You can do this in a number of ways, the
easiest of which is to use the dedicated button in the tool bar (with
the \TeX{} logo). Clicking this puts \LyX{} into ``\TeX{} mode'' and what you type
is shown in red. Effectively what you type is added to the file verbatim,
and no interpretation is undertaken.

While creating this document I have had used this feature only a few
times. However, it will be clear by now that quite significant amounts
of \LaTeX{} are not yet covered by \LyX{}; rules, boxes, the minipage environment
and the tabbing environment, to name a few. And then there's all those
packages which are available.


\subsection*{Interfacing with \LaTeX{}}

One of the most frustrating features with teaching beginners \LaTeX{} is
explaining how to deal with the inevitable errors which result from
formatting. \LyX{} solves this difficult problem in a way which must have
taken a great deal of work. Whenever \LyX{} runs \bfseries latex \mdseries for
you, any errors which occur are flagged by inserting a red, \sffamily \fbox{\rmfamily Error\sffamily }
\rmfamily into the document at the point where the error occurred.
By clicking-left over the box, it opens to show you the description
of the error. This is really neat. From the \bfseries Edit \mdseries menu,
use \bfseries Goto error \mdseries to rapidly move between the
different errors.

Printing is possible from the \bfseries File \mdseries menu
as well as from a dedicated button in the tool bar. A print dialogue
allows the author to choose the name of the printer (that which would
normally be appended to a \ttfamily -P \rmfamily option using
an \bfseries lpr \mdseries command), the stacking order (normal
or reverse) and whether to print to a file or printer. When the document
is printed, \LyX{} doesn't bother to re-format if nothing has been changed.
Because \bfseries latex \mdseries is only run once this causes
problems if your document uses cross-references. The work-around is
to format the document twice using \bfseries File/Run \textbf{LaTeX}
\mdseries and then to use the print button.

It's possible to create (to quote the menu) a ``nice'' \ttfamily .tex
\rmfamily file from the ``\ttfamily .lyx\rmfamily '' file.
This can be sent to someone who doesn't use \LyX{}, and will, naturally,
produce an identical output, notwithstanding the usual issues of fonts
and packages. This is how this document was transmitted to the editors
of \em Baskerville\em .


\subsection*{Spell Checker}

\LyX{} supports a spell checker by interfacing with the \scshape gnu
\upshape \bfseries ispell \mdseries command, which must be
separately installed. Using the spell checker is simplicity itself.
Mis-spelled words are highlighted in the main document, while in a
separate window the alternate choices are displayed, together with
a number of control buttons (see figure~\ref{fig:spellchecker}). A progress bar is also
provided.

\begin{figure*}
\centering
\includegraphics{spellcheck.eps.gz}
\caption{The spell checker window\label{fig:spellchecker}}
\end{figure*}


\subsection*{A Final Word}

Version 0.12 is not far away. It will concentrate on bug fixes rather
than lots of new features, although a text-export (via the dvi file)
will be added. The developers are also talking about ditching the
\sffamily xforms \rmfamily library which is causing a number
of problems. Most intertesting of all the developers are making tantalising
noises about supporting the ability to directly edit existing ``\ttfamily .tex\rmfamily ''
files and dropping the \ttfamily lyx \rmfamily format. 

There are a number of \LaTeX{} features which are supported by \LyX{} but which
have not been covered in this review. These include tables-of-content,
lists-of-figures and tables, cross references, bibliographic citations,
verse, various commands for building title pages (title, author etc.).

I'm a die-very-hard user of \bfseries vi\mdseries , but even
after a couple of hours with \LyX{}, I now find myself wishing for word-wrap
and point-click-type when using an xterm. There's no getting away
from it, GUI applications are appealing. It's sometimes the case that
\scshape wysiwyg \upshape editors are less powerful than using
something simple like \bfseries vi \mdseries and doing it ``by
hand''. But the \LyX{} approach of only supporting basic \LaTeX{}, while allowing
\em any \em command to be entered verbatim, makes the final product
easy to use yet powerful at the same time.

Its difficult for me to over express my admiration for this program
and my thanks to the authors for their effort in producing it. It's
brilliant! Even the ``beta'' 0.10.7 version has proved to be extremely
reliable---I regard 3~crashes as well within acceptable limits, especially
for such an early version. Such an editor is, in my view, long overdue
for the \LaTeX{} world and the fact that Unix has been chosen as the first
delivery OS heartens me no-end. Well done Matthias and the rest of
the team!

%\vspace{1.61cm}
%{\raggedleft Andrew F. Lack \\
%\ttfamily sa346@city.ac.uk\par}

\end{Article}
%\end{document}