]> git.lyx.org Git - lyx.git/blob - lib/doc/Customization.lyx
Documentation for customization of citation formats.
[lyx.git] / lib / doc / Customization.lyx
1 #LyX 2.0.0svn created this file. For more info see http://www.lyx.org/
2 \lyxformat 381
3 \begin_document
4 \begin_header
5 \textclass scrbook
6 \begin_preamble
7 % DO NOT ALTER THIS PREAMBLE!!!
8 %
9 % This preamble is designed to ensure that this document prints
10 % out as advertised. If you mess with this preamble,
11 % parts of this document may not print out as expected.  If you
12 % have problems LaTeXing this file, please contact 
13 % the documentation team
14 % email: lyx-docs@lists.lyx.org
15
16 \usepackage{ifpdf} % part of the hyperref bundle
17 \ifpdf % if pdflatex is used
18
19  % set fonts for nicer pdf view
20  \IfFileExists{lmodern.sty}
21   {\usepackage{lmodern}}{}
22
23 \fi % end if pdflatex is used
24
25 % the pages of the TOC is numbered roman
26 % and a pdf-bookmark for the TOC is added
27 \let\myTOC\tableofcontents
28 \renewcommand\tableofcontents{%
29   \frontmatter
30   \pdfbookmark[1]{\contentsname}{}
31   \myTOC
32   \mainmatter }
33
34 % redefine the \LyX macro for PDF bookmarks
35 \def\LyX{\texorpdfstring{%
36   L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\@}
37   {LyX}}
38
39 % used for multi-column text
40 \usepackage{multicol}
41 \usepackage{inputenc}
42 \end_preamble
43 \options fleqn,liststotoc,bibtotoc,idxtotoc,BCOR7.5mm,titlepage,tablecaptionabove
44 \use_default_options false
45 \begin_modules
46 logicalmkup
47 \end_modules
48 \maintain_unincluded_children false
49 \begin_local_layout
50 Format 7
51 InsetLayout CharStyle:MenuItem
52 LyxType               charstyle
53 LabelString           menu
54 LatexType             command
55 LatexName             menuitem
56 Font
57 Family              Sans
58 EndFont
59 Preamble
60 \newcommand*{\menuitem}[1]{{\sffamily #1}}
61 EndPreamble
62 End
63 \end_local_layout
64 \language english
65 \inputencoding auto
66 \fontencoding global
67 \font_roman default
68 \font_sans default
69 \font_typewriter default
70 \font_default_family default
71 \use_xetex false
72 \font_sc false
73 \font_osf false
74 \font_sf_scale 100
75 \font_tt_scale 100
76
77 \graphics default
78 \default_output_format default
79 \bibtex_command default
80 \index_command default
81 \paperfontsize 12
82 \spacing single
83 \use_hyperref true
84 \pdf_title "LyX Configuration Manual"
85 \pdf_author "LyX Team"
86 \pdf_subject "LyX-documentation Customization"
87 \pdf_keywords "LyX, documentation, customization"
88 \pdf_bookmarks true
89 \pdf_bookmarksnumbered true
90 \pdf_bookmarksopen true
91 \pdf_bookmarksopenlevel 1
92 \pdf_breaklinks false
93 \pdf_pdfborder false
94 \pdf_colorlinks true
95 \pdf_backref false
96 \pdf_pdfusetitle false
97 \pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue,pdfpagelayout=OneColumn, pdfnewwindow=true,pdfstartview=XYZ, plainpages=false, pdfpagelabels"
98 \papersize default
99 \use_geometry false
100 \use_amsmath 0
101 \use_esint 0
102 \use_mhchem 1
103 \cite_engine basic
104 \use_bibtopic false
105 \use_indices false
106 \paperorientation portrait
107 \suppress_date false
108 \branch OutDated
109 \selected 0
110 \filename_suffix 0
111 \color #f5fae7
112 \end_branch
113 \index Index
114 \shortcut idx
115 \color #008000
116 \end_index
117 \secnumdepth 3
118 \tocdepth 3
119 \paragraph_separation indent
120 \paragraph_indentation default
121 \quotes_language english
122 \papercolumns 1
123 \papersides 2
124 \paperpagestyle headings
125 \tracking_changes false
126 \output_changes false
127 \html_math_output 0
128 \html_be_strict true
129 \end_header
130
131 \begin_body
132
133 \begin_layout Title
134 Customizing LyX: Features for the Advanced User
135 \end_layout
136
137 \begin_layout Author
138 by the LyX Team
139 \begin_inset Foot
140 status collapsed
141
142 \begin_layout Plain Layout
143 \noindent
144 If you have comments or error corrections, please send them to the LyX Documenta
145 tion mailing list, 
146 \begin_inset CommandInset href
147 LatexCommand href
148 target "lyx-docs@lists.lyx.org"
149 type "mailto:"
150
151 \end_inset
152
153 .
154  Include 
155 \begin_inset Quotes eld
156 \end_inset
157
158 [Customization]
159 \begin_inset Quotes erd
160 \end_inset
161
162  in the subject header, and please cc the current maintainer of this file,
163  Richard Heck <rgheck@comcast.net>.
164 \end_layout
165
166 \end_inset
167
168
169 \begin_inset Newline newline
170 \end_inset
171
172
173 \begin_inset Newline newline
174 \end_inset
175
176 Version 2.0.x 
177 \end_layout
178
179 \begin_layout Standard
180 \begin_inset CommandInset toc
181 LatexCommand tableofcontents
182
183 \end_inset
184
185
186 \end_layout
187
188 \begin_layout Standard
189 \begin_inset Note Note
190 status open
191
192 \begin_layout Plain Layout
193 Please use change tracking when modifying this document.
194  This makes it easier for our translators to recognize things that have
195  been changed, and it helps the maintainer keep up-to-date with what's been
196  done.
197 \end_layout
198
199 \end_inset
200
201
202 \end_layout
203
204 \begin_layout Chapter
205 Introduction
206 \end_layout
207
208 \begin_layout Standard
209 This manual covers the customization features present in LyX.
210  In it, we discuss issues like keyboard shortcuts, screen previewing options,
211  printer options, sending commands to LyX via the LyX Server, internationalizati
212 on, installing new LaTeX classes and LyX layouts, etc.
213  We can't possibly hope to touch on everything you can change—our developers
214  add new features faster than we can document them—but we will explain the
215  most common customizations and hopefully point you in the right direction
216  for some of the more obscure ones.
217 \end_layout
218
219 \begin_layout Standard
220 \begin_inset Branch OutDated
221 status open
222
223 \begin_layout Standard
224 Information from previous versions of this document that now seems to be
225  outdated is contained in the OutDated branch of this document.
226  By default, this information will not appear in the LaTeX output.
227 \end_layout
228
229 \end_inset
230
231
232 \end_layout
233
234 \begin_layout Chapter
235 LyX configuration files
236 \end_layout
237
238 \begin_layout Standard
239 This chapter aims to help you to find your way through the LyX configuration
240  files.
241  Before continuing to read this chapter, you should find out where your
242  LyX library and user directories are by using 
243 \begin_inset Flex CharStyle:MenuItem
244 status collapsed
245
246 \begin_layout Plain Layout
247 Help\SpecialChar \menuseparator
248 About
249 \begin_inset space ~
250 \end_inset
251
252 LyX
253 \end_layout
254
255 \end_inset
256
257 .
258  The library directory is the place where LyX places its system-wide configurati
259 on files; the user directory is where you can place your modified versions.
260  We will call the former 
261 \begin_inset Flex CharStyle:Code
262 status collapsed
263
264 \begin_layout Plain Layout
265 LyXDir
266 \end_layout
267
268 \end_inset
269
270  and the latter 
271 \begin_inset Flex CharStyle:MenuItem
272 status collapsed
273
274 \begin_layout Plain Layout
275 UserDir
276 \end_layout
277
278 \end_inset
279
280  in the remainder of this document.
281  
282 \end_layout
283
284 \begin_layout Section
285 What's in 
286 \begin_inset Flex CharStyle:Code
287 status collapsed
288
289 \begin_layout Plain Layout
290 LyXDir
291 \end_layout
292
293 \end_inset
294
295 ?
296 \end_layout
297
298 \begin_layout Standard
299 \begin_inset Flex CharStyle:Code
300 status collapsed
301
302 \begin_layout Plain Layout
303 LyXDir
304 \end_layout
305
306 \end_inset
307
308  and its sub-directories contain a number of files and that can be used
309  to customize LyX's behavior.
310  You can change many of these files from within LyX itself through the 
311 \begin_inset Flex CharStyle:MenuItem
312 status collapsed
313
314 \begin_layout Plain Layout
315 Tools\SpecialChar \menuseparator
316 Preferences
317 \end_layout
318
319 \end_inset
320
321  dialog.
322  Most customization that you will want to do in LyX is possible through
323  this dialog.
324  However, many other inner aspects of LyX can be customized by modifying
325  the files in 
326 \begin_inset Flex CharStyle:Code
327 status collapsed
328
329 \begin_layout Plain Layout
330 LyXDir
331 \end_layout
332
333 \end_inset
334
335 .
336  These files fall in different categories, described in the following subsection
337 s.
338 \end_layout
339
340 \begin_layout Subsection
341 Automatically generated files
342 \end_layout
343
344 \begin_layout Standard
345 The files, which are to be found in 
346 \begin_inset Flex CharStyle:MenuItem
347 status collapsed
348
349 \begin_layout Plain Layout
350 UserDir
351 \end_layout
352
353 \end_inset
354
355 , are generated when you configure LyX.
356  They contain various default values that are guessed by inspection.
357  In general, it is not a good idea to modify them, since they might be overwritt
358 en at any time.
359 \end_layout
360
361 \begin_layout Labeling
362 \labelwidthstring 00.00.0000
363 \begin_inset Flex CharStyle:Code
364 status collapsed
365
366 \begin_layout Plain Layout
367 lyxrc.defaults
368 \end_layout
369
370 \end_inset
371
372  contains defaults for various commands.
373 \end_layout
374
375 \begin_layout Labeling
376 \labelwidthstring 00.00.0000
377 \begin_inset Flex CharStyle:Code
378 status collapsed
379
380 \begin_layout Plain Layout
381 packages.lst
382 \end_layout
383
384 \end_inset
385
386  contains the list of packages that have been recognized by LyX.
387  It is currently unused by the LyX program itself, but the information extracted
388 , and more, is made available with 
389 \begin_inset Flex CharStyle:MenuItem
390 status collapsed
391
392 \begin_layout Plain Layout
393 Help\SpecialChar \menuseparator
394 LaTeX
395 \begin_inset space ~
396 \end_inset
397
398 Configuration
399 \end_layout
400
401 \end_inset
402
403 .
404 \end_layout
405
406 \begin_layout Labeling
407 \labelwidthstring 00.00.0000
408 \begin_inset Flex CharStyle:Code
409 status collapsed
410
411 \begin_layout Plain Layout
412 textclass.lst
413 \end_layout
414
415 \end_inset
416
417  the list of text classes that have been found in your 
418 \begin_inset Flex CharStyle:Code
419 status collapsed
420
421 \begin_layout Plain Layout
422 layout/
423 \end_layout
424
425 \end_inset
426
427  directories, along with the associated LaTeX document class and their descripti
428 on.
429 \end_layout
430
431 \begin_layout Labeling
432 \labelwidthstring 00.00.0000
433 \begin_inset Flex CharStyle:Code
434 status collapsed
435
436 \begin_layout Plain Layout
437 lyxmodules.lst
438 \end_layout
439
440 \end_inset
441
442  the list of layout modules found in your 
443 \begin_inset Flex CharStyle:Code
444 status collapsed
445
446 \begin_layout Plain Layout
447 layout/
448 \end_layout
449
450 \end_inset
451
452  directories
453 \end_layout
454
455 \begin_layout Labeling
456 \labelwidthstring 00.00.0000
457 \begin_inset Flex CharStyle:Code
458 status collapsed
459
460 \begin_layout Plain Layout
461 *files.lst
462 \end_layout
463
464 \end_inset
465
466  lists of various sorts of LaTeX-related files found on your system
467 \end_layout
468
469 \begin_layout Labeling
470 \labelwidthstring 00.00.0000
471 \begin_inset Flex CharStyle:Code
472 status collapsed
473
474 \begin_layout Plain Layout
475 doc/LaTeXConfig.lyx
476 \end_layout
477
478 \end_inset
479
480  is automatically generated during configuration from the file 
481 \begin_inset Flex CharStyle:Code
482 status collapsed
483
484 \begin_layout Plain Layout
485 LaTeXConfig.lyx.in
486 \end_layout
487
488 \end_inset
489
490 .
491  It contains information on your LaTeX configuration.
492 \end_layout
493
494 \begin_layout Subsection
495 Directories
496 \end_layout
497
498 \begin_layout Standard
499 These directories are duplicated between 
500 \begin_inset Flex CharStyle:Code
501 status collapsed
502
503 \begin_layout Plain Layout
504 LyXDir
505 \end_layout
506
507 \end_inset
508
509  and 
510 \begin_inset Flex CharStyle:Code
511 status collapsed
512
513 \begin_layout Plain Layout
514 UserDir
515 \end_layout
516
517 \end_inset
518
519 .
520  If a particular files exists in both places, the one in 
521 \begin_inset Flex CharStyle:Code
522 status collapsed
523
524 \begin_layout Plain Layout
525 UserDir
526 \end_layout
527
528 \end_inset
529
530  will be used.
531 \end_layout
532
533 \begin_layout Labeling
534 \labelwidthstring 00.00.0000
535 \begin_inset Flex CharStyle:Code
536 status collapsed
537
538 \begin_layout Plain Layout
539 bind/
540 \end_layout
541
542 \end_inset
543
544  this directory contains files with the extension 
545 \begin_inset Flex CharStyle:Code
546 status collapsed
547
548 \begin_layout Plain Layout
549 .bind
550 \end_layout
551
552 \end_inset
553
554  that define the keybindings used in LyX.
555  If there exists an internationalized version of the bind file named 
556 \begin_inset Flex CharStyle:Code
557 status collapsed
558
559 \begin_layout Plain Layout
560 $LANG_xxx.bind
561 \end_layout
562
563 \end_inset
564
565 , that will be used first.
566 \end_layout
567
568 \begin_layout Labeling
569 \labelwidthstring 00.00.0000
570 \begin_inset Flex CharStyle:Code
571 status collapsed
572
573 \begin_layout Plain Layout
574 clipart/
575 \end_layout
576
577 \end_inset
578
579  contains graphics files that can be included in documents.
580  
581 \end_layout
582
583 \begin_layout Labeling
584 \labelwidthstring 00.00.0000
585 \begin_inset Flex CharStyle:Code
586 status collapsed
587
588 \begin_layout Plain Layout
589 doc/
590 \end_layout
591
592 \end_inset
593
594  contains LyX documentation files (including the one you are currently reading).
595  The file 
596 \begin_inset Flex CharStyle:Code
597 status collapsed
598
599 \begin_layout Plain Layout
600 LaTeXConfig.lyx
601 \end_layout
602
603 \end_inset
604
605  deserves special attention, as noted above.
606  The internationalized help docs are in subdirectories 
607 \begin_inset Flex CharStyle:Code
608 status collapsed
609
610 \begin_layout Plain Layout
611 doc/xx
612 \end_layout
613
614 \end_inset
615
616  where 
617 \begin_inset Quotes eld
618 \end_inset
619
620 xx
621 \begin_inset Quotes erd
622 \end_inset
623
624  is the ISO language code.
625  See chapter
626 \begin_inset space ~
627 \end_inset
628
629
630 \begin_inset CommandInset ref
631 LatexCommand ref
632 reference "cha:Internationalizing-LyX"
633
634 \end_inset
635
636  for details.
637 \end_layout
638
639 \begin_layout Labeling
640 \labelwidthstring 00.00.0000
641 \begin_inset Flex CharStyle:Code
642 status collapsed
643
644 \begin_layout Plain Layout
645 examples/
646 \end_layout
647
648 \end_inset
649
650  contains example files that explain how to use some features.
651  In the file browser, press the 
652 \begin_inset Flex CharStyle:MenuItem
653 status collapsed
654
655 \begin_layout Plain Layout
656 Examples
657 \end_layout
658
659 \end_inset
660
661  button to get there.
662 \end_layout
663
664 \begin_layout Labeling
665 \labelwidthstring 00.00.0000
666 \begin_inset Flex CharStyle:Code
667 status collapsed
668
669 \begin_layout Plain Layout
670 images/
671 \end_layout
672
673 \end_inset
674
675  contains image files that are used by the 
676 \begin_inset Flex CharStyle:MenuItem
677 status collapsed
678
679 \begin_layout Plain Layout
680 Document
681 \end_layout
682
683 \end_inset
684
685  dialog.
686  In addition, it also contains the individual icons used in the toolbar
687  and the banners that can be shown when LyX is launched.
688 \end_layout
689
690 \begin_layout Labeling
691 \labelwidthstring 00.00.0000
692 \begin_inset Flex CharStyle:Code
693 status collapsed
694
695 \begin_layout Plain Layout
696 kbd/
697 \end_layout
698
699 \end_inset
700
701  contains keyboard keymapping files.
702  See Chapter
703 \begin_inset space ~
704 \end_inset
705
706
707 \begin_inset CommandInset ref
708 LatexCommand ref
709 reference "sec:International-Keymap-Stuff"
710
711 \end_inset
712
713  for details.
714 \end_layout
715
716 \begin_layout Labeling
717 \labelwidthstring 00.00.0000
718 \begin_inset Flex CharStyle:Code
719 status collapsed
720
721 \begin_layout Plain Layout
722 layouts/
723 \end_layout
724
725 \end_inset
726
727  contains the text class and module files described in Chapter
728 \begin_inset space ~
729 \end_inset
730
731
732 \begin_inset CommandInset ref
733 LatexCommand ref
734 reference "cha:Installing-New-Document"
735
736 \end_inset
737
738 .
739 \end_layout
740
741 \begin_layout Labeling
742 \labelwidthstring 00.00.0000
743 \begin_inset Flex CharStyle:Code
744 status collapsed
745
746 \begin_layout Plain Layout
747 lyx2lyx
748 \end_layout
749
750 \end_inset
751
752  contains the 
753 \begin_inset Flex CharStyle:Code
754 status collapsed
755
756 \begin_layout Plain Layout
757 lyx2lyx
758 \end_layout
759
760 \end_inset
761
762  Python scripts used to convert between LyX versions.
763  These can be run from the command line if, say, you want to batch-convert
764  files.
765 \end_layout
766
767 \begin_layout Labeling
768 \labelwidthstring 00.00.0000
769 \begin_inset Flex CharStyle:Code
770 status collapsed
771
772 \begin_layout Plain Layout
773 scripts/
774 \end_layout
775
776 \end_inset
777
778  contains some files that demonstrate the capabilities of the 
779 \begin_inset Flex CharStyle:MenuItem
780 status collapsed
781
782 \begin_layout Plain Layout
783 External
784 \begin_inset space ~
785 \end_inset
786
787 Template
788 \end_layout
789
790 \end_inset
791
792  feature.
793  Also contains some scripts used by LyX itself.
794 \end_layout
795
796 \begin_layout Labeling
797 \labelwidthstring 00.00.0000
798 \begin_inset Flex CharStyle:Code
799 status collapsed
800
801 \begin_layout Plain Layout
802 templates/
803 \end_layout
804
805 \end_inset
806
807  contains the standard LyX template files described in Chapter
808 \begin_inset space ~
809 \end_inset
810
811
812 \begin_inset CommandInset ref
813 LatexCommand ref
814 reference "sub:Creating-Templates"
815
816 \end_inset
817
818 .
819 \end_layout
820
821 \begin_layout Labeling
822 \labelwidthstring 00.00.0000
823 \begin_inset Flex CharStyle:Code
824 status collapsed
825
826 \begin_layout Plain Layout
827 ui/
828 \end_layout
829
830 \end_inset
831
832  contains files with the extension 
833 \begin_inset Flex CharStyle:Code
834 status collapsed
835
836 \begin_layout Plain Layout
837 .ui
838 \end_layout
839
840 \end_inset
841
842  that define the user interface to LyX.
843  That is, the files define which items appear in which menus and the items
844  appearing on the toolbar.
845 \end_layout
846
847 \begin_layout Subsection
848 Files you don't want to modify
849 \end_layout
850
851 \begin_layout Standard
852 These files are used internally by LyX and you generally do not need to
853  modify them unless you are a developer.
854 \end_layout
855
856 \begin_layout Labeling
857 \labelwidthstring 00.00.0000
858 \begin_inset Flex CharStyle:Code
859 status collapsed
860
861 \begin_layout Plain Layout
862 CREDITS
863 \end_layout
864
865 \end_inset
866
867  this file contains the list of LyX developers.
868  The contents are displayed with the menu entry 
869 \begin_inset Flex CharStyle:MenuItem
870 status collapsed
871
872 \begin_layout Plain Layout
873 Help\SpecialChar \menuseparator
874 About
875 \begin_inset space ~
876 \end_inset
877
878 LyX
879 \end_layout
880
881 \end_inset
882
883 .
884 \end_layout
885
886 \begin_layout Labeling
887 \labelwidthstring 00.00.0000
888 \begin_inset Flex CharStyle:Code
889 status collapsed
890
891 \begin_layout Plain Layout
892 chkconfig.ltx
893 \end_layout
894
895 \end_inset
896
897  this is a LaTeX script used during the configuration process.
898  Do not run directly.
899 \end_layout
900
901 \begin_layout Labeling
902 \labelwidthstring 00.00.0000
903 \begin_inset Flex CharStyle:Code
904 status collapsed
905
906 \begin_layout Plain Layout
907 configure.py
908 \end_layout
909
910 \end_inset
911
912  this is the script that is used to re-configure LyX.
913  It creates configuration files in the directory it was run from.
914 \end_layout
915
916 \begin_layout Subsection
917 Other files needing a line or two...
918 \end_layout
919
920 \begin_layout Labeling
921 \labelwidthstring 00.00.0000
922 \begin_inset Flex CharStyle:Code
923 status collapsed
924
925 \begin_layout Plain Layout
926 encodings
927 \end_layout
928
929 \end_inset
930
931  this contains tables describing how different character encodings can be
932  mapped to Unicode
933 \end_layout
934
935 \begin_layout Labeling
936 \labelwidthstring 00.00.0000
937 \begin_inset Flex CharStyle:Code
938 status collapsed
939
940 \begin_layout Plain Layout
941 external_templates
942 \end_layout
943
944 \end_inset
945
946  this file contains the templates available to the new 
947 \begin_inset Flex CharStyle:MenuItem
948 status collapsed
949
950 \begin_layout Plain Layout
951 External
952 \begin_inset space ~
953 \end_inset
954
955 Template
956 \end_layout
957
958 \end_inset
959
960  feature.
961 \end_layout
962
963 \begin_layout Labeling
964 \labelwidthstring 00.00.0000
965 \begin_inset Flex CharStyle:Code
966 status collapsed
967
968 \begin_layout Plain Layout
969 languages
970 \end_layout
971
972 \end_inset
973
974  this file contains a list of all the languages currently supported by LyX.
975 \end_layout
976
977 \begin_layout Section
978 Your local configuration directory
979 \end_layout
980
981 \begin_layout Standard
982 Even if you are using LyX as an unprivileged user, you might want to change
983  LyX configuration for your own use.
984  The 
985 \begin_inset Flex CharStyle:Code
986 status collapsed
987
988 \begin_layout Plain Layout
989 UserDir
990 \end_layout
991
992 \end_inset
993
994  directory contains all your personal configuration files.
995  This is the directory described as 
996 \begin_inset Quotes eld
997 \end_inset
998
999 user directory
1000 \begin_inset Quotes erd
1001 \end_inset
1002
1003  in 
1004 \begin_inset Flex CharStyle:MenuItem
1005 status collapsed
1006
1007 \begin_layout Plain Layout
1008 Help\SpecialChar \menuseparator
1009 About
1010 \begin_inset space ~
1011 \end_inset
1012
1013 LyX
1014 \end_layout
1015
1016 \end_inset
1017
1018 .
1019  This directory is used as a mirror of 
1020 \begin_inset Flex CharStyle:Code
1021 status collapsed
1022
1023 \begin_layout Plain Layout
1024 LyXDir
1025 \end_layout
1026
1027 \end_inset
1028
1029 , which means that every file in 
1030 \begin_inset Flex CharStyle:Code
1031 status collapsed
1032
1033 \begin_layout Plain Layout
1034 UserDir
1035 \end_layout
1036
1037 \end_inset
1038
1039  is a replacement for the corresponding file in 
1040 \begin_inset Flex CharStyle:Code
1041 status collapsed
1042
1043 \begin_layout Plain Layout
1044 LyXDir
1045 \end_layout
1046
1047 \end_inset
1048
1049 .
1050  Any configuration file described in the above sections can be placed either
1051  in the system-wide directory, in which case it will affect all users, or
1052  in your local directory for your own use.
1053 \end_layout
1054
1055 \begin_layout Standard
1056 To make things clearer, let's provide a few examples:
1057 \end_layout
1058
1059 \begin_layout Itemize
1060 The preferences set in the 
1061 \begin_inset Flex CharStyle:MenuItem
1062 status collapsed
1063
1064 \begin_layout Plain Layout
1065 Tools\SpecialChar \menuseparator
1066 Preferences
1067 \end_layout
1068
1069 \end_inset
1070
1071  dialog are saved to a file 
1072 \begin_inset Flex CharStyle:Code
1073 status collapsed
1074
1075 \begin_layout Plain Layout
1076 preferences
1077 \end_layout
1078
1079 \end_inset
1080
1081  in 
1082 \begin_inset Flex CharStyle:Code
1083 status collapsed
1084
1085 \begin_layout Plain Layout
1086 UserDir
1087 \end_layout
1088
1089 \end_inset
1090
1091 .
1092 \end_layout
1093
1094 \begin_layout Itemize
1095 When you reconfigure using 
1096 \begin_inset Flex CharStyle:MenuItem
1097 status collapsed
1098
1099 \begin_layout Plain Layout
1100 Tools\SpecialChar \menuseparator
1101 Reconfigure
1102 \end_layout
1103
1104 \end_inset
1105
1106 , LyX runs the 
1107 \begin_inset Flex CharStyle:Code
1108 status collapsed
1109
1110 \begin_layout Plain Layout
1111 configure.py
1112 \end_layout
1113
1114 \end_inset
1115
1116  script, and the resulting files are written in your local configuration
1117  directory.
1118  This means that any additional text class file that you might have added
1119  in 
1120 \begin_inset Flex CharStyle:Code
1121 status collapsed
1122
1123 \begin_layout Plain Layout
1124 UserDir/layouts
1125 \end_layout
1126
1127 \end_inset
1128
1129  will be added to the list of classes in the 
1130 \begin_inset Flex CharStyle:MenuItem
1131 status collapsed
1132
1133 \begin_layout Plain Layout
1134 Document\SpecialChar \menuseparator
1135 Settings
1136 \end_layout
1137
1138 \end_inset
1139
1140  dialog.
1141 \end_layout
1142
1143 \begin_layout Itemize
1144 If you get some updated documentation from LyX ftp site and cannot install
1145  it because you do not have sysadmin rights on your system, you can just
1146  copy the files in 
1147 \begin_inset Flex CharStyle:Code
1148 status collapsed
1149
1150 \begin_layout Plain Layout
1151 UserDir/doc/
1152 \end_layout
1153
1154 \end_inset
1155
1156  and the items in the 
1157 \begin_inset Flex CharStyle:MenuItem
1158 status collapsed
1159
1160 \begin_layout Plain Layout
1161 Help
1162 \end_layout
1163
1164 \end_inset
1165
1166  menu will open them!
1167 \end_layout
1168
1169 \begin_layout Section
1170 Running LyX with multiple configurations
1171 \end_layout
1172
1173 \begin_layout Standard
1174 The configuration freedom of the local configuration directory may not suffice
1175  if you want to have more than one configuration at your disposal.
1176  For example, you may want to be use different key bindings or printer settings
1177  at different times.
1178  You can achieve this by having several such directories.
1179  You then specify which directory to use at run-time.
1180 \end_layout
1181
1182 \begin_layout Standard
1183 Invoking LyX with the command line switch 
1184 \begin_inset Flex CharStyle:Code
1185 status collapsed
1186
1187 \begin_layout Plain Layout
1188 -userdir
1189 \end_layout
1190
1191 \end_inset
1192
1193  
1194 \emph on
1195 <some directory>
1196 \emph default
1197  instructs the program to read the configuration from that directory, and
1198  not from the default directory.
1199  (You can determine the default directory by running LyX without the 
1200 \begin_inset Flex CharStyle:Code
1201 status collapsed
1202
1203 \begin_layout Plain Layout
1204 -userdir
1205 \end_layout
1206
1207 \end_inset
1208
1209  switch.) If the specified directory does not exist, LyX offers to create
1210  it for you, just like it does for the default directory on the first time
1211  you run the program.
1212  You can modify the configuration options in this additional user directory
1213  exactly as you would for the default directory.
1214  These directories are completely independent (but read on).
1215  Note that setting the environment variable 
1216 \begin_inset Flex CharStyle:Code
1217 status collapsed
1218
1219 \begin_layout Plain Layout
1220 LYX_USERDIR_VER
1221 \end_layout
1222
1223 \end_inset
1224
1225  to some value has exactly the same effect.
1226 \end_layout
1227
1228 \begin_layout Standard
1229 Having several configurations also requires more maintenance: if you want
1230  to add a new layout to 
1231 \begin_inset Flex CharStyle:Code
1232 status collapsed
1233
1234 \begin_layout Plain Layout
1235 NewUserDir/layouts
1236 \end_layout
1237
1238 \end_inset
1239
1240  which you want available from all your configurations, you must add it
1241  to each directory separately.
1242  You can avoid this with the following trick: after LyX creates the additional
1243  directory, most of the subdirectories (see above) are empty.
1244  If you want the new configuration to mirror an existing one, replace the
1245  empty subdirectory with a symbolic link to the matching subdirectory in
1246  the existing configuration.
1247  Take care with the 
1248 \begin_inset Flex CharStyle:Code
1249 status collapsed
1250
1251 \begin_layout Plain Layout
1252 doc/
1253 \end_layout
1254
1255 \end_inset
1256
1257  subdirectory, however, since it contains a file written by the configuration
1258  script (also accessible through 
1259 \begin_inset Flex CharStyle:MenuItem
1260 status collapsed
1261
1262 \begin_layout Plain Layout
1263 Tools\SpecialChar \menuseparator
1264 Reconfigure
1265 \end_layout
1266
1267 \end_inset
1268
1269 ) which is configuration-specific.
1270 \end_layout
1271
1272 \begin_layout Chapter
1273 The Preferences dialog
1274 \end_layout
1275
1276 \begin_layout Standard
1277 All options of the preferences dialog are described in the Appendix 
1278 \emph on
1279 The Preferences Dialog
1280 \emph default
1281  in the 
1282 \emph on
1283 User's Guide
1284 \emph default
1285 .
1286  For some options you might find here more details.
1287 \end_layout
1288
1289 \begin_layout Section
1290 Formats
1291 \begin_inset CommandInset label
1292 LatexCommand label
1293 name "sec:Formats"
1294
1295 \end_inset
1296
1297
1298 \end_layout
1299
1300 \begin_layout Standard
1301 The first step is to define your file formats if they are not already defined.
1302  To do so, open the 
1303 \begin_inset Flex CharStyle:MenuItem
1304 status collapsed
1305
1306 \begin_layout Plain Layout
1307 Tools\SpecialChar \menuseparator
1308 Preferences
1309 \end_layout
1310
1311 \end_inset
1312
1313  dialog.
1314  Under 
1315 \begin_inset Flex CharStyle:MenuItem
1316 status collapsed
1317
1318 \begin_layout Plain Layout
1319 File Handling\SpecialChar \menuseparator
1320 File formats
1321 \end_layout
1322
1323 \end_inset
1324
1325  press the 
1326 \begin_inset Flex CharStyle:MenuItem
1327 status collapsed
1328
1329 \begin_layout Plain Layout
1330 New\SpecialChar \ldots{}
1331
1332 \end_layout
1333
1334 \end_inset
1335
1336  button to define your new format.
1337  The 
1338 \begin_inset Flex CharStyle:MenuItem
1339 status collapsed
1340
1341 \begin_layout Plain Layout
1342 Format
1343 \end_layout
1344
1345 \end_inset
1346
1347  field contains the name used to identify the format in the GUI.
1348  The 
1349 \begin_inset Flex CharStyle:MenuItem
1350 status collapsed
1351
1352 \begin_layout Plain Layout
1353 Short Name
1354 \end_layout
1355
1356 \end_inset
1357
1358  is used to identify the format internally.
1359  You will also need to enter a file extension.
1360  These are all required.
1361  The optional 
1362 \begin_inset Flex CharStyle:MenuItem
1363 status collapsed
1364
1365 \begin_layout Plain Layout
1366 Shortcut
1367 \end_layout
1368
1369 \end_inset
1370
1371  field is used to provide a keyboard shortcut on the menus.
1372  (For example, pressing 
1373 \begin_inset Flex CharStyle:MenuItem
1374 status collapsed
1375
1376 \begin_layout Plain Layout
1377 Alt-V D
1378 \end_layout
1379
1380 \end_inset
1381
1382  will 
1383 \begin_inset Flex CharStyle:MenuItem
1384 status collapsed
1385
1386 \begin_layout Plain Layout
1387 View\SpecialChar \menuseparator
1388 DVI
1389 \end_layout
1390
1391 \end_inset
1392
1393 .) 
1394 \end_layout
1395
1396 \begin_layout Standard
1397 A Format can have a 
1398 \begin_inset Flex CharStyle:MenuItem
1399 status collapsed
1400
1401 \begin_layout Plain Layout
1402 Viewer
1403 \end_layout
1404
1405 \end_inset
1406
1407  and an 
1408 \begin_inset Flex CharStyle:MenuItem
1409 status collapsed
1410
1411 \begin_layout Plain Layout
1412 Editor
1413 \end_layout
1414
1415 \end_inset
1416
1417  associated with it.
1418  For example, you might want to use 
1419 \begin_inset Flex CharStyle:MenuItem
1420 status collapsed
1421
1422 \begin_layout Plain Layout
1423 Ghostview
1424 \end_layout
1425
1426 \end_inset
1427
1428  to view PostScript files.
1429  You can enter the command needed to start the program in the corresponding
1430  fields.
1431  In defining this command, you can use the four variables listed in the
1432  next section.
1433  The viewer is launched when you view an image in LyX or use the 
1434 \begin_inset Flex CharStyle:MenuItem
1435 status collapsed
1436
1437 \begin_layout Plain Layout
1438 View
1439 \end_layout
1440
1441 \end_inset
1442
1443  menu.
1444  The editor is for example launched when you right-click on an image and
1445  choose 
1446 \begin_inset Flex CharStyle:MenuItem
1447 status collapsed
1448
1449 \begin_layout Plain Layout
1450 Edit externally
1451 \end_layout
1452
1453 \end_inset
1454
1455  in the appearing context menu.
1456 \end_layout
1457
1458 \begin_layout Standard
1459 The 
1460 \begin_inset Flex CharStyle:MenuItem
1461 status collapsed
1462
1463 \begin_layout Plain Layout
1464 Document format
1465 \end_layout
1466
1467 \end_inset
1468
1469  option tells LyX that a format is suitable for document export.
1470  If this is set and if a suitable conversion route exists (see sec.
1471 \begin_inset space \thinspace{}
1472 \end_inset
1473
1474
1475 \begin_inset CommandInset ref
1476 LatexCommand ref
1477 reference "sec:Converters"
1478
1479 \end_inset
1480
1481 ), the format will appear in the 
1482 \begin_inset Flex CharStyle:MenuItem
1483 status collapsed
1484
1485 \begin_layout Plain Layout
1486 File\SpecialChar \menuseparator
1487 Export
1488 \end_layout
1489
1490 \end_inset
1491
1492  menu.
1493  The format will also appear in the 
1494 \begin_inset Flex CharStyle:MenuItem
1495 status collapsed
1496
1497 \begin_layout Plain Layout
1498 View
1499 \end_layout
1500
1501 \end_inset
1502
1503  menu if a viewer is specified for the format.
1504  Pure image formats, such as 
1505 \begin_inset Flex CharStyle:Code
1506 status collapsed
1507
1508 \begin_layout Plain Layout
1509 png
1510 \end_layout
1511
1512 \end_inset
1513
1514 , should not use this option.
1515  Formats that can both represent vector graphics and documents like 
1516 \begin_inset Flex CharStyle:Code
1517 status collapsed
1518
1519 \begin_layout Plain Layout
1520 pdf
1521 \end_layout
1522
1523 \end_inset
1524
1525  should use it.
1526 \end_layout
1527
1528 \begin_layout Standard
1529 The option 
1530 \begin_inset Flex CharStyle:MenuItem
1531 status collapsed
1532
1533 \begin_layout Plain Layout
1534 Vector graphics format
1535 \end_layout
1536
1537 \end_inset
1538
1539  tells LyX that a format can contain vector graphics.
1540  This information is used to determine the target format of included graphics
1541  for 
1542 \begin_inset Flex CharStyle:MenuItem
1543 status collapsed
1544
1545 \begin_layout Plain Layout
1546 pdflatex
1547 \end_layout
1548
1549 \end_inset
1550
1551  export.
1552  Included graphics may need to be converted to either 
1553 \begin_inset Flex CharStyle:MenuItem
1554 status collapsed
1555
1556 \begin_layout Plain Layout
1557 pdf
1558 \end_layout
1559
1560 \end_inset
1561
1562
1563 \begin_inset Flex CharStyle:MenuItem
1564 status collapsed
1565
1566 \begin_layout Plain Layout
1567 png
1568 \end_layout
1569
1570 \end_inset
1571
1572 , or 
1573 \begin_inset Flex CharStyle:MenuItem
1574 status collapsed
1575
1576 \begin_layout Plain Layout
1577 jpg
1578 \end_layout
1579
1580 \end_inset
1581
1582 , since 
1583 \begin_inset Flex CharStyle:MenuItem
1584 status collapsed
1585
1586 \begin_layout Plain Layout
1587 pdflatex
1588 \end_layout
1589
1590 \end_inset
1591
1592  cannot handle other image formats.
1593  If an included graphic is not already in 
1594 \begin_inset Flex CharStyle:MenuItem
1595 status collapsed
1596
1597 \begin_layout Plain Layout
1598 pdf
1599 \end_layout
1600
1601 \end_inset
1602
1603
1604 \begin_inset Flex CharStyle:MenuItem
1605 status collapsed
1606
1607 \begin_layout Plain Layout
1608 png
1609 \end_layout
1610
1611 \end_inset
1612
1613 , or 
1614 \begin_inset Flex CharStyle:MenuItem
1615 status collapsed
1616
1617 \begin_layout Plain Layout
1618 jpg
1619 \end_layout
1620
1621 \end_inset
1622
1623  format, it is converted to 
1624 \begin_inset Flex CharStyle:MenuItem
1625 status collapsed
1626
1627 \begin_layout Plain Layout
1628 pdf
1629 \end_layout
1630
1631 \end_inset
1632
1633  if the vector format option is set, and otherwise to 
1634 \begin_inset Flex CharStyle:MenuItem
1635 status collapsed
1636
1637 \begin_layout Plain Layout
1638 png
1639 \end_layout
1640
1641 \end_inset
1642
1643 .
1644 \end_layout
1645
1646 \begin_layout Section
1647 Copiers
1648 \end_layout
1649
1650 \begin_layout Standard
1651 Since all conversions from one format to another take place in LyX's temporary
1652  directory, it is sometimes necessary to modify a file before copying it
1653  to the temporary directory in order that the conversion may be performed.
1654 \begin_inset Foot
1655 status collapsed
1656
1657 \begin_layout Plain Layout
1658 For example, the file may refer to other files—images, for example—using
1659  relative file names, and these may become invalid when the file is copied
1660  to the temporary directory.
1661 \end_layout
1662
1663 \end_inset
1664
1665  This is done by a Copier: It copies a file to (or from) the temporary directory
1666  and may modify it in the process.
1667 \end_layout
1668
1669 \begin_layout Standard
1670 The definitions of the copiers may use four variables:
1671 \end_layout
1672
1673 \begin_layout Labeling
1674 \labelwidthstring 00.00.0000
1675 \begin_inset Flex CharStyle:Code
1676 status collapsed
1677
1678 \begin_layout Plain Layout
1679 $$s
1680 \end_layout
1681
1682 \end_inset
1683
1684  The LyX system directory (e.
1685 \begin_inset space \thinspace{}
1686 \end_inset
1687
1688 g.
1689 \begin_inset space \space{}
1690 \end_inset
1691
1692
1693 \begin_inset Flex CharStyle:MenuItem
1694 status collapsed
1695
1696 \begin_layout Plain Layout
1697 /usr/share/lyx
1698 \end_layout
1699
1700 \end_inset
1701
1702 ).
1703 \end_layout
1704
1705 \begin_layout Labeling
1706 \labelwidthstring 00.00.0000
1707 \begin_inset Flex CharStyle:Code
1708 status collapsed
1709
1710 \begin_layout Plain Layout
1711 $$i
1712 \end_layout
1713
1714 \end_inset
1715
1716  The input file
1717 \end_layout
1718
1719 \begin_layout Labeling
1720 \labelwidthstring 00.00.0000
1721 \begin_inset Flex CharStyle:Code
1722 status collapsed
1723
1724 \begin_layout Plain Layout
1725 $$o
1726 \end_layout
1727
1728 \end_inset
1729
1730  The output file
1731 \end_layout
1732
1733 \begin_layout Labeling
1734 \labelwidthstring 00.00.0000
1735 \begin_inset Flex CharStyle:Code
1736 status collapsed
1737
1738 \begin_layout Plain Layout
1739 $$l
1740 \end_layout
1741
1742 \end_inset
1743
1744  The `LaTeX name'
1745 \end_layout
1746
1747 \begin_layout Standard
1748 The latter should be the filename as it would be used in a LaTeX's 
1749 \series bold
1750
1751 \backslash
1752 include
1753 \series default
1754  command.
1755  It is relevant only when exporting files suitable for such inclusion.
1756 \end_layout
1757
1758 \begin_layout Standard
1759 Copiers can be used to do almost anything with output files.
1760  For example, suppose you want generated pdf files to be copied to a special
1761  directory, 
1762 \begin_inset Flex CharStyle:Code
1763 status collapsed
1764
1765 \begin_layout Plain Layout
1766 /home/you/pdf/
1767 \end_layout
1768
1769 \end_inset
1770
1771 .
1772  Then you could write a shell script such as this one:
1773 \end_layout
1774
1775 \begin_layout Standard
1776 \begin_inset listings
1777 inline false
1778 status open
1779
1780 \begin_layout Plain Layout
1781
1782 #!/bin/bash
1783 \end_layout
1784
1785 \begin_layout Plain Layout
1786
1787 FROMFILE=$1
1788 \end_layout
1789
1790 \begin_layout Plain Layout
1791
1792 TOFILE=`basename $2`
1793 \end_layout
1794
1795 \begin_layout Plain Layout
1796
1797 cp $FROMFILE /home/you/pdf/$TOFILE
1798 \end_layout
1799
1800 \end_inset
1801
1802 Save it in your local LyX directory—say, 
1803 \begin_inset Flex CharStyle:Code
1804 status collapsed
1805
1806 \begin_layout Plain Layout
1807 /home/you/.lyx/scripts/pdfcopier.sh
1808 \end_layout
1809
1810 \end_inset
1811
1812 —and make it executable, if you need to do so on your platform.
1813  Then, in the 
1814 \begin_inset Flex CharStyle:MenuItem
1815 status collapsed
1816
1817 \begin_layout Plain Layout
1818 Tools\SpecialChar \menuseparator
1819 Preferences
1820 \end_layout
1821
1822 \end_inset
1823
1824  dialog, select under 
1825 \begin_inset Flex CharStyle:MenuItem
1826 status collapsed
1827
1828 \begin_layout Plain Layout
1829 File Handling\SpecialChar \menuseparator
1830 File formats
1831 \end_layout
1832
1833 \end_inset
1834
1835  the 
1836 \begin_inset Flex CharStyle:MenuItem
1837 status collapsed
1838
1839 \begin_layout Plain Layout
1840 PDF(pdflatex)
1841 \end_layout
1842
1843 \end_inset
1844
1845  format—or one of the other pdf formats—and enter 
1846 \begin_inset Flex CharStyle:Code
1847 status collapsed
1848
1849 \begin_layout Plain Layout
1850 pdfcopier.sh $$i $$o
1851 \end_layout
1852
1853 \end_inset
1854
1855  into the 
1856 \begin_inset Flex CharStyle:MenuItem
1857 status collapsed
1858
1859 \begin_layout Plain Layout
1860 Copier
1861 \end_layout
1862
1863 \end_inset
1864
1865  field.
1866  
1867 \end_layout
1868
1869 \begin_layout Standard
1870 Copiers are used by LyX in various of its own conversions.
1871  For example, if appropriate programs are found, LyX will automatically
1872  install copiers for the 
1873 \begin_inset Flex CharStyle:MenuItem
1874 status collapsed
1875
1876 \begin_layout Plain Layout
1877 HTML
1878 \end_layout
1879
1880 \end_inset
1881
1882  and 
1883 \begin_inset Flex CharStyle:MenuItem
1884 status collapsed
1885
1886 \begin_layout Plain Layout
1887 HTML
1888 \begin_inset space ~
1889 \end_inset
1890
1891 (MS Word)
1892 \end_layout
1893
1894 \end_inset
1895
1896  formats.
1897  When these formats are exported, the copier sees that not just the main
1898  HTML file but various associated files (style files, images, etc.) are also
1899  copied.
1900  All these files are written to a subdirectory of the directory in which
1901  the original LyX file was found.
1902 \begin_inset Foot
1903 status collapsed
1904
1905 \begin_layout Plain Layout
1906 This copier can be customized.
1907  The optional 
1908 \begin_inset Quotes eld
1909 \end_inset
1910
1911 -e
1912 \begin_inset Quotes erd
1913 \end_inset
1914
1915  argument takes a comma-separated list of extensions to be copied; if it
1916  is omitted, all files will be copied.
1917  The 
1918 \begin_inset Quotes eld
1919 \end_inset
1920
1921 -t
1922 \begin_inset Quotes erd
1923 \end_inset
1924
1925  argument determines the extension added to the generated directory.
1926  By default, it is 
1927 \begin_inset Quotes eld
1928 \end_inset
1929
1930
1931 \begin_inset Flex CharStyle:MenuItem
1932 status collapsed
1933
1934 \begin_layout Plain Layout
1935 LyXconv
1936 \end_layout
1937
1938 \end_inset
1939
1940
1941 \begin_inset Quotes erd
1942 \end_inset
1943
1944 , so HTML generated from 
1945 \begin_inset Flex CharStyle:MenuItem
1946 status collapsed
1947
1948 \begin_layout Plain Layout
1949 /path/to/filename.lyx
1950 \end_layout
1951
1952 \end_inset
1953
1954  will end up in 
1955 \begin_inset Flex CharStyle:MenuItem
1956 status collapsed
1957
1958 \begin_layout Plain Layout
1959 /path/to/filename.html.LyXconv
1960 \end_layout
1961
1962 \end_inset
1963
1964 .
1965  
1966 \end_layout
1967
1968 \end_inset
1969
1970
1971 \end_layout
1972
1973 \begin_layout Section
1974 Converters
1975 \begin_inset CommandInset label
1976 LatexCommand label
1977 name "sec:Converters"
1978
1979 \end_inset
1980
1981
1982 \end_layout
1983
1984 \begin_layout Standard
1985 You can define your own Converters to convert files between different formats.
1986  This is done in the 
1987 \begin_inset Flex CharStyle:MenuItem
1988 status collapsed
1989
1990 \begin_layout Plain Layout
1991 Tools\SpecialChar \menuseparator
1992 Preferences\SpecialChar \menuseparator
1993 File Handling\SpecialChar \menuseparator
1994 Converters
1995 \end_layout
1996
1997 \end_inset
1998
1999  dialog.
2000 \end_layout
2001
2002 \begin_layout Standard
2003 To define a new converter, select the 
2004 \begin_inset Flex CharStyle:MenuItem
2005 status collapsed
2006
2007 \begin_layout Plain Layout
2008 From
2009 \begin_inset space ~
2010 \end_inset
2011
2012 format
2013 \end_layout
2014
2015 \end_inset
2016
2017  and 
2018 \begin_inset Flex CharStyle:MenuItem
2019 status collapsed
2020
2021 \begin_layout Plain Layout
2022 To
2023 \begin_inset space ~
2024 \end_inset
2025
2026 format
2027 \end_layout
2028
2029 \end_inset
2030
2031  from the drop-down lists, enter the command needed for the conversion,
2032  and then press the 
2033 \begin_inset Flex CharStyle:MenuItem
2034 status collapsed
2035
2036 \begin_layout Plain Layout
2037 Add
2038 \end_layout
2039
2040 \end_inset
2041
2042  button.
2043  Several variables can be used in the definition of converters:
2044 \end_layout
2045
2046 \begin_layout Labeling
2047 \labelwidthstring 00.00.0000
2048 \begin_inset Flex CharStyle:Code
2049 status collapsed
2050
2051 \begin_layout Plain Layout
2052 $$s
2053 \end_layout
2054
2055 \end_inset
2056
2057  The LyX system directory
2058 \end_layout
2059
2060 \begin_layout Labeling
2061 \labelwidthstring 00.00.0000
2062 \begin_inset Flex CharStyle:Code
2063 status collapsed
2064
2065 \begin_layout Plain Layout
2066 $$i
2067 \end_layout
2068
2069 \end_inset
2070
2071  The input file
2072 \end_layout
2073
2074 \begin_layout Labeling
2075 \labelwidthstring 00.00.0000
2076 \begin_inset Flex CharStyle:Code
2077 status collapsed
2078
2079 \begin_layout Plain Layout
2080 $$o
2081 \end_layout
2082
2083 \end_inset
2084
2085  The output file
2086 \end_layout
2087
2088 \begin_layout Labeling
2089 \labelwidthstring 00.00.0000
2090 \begin_inset Flex CharStyle:Code
2091 status collapsed
2092
2093 \begin_layout Plain Layout
2094 $$b
2095 \end_layout
2096
2097 \end_inset
2098
2099  The base filename of the input file (i.
2100 \begin_inset space \thinspace{}
2101 \end_inset
2102
2103 g., without the extension)
2104 \end_layout
2105
2106 \begin_layout Labeling
2107 \labelwidthstring 00.00.0000
2108 \begin_inset Flex CharStyle:Code
2109 status collapsed
2110
2111 \begin_layout Plain Layout
2112 $$p
2113 \end_layout
2114
2115 \end_inset
2116
2117  The path to the input file
2118 \end_layout
2119
2120 \begin_layout Labeling
2121 \labelwidthstring 00.00.0000
2122 \begin_inset Flex CharStyle:Code
2123 status collapsed
2124
2125 \begin_layout Plain Layout
2126 $$r
2127 \end_layout
2128
2129 \end_inset
2130
2131  The path to the original input file (this is different from $$p when a
2132  chain of converters is called).
2133 \end_layout
2134
2135 \begin_layout Standard
2136 In the 
2137 \begin_inset Flex CharStyle:MenuItem
2138 status collapsed
2139
2140 \begin_layout Plain Layout
2141 Extra
2142 \begin_inset space ~
2143 \end_inset
2144
2145 Flag
2146 \end_layout
2147
2148 \end_inset
2149
2150  field you can enter the following flags, separated by commas:
2151 \end_layout
2152
2153 \begin_layout Labeling
2154 \labelwidthstring 00.00.0000
2155 \begin_inset Flex CharStyle:Code
2156 status collapsed
2157
2158 \begin_layout Plain Layout
2159 latex
2160 \end_layout
2161
2162 \end_inset
2163
2164  This converter runs some form of LaTeX.
2165  This will make LyX's LaTeX error logs available.
2166 \end_layout
2167
2168 \begin_layout Labeling
2169 \labelwidthstring 00.00.0000
2170 \begin_inset Flex CharStyle:Code
2171 status collapsed
2172
2173 \begin_layout Plain Layout
2174 needaux
2175 \end_layout
2176
2177 \end_inset
2178
2179  Needs the LaTeX 
2180 \begin_inset Flex CharStyle:MenuItem
2181 status collapsed
2182
2183 \begin_layout Plain Layout
2184 .aux
2185 \end_layout
2186
2187 \end_inset
2188
2189  file for the conversion.
2190 \end_layout
2191
2192 \begin_layout Labeling
2193 \labelwidthstring 00.00.0000
2194 \begin_inset Flex CharStyle:Code
2195 status collapsed
2196
2197 \begin_layout Plain Layout
2198 xml
2199 \end_layout
2200
2201 \end_inset
2202
2203  Output is XML.
2204 \end_layout
2205
2206 \begin_layout Standard
2207 The following three flags are not really flags at all because they take
2208  an argument in the 
2209 \begin_inset Flex CharStyle:MenuItem
2210 status collapsed
2211
2212 \begin_layout Plain Layout
2213 key
2214 \begin_inset space ~
2215 \end_inset
2216
2217 =
2218 \begin_inset space ~
2219 \end_inset
2220
2221 value
2222 \end_layout
2223
2224 \end_inset
2225
2226  format:
2227 \end_layout
2228
2229 \begin_layout Labeling
2230 \labelwidthstring 00.00.0000
2231 \begin_inset Flex CharStyle:Code
2232 status collapsed
2233
2234 \begin_layout Plain Layout
2235 parselog
2236 \end_layout
2237
2238 \end_inset
2239
2240  If set, the converter's standard error will be redirected to a file 
2241 \begin_inset Flex CharStyle:Code
2242 status collapsed
2243
2244 \begin_layout Plain Layout
2245 infile.out
2246 \end_layout
2247
2248 \end_inset
2249
2250 , and the script given as argument will be run as: 
2251 \begin_inset Flex CharStyle:Code
2252 status collapsed
2253
2254 \begin_layout Plain Layout
2255 script < infile.out > infile.log
2256 \end_layout
2257
2258 \end_inset
2259
2260 .
2261  The argument may contain 
2262 \begin_inset Flex CharStyle:Code
2263 status collapsed
2264
2265 \begin_layout Plain Layout
2266 $$s
2267 \end_layout
2268
2269 \end_inset
2270
2271 .
2272 \end_layout
2273
2274 \begin_layout Labeling
2275 \labelwidthstring 00.00.0000
2276 \begin_inset Flex CharStyle:Code
2277 status collapsed
2278
2279 \begin_layout Plain Layout
2280 resultdir
2281 \end_layout
2282
2283 \end_inset
2284
2285  The name of the directory in which the converter will dump the generated
2286  files.
2287  LyX will not create this directory, and it does not copy anything into
2288  it, though it will copy this directory to the destination.
2289  The argument may contain 
2290 \begin_inset Flex CharStyle:Code
2291 status collapsed
2292
2293 \begin_layout Plain Layout
2294 $$b
2295 \end_layout
2296
2297 \end_inset
2298
2299 , which will be replaced by the base name of the input and output files,
2300  respectively, when the directory is copied.
2301 \begin_inset Newline newline
2302 \end_inset
2303
2304 Note that resultdir and usetempdir make no sense together.
2305  The latter will be ignored if the former is given.
2306 \end_layout
2307
2308 \begin_layout Labeling
2309 \labelwidthstring 00.00.0000
2310 \begin_inset Flex CharStyle:Code
2311 status collapsed
2312
2313 \begin_layout Plain Layout
2314 resultfile
2315 \end_layout
2316
2317 \end_inset
2318
2319  Determines the output file name and may, contain 
2320 \begin_inset Flex CharStyle:Code
2321 status collapsed
2322
2323 \begin_layout Plain Layout
2324 $$b
2325 \end_layout
2326
2327 \end_inset
2328
2329 .
2330  Sensible only with resultdir and optional even then; if not given, it defaults
2331  to `index'.
2332 \end_layout
2333
2334 \begin_layout Standard
2335 None of these last three are presently used in any of the converters that
2336  are installed with LyX.
2337  
2338 \end_layout
2339
2340 \begin_layout Standard
2341 You do not have to define converters for all formats between which you want
2342  to convert.
2343  For example, you will note that there is no `LyX to PostScript' converter,
2344  but LyX will export PostScript.
2345  It does so by first creating a LaTeX file (no converter needs to be defined
2346  for this) which is then converted to DVI using the `LaTeX to DVI' converter,
2347  and finally converting the resulting DVI file to PostScript.
2348  LyX finds such `chains' of converters automatically, and it will always
2349  choose the shortest possible chain.
2350  You can, though, still define multiple conversion methods between file
2351  formats.
2352  For example, the standard LyX configuration provides three ways to convert
2353  LaTeX to PDF: Directly, using 
2354 \begin_inset Flex CharStyle:MenuItem
2355 status collapsed
2356
2357 \begin_layout Plain Layout
2358 pdflatex
2359 \end_layout
2360
2361 \end_inset
2362
2363 ; via (DVI and) PostScript, using 
2364 \begin_inset Flex CharStyle:MenuItem
2365 status collapsed
2366
2367 \begin_layout Plain Layout
2368 ps2pdf
2369 \end_layout
2370
2371 \end_inset
2372
2373 ; or via DVI, using 
2374 \begin_inset Flex CharStyle:MenuItem
2375 status collapsed
2376
2377 \begin_layout Plain Layout
2378 dvipdfm
2379 \end_layout
2380
2381 \end_inset
2382
2383 .
2384  To define such alternate chains, you must define multiple target `file
2385  formats', as described in section 
2386 \begin_inset CommandInset ref
2387 LatexCommand ref
2388 reference "sec:Formats"
2389
2390 \end_inset
2391
2392 .
2393  For example, in the standard configuration, the formats named 
2394 \begin_inset Flex CharStyle:MenuItem
2395 status collapsed
2396
2397 \begin_layout Plain Layout
2398 pdf
2399 \end_layout
2400
2401 \end_inset
2402
2403
2404 \begin_inset Flex CharStyle:MenuItem
2405 status collapsed
2406
2407 \begin_layout Plain Layout
2408 pdf2
2409 \end_layout
2410
2411 \end_inset
2412
2413 , and 
2414 \begin_inset Flex CharStyle:MenuItem
2415 status collapsed
2416
2417 \begin_layout Plain Layout
2418 pdf3
2419 \end_layout
2420
2421 \end_inset
2422
2423  are defined, all of which share the extension 
2424 \begin_inset Flex CharStyle:MenuItem
2425 status collapsed
2426
2427 \begin_layout Plain Layout
2428 .pdf
2429 \end_layout
2430
2431 \end_inset
2432
2433 , and which correspond to the conversion methods just mentioned.
2434 \end_layout
2435
2436 \begin_layout Chapter
2437 Internationalizing LyX
2438 \begin_inset CommandInset label
2439 LatexCommand label
2440 name "cha:Internationalizing-LyX"
2441
2442 \end_inset
2443
2444
2445 \end_layout
2446
2447 \begin_layout Standard
2448 LyX supports using a translated interface.
2449  Last time we checked, LyX provided text in thirty languages.
2450  The language of choice is called your 
2451 \emph on
2452 locale
2453 \emph default
2454 .
2455  (For further reading on locale settings, see also the documentation for
2456  locale that comes with your operating system.
2457  For Linux, the manual page for 
2458 \begin_inset Flex CharStyle:Code
2459 status collapsed
2460
2461 \begin_layout Plain Layout
2462 locale(5)
2463 \end_layout
2464
2465 \end_inset
2466
2467  could be a good place to start).
2468 \end_layout
2469
2470 \begin_layout Standard
2471 Notice that these translations will work, but do contain a few flaws.
2472  In particular, all dialogs have been designed with the English text in
2473  mind, which means that some of the translated text will be too large to
2474  fit within the space allocated.
2475  This is only a display problem and will not cause any harm.
2476  Also, you will find that some of the translations do not define shortcut
2477  keys for everything.
2478  Sometimes, there are simply not enough free letters to do it.
2479  Other times, the translator just hasn't got around to doing it yet.
2480  Our localization team, which you may wish to join,
2481 \begin_inset Foot
2482 status collapsed
2483
2484 \begin_layout Plain Layout
2485 If you are a fluent speaker of a language other than English, joining these
2486  teams is a great way to give back to the LyX community!
2487 \end_layout
2488
2489 \end_inset
2490
2491  will of course try to fix these shortcomings in future versions of LyX.
2492 \end_layout
2493
2494 \begin_layout Section
2495 Translating LyX
2496 \end_layout
2497
2498 \begin_layout Subsection
2499 Translating the graphical user interface (text messages).
2500 \end_layout
2501
2502 \begin_layout Standard
2503 LyX uses the GNU 
2504 \begin_inset Flex CharStyle:Code
2505 status collapsed
2506
2507 \begin_layout Plain Layout
2508 gettext
2509 \end_layout
2510
2511 \end_inset
2512
2513  library to handle the internationalization of the interface.
2514  To have LyX speak your favorite language in all menus and dialogs, you
2515  need a 
2516 \begin_inset Flex CharStyle:Code
2517 status collapsed
2518
2519 \begin_layout Plain Layout
2520 po
2521 \end_layout
2522
2523 \end_inset
2524
2525 -file for that language.
2526  When this is available, you'll have to generate a 
2527 \begin_inset Flex CharStyle:Code
2528 status collapsed
2529
2530 \begin_layout Plain Layout
2531 mo
2532 \end_layout
2533
2534 \end_inset
2535
2536 -file from it and install the 
2537 \begin_inset Flex CharStyle:Code
2538 status collapsed
2539
2540 \begin_layout Plain Layout
2541 mo
2542 \end_layout
2543
2544 \end_inset
2545
2546 -file.
2547  The process of doing all of this is explained in the documentation for
2548  GNU 
2549 \begin_inset Flex CharStyle:Code
2550 status collapsed
2551
2552 \begin_layout Plain Layout
2553 gettext
2554 \end_layout
2555
2556 \end_inset
2557
2558 .
2559  It is possible to do this just for yourself, but if you're going to do
2560  it, you might as well share the results of your labors with the rest of
2561  the LyX community.
2562  Send a message to the LyX developers' list for more information about how
2563  to proceed.
2564 \end_layout
2565
2566 \begin_layout Standard
2567 In short, this is what you should do (xx denotes the language code):
2568 \end_layout
2569
2570 \begin_layout Itemize
2571 Check out the LyX source code.
2572  (See the 
2573 \begin_inset CommandInset href
2574 LatexCommand href
2575 name "information on the web"
2576 target "http://www.lyx.org/devel/cvs.php"
2577
2578 \end_inset
2579
2580 .)
2581 \end_layout
2582
2583 \begin_layout Itemize
2584 Copy the file 
2585 \begin_inset Flex CharStyle:Code
2586 status collapsed
2587
2588 \begin_layout Plain Layout
2589 lyx.pot
2590 \end_layout
2591
2592 \end_inset
2593
2594  to the folder of the 
2595 \begin_inset Flex CharStyle:Code
2596 status collapsed
2597
2598 \begin_layout Plain Layout
2599 **.po
2600 \end_layout
2601
2602 \end_inset
2603
2604  files.
2605  Then rename it to 
2606 \begin_inset Flex CharStyle:Code
2607 status collapsed
2608
2609 \begin_layout Plain Layout
2610 xx.po
2611 \end_layout
2612
2613 \end_inset
2614
2615 .
2616  (If 
2617 \begin_inset Flex CharStyle:Code
2618 status collapsed
2619
2620 \begin_layout Plain Layout
2621 lyx.pot
2622 \end_layout
2623
2624 \end_inset
2625
2626  doesn't exist anywhere, it can be remade with the console command 
2627 \begin_inset Flex CharStyle:Code
2628 status collapsed
2629
2630 \begin_layout Plain Layout
2631 make lyx.pot
2632 \end_layout
2633
2634 \end_inset
2635
2636  in that directory, or you can use an existing po-file for some other language
2637  as a template).
2638 \end_layout
2639
2640 \begin_layout Itemize
2641 Edit 
2642 \begin_inset Flex CharStyle:Code
2643 status collapsed
2644
2645 \begin_layout Plain Layout
2646 xx.po
2647 \end_layout
2648
2649 \end_inset
2650
2651 .
2652 \begin_inset Foot
2653 status collapsed
2654
2655 \begin_layout Plain Layout
2656 This is just a text file, so it can be edited in any text editor.
2657  But there are also specialized programs that support such editing, such
2658  as 
2659 \family typewriter
2660 Poedit
2661 \family default
2662  (for all platforms) or 
2663 \family typewriter
2664 KBabel
2665 \family default
2666  (for KDE).
2667  
2668 \family typewriter
2669 Emacs
2670 \family default
2671  contains a `mode' for editing 
2672 \begin_inset Flex CharStyle:Code
2673 status collapsed
2674
2675 \begin_layout Plain Layout
2676 po
2677 \end_layout
2678
2679 \end_inset
2680
2681  files, as well.
2682 \end_layout
2683
2684 \end_inset
2685
2686  For some menu- and widget-labels, there are also shortcut keys that should
2687  be translated.
2688  Those keys are marked after a `|', and should be translated according to
2689  the words and phrases of the language.
2690  You should also fill also out the information at the beginning of the new
2691  
2692 \begin_inset Flex CharStyle:Code
2693 status collapsed
2694
2695 \begin_layout Plain Layout
2696 po
2697 \end_layout
2698
2699 \end_inset
2700
2701 -file with your email-address, etc., so people know where to reach you with
2702  suggestions and entertaining flames.
2703 \end_layout
2704
2705 \begin_layout Standard
2706 If you are just doing this on your own, then:
2707 \end_layout
2708
2709 \begin_layout Itemize
2710 Generate 
2711 \begin_inset Flex CharStyle:Code
2712 status collapsed
2713
2714 \begin_layout Plain Layout
2715 xx.mo
2716 \end_layout
2717
2718 \end_inset
2719
2720 .
2721  This can be done with 
2722 \begin_inset Flex CharStyle:Code
2723 status collapsed
2724
2725 \begin_layout Plain Layout
2726 msgfmt -o xx.mo < xx.po
2727 \end_layout
2728
2729 \end_inset
2730
2731 .
2732 \end_layout
2733
2734 \begin_layout Itemize
2735 Copy the 
2736 \begin_inset Flex CharStyle:Code
2737 status collapsed
2738
2739 \begin_layout Plain Layout
2740 mo
2741 \end_layout
2742
2743 \end_inset
2744
2745 -file to your locale-tree, at the correct directory for application messages
2746  for the language
2747 \series bold
2748  
2749 \series default
2750 xx, and under the name 
2751 \begin_inset Flex CharStyle:Code
2752 status collapsed
2753
2754 \begin_layout Plain Layout
2755 lyx.mo
2756 \end_layout
2757
2758 \end_inset
2759
2760  (e.
2761 \begin_inset space \thinspace{}
2762 \end_inset
2763
2764 g.
2765 \begin_inset space \space{}
2766 \end_inset
2767
2768
2769 \begin_inset Flex CharStyle:Code
2770 status collapsed
2771
2772 \begin_layout Plain Layout
2773 /usr/local/share/locale/xx/LC_MESSAGES/lyx.mo
2774 \end_layout
2775
2776 \end_inset
2777
2778
2779 \series bold
2780 .
2781 \end_layout
2782
2783 \begin_layout Standard
2784 As said, however, it would be best if the new 
2785 \begin_inset Flex CharStyle:Code
2786 status collapsed
2787
2788 \begin_layout Plain Layout
2789 po
2790 \end_layout
2791
2792 \end_inset
2793
2794 -file could be added to the LyX distribution, so others can use it.
2795  Adding it involves making additional changes to LyX.
2796  So send an email to the developers' mailing list if you're interested in
2797  doing that.
2798 \end_layout
2799
2800 \begin_layout Subsubsection
2801 Ambiguous messages
2802 \end_layout
2803
2804 \begin_layout Standard
2805 Sometimes it turns out that one English message needs to be translated into
2806  different messages in the target language.
2807  One example is the message 
2808 \begin_inset Flex CharStyle:Code
2809 status collapsed
2810
2811 \begin_layout Plain Layout
2812 To
2813 \end_layout
2814
2815 \end_inset
2816
2817  which has the German translation 
2818 \lang german
2819 Nach
2820 \lang english
2821  or 
2822 \lang german
2823 Bis
2824 \lang english
2825 , depending upon exactly what the English 
2826 \begin_inset Quotes eld
2827 \end_inset
2828
2829 to
2830 \begin_inset Quotes erd
2831 \end_inset
2832
2833  means.
2834  GNU 
2835 \begin_inset Flex CharStyle:Code
2836 status collapsed
2837
2838 \begin_layout Plain Layout
2839 gettext
2840 \end_layout
2841
2842 \end_inset
2843
2844  does not handle such ambiguous translations.
2845  Therefore you have to add some context information to the message: Instead
2846  of 
2847 \begin_inset Flex CharStyle:Code
2848 status collapsed
2849
2850 \begin_layout Plain Layout
2851 To
2852 \end_layout
2853
2854 \end_inset
2855
2856  it becomes 
2857 \begin_inset Flex CharStyle:Code
2858 status collapsed
2859
2860 \begin_layout Plain Layout
2861 To[[as in 'From format x to format y']]
2862 \end_layout
2863
2864 \end_inset
2865
2866  and 
2867 \begin_inset Flex CharStyle:Code
2868 status collapsed
2869
2870 \begin_layout Plain Layout
2871 To[[as in 'From page x to page y']].
2872 \end_layout
2873
2874 \end_inset
2875
2876  Now the two occurrences of 
2877 \begin_inset Flex CharStyle:Code
2878 status collapsed
2879
2880 \begin_layout Plain Layout
2881 To
2882 \end_layout
2883
2884 \end_inset
2885
2886  are different for 
2887 \begin_inset Flex CharStyle:Code
2888 status collapsed
2889
2890 \begin_layout Plain Layout
2891 gettext
2892 \end_layout
2893
2894 \end_inset
2895
2896  and can be translated correctly to 
2897 \lang german
2898 Nach
2899 \lang english
2900  and 
2901 \lang german
2902 Bis
2903 \lang english
2904 , respectively.
2905 \end_layout
2906
2907 \begin_layout Standard
2908 Of course the context information needs to be stripped off the original
2909  message when no translation is used.
2910  Therefore you have to put it in double square brackets at the end of the
2911  message (see the example above).
2912  The translation mechanism of LyX ensures that everything in double square
2913  brackets at the end of messages is removed before displaying the message.
2914 \end_layout
2915
2916 \begin_layout Subsection
2917 Translating the documentation.
2918 \end_layout
2919
2920 \begin_layout Standard
2921 The online documentation (in the 
2922 \begin_inset Flex CharStyle:MenuItem
2923 status collapsed
2924
2925 \begin_layout Plain Layout
2926 Help
2927 \end_layout
2928
2929 \end_inset
2930
2931 -menu) can (and should!) be translated.
2932  If there are translated versions of the documentation available
2933 \begin_inset Foot
2934 status collapsed
2935
2936 \begin_layout Plain Layout
2937 As of March 2008, at least some of the documents have been translated into
2938  fourteen languages, with the Tutorial available in a few more.
2939 \end_layout
2940
2941 \end_inset
2942
2943  and the locale is set accordingly, these will be used automagically by
2944  LyX.
2945  LyX looks for translated versions as 
2946 \begin_inset Flex CharStyle:Code
2947 status collapsed
2948
2949 \begin_layout Plain Layout
2950 LyXDir/doc/xx/DocName.lyx
2951 \end_layout
2952
2953 \end_inset
2954
2955 , where 
2956 \begin_inset Flex CharStyle:Code
2957 status collapsed
2958
2959 \begin_layout Plain Layout
2960 xx
2961 \end_layout
2962
2963 \end_inset
2964
2965  is the code for the language currently in use.
2966  If there are no translated documents, the default English versions will
2967  be displayed.
2968  Note that the translated versions must have the same filenames (
2969 \begin_inset Flex CharStyle:Code
2970 status collapsed
2971
2972 \begin_layout Plain Layout
2973 DocName
2974 \end_layout
2975
2976 \end_inset
2977
2978  above) as the original.
2979  If you feel up to translating the documentation (an excellent way to proof-read
2980  the original documentation by the way!), there are a few things you should
2981  do right away:
2982 \end_layout
2983
2984 \begin_layout Itemize
2985 Check out the documentation translation web page at 
2986 \begin_inset CommandInset href
2987 LatexCommand href
2988 name "http://www.lyx.org/Translation"
2989 target "http://www.lyx.org/Translation"
2990
2991 \end_inset
2992
2993 .
2994  That way, you can find out which (if any) documents have already been translate
2995 d into your language.
2996  You can also find out who (if anyone) is organizing the effort to translate
2997  the documentation into your language.
2998  If no one is organizing the effort, please let us know that you're interested.
2999 \end_layout
3000
3001 \begin_layout Standard
3002 Once you get to actually translating, here's a few hints for you that may
3003  save you trouble:
3004 \end_layout
3005
3006 \begin_layout Itemize
3007 Join the documentation team! There is information on how to do that in 
3008 \begin_inset Flex CharStyle:Code
3009 status collapsed
3010
3011 \begin_layout Plain Layout
3012 Intro.lyx
3013 \end_layout
3014
3015 \end_inset
3016
3017  (
3018 \begin_inset Flex CharStyle:MenuItem
3019 status collapsed
3020
3021 \begin_layout Plain Layout
3022 Help\SpecialChar \menuseparator
3023 Introduction
3024 \end_layout
3025
3026 \end_inset
3027
3028 ), which by the way is the first document you should translate.
3029 \end_layout
3030
3031 \begin_layout Itemize
3032 Learn the typographic conventions for the language you are translating to.
3033  Typography is an ancient art and over the centuries, a great variety of
3034  conventions have developed throughout different parts of the world.
3035  Also study the professional terminology amongst typographers in your country.
3036  Inventing your own terminology will only confuse the users.
3037  
3038 \emph on
3039 (Warning! Typography is addictive!)
3040 \end_layout
3041
3042 \begin_layout Itemize
3043 Make a copy of the document.
3044  This will be your working copy.
3045  You can use this as your personal translated help-file by placing it in
3046  your 
3047 \begin_inset Flex CharStyle:Code
3048 status collapsed
3049
3050 \begin_layout Plain Layout
3051 UserDir/doc/xx/
3052 \end_layout
3053
3054 \end_inset
3055
3056  directory.
3057 \end_layout
3058
3059 \begin_layout Itemize
3060 Sometimes the original document (from the LyX-team) will be updated.
3061  Use the source viewer at 
3062 \begin_inset CommandInset href
3063 LatexCommand href
3064 name "http://www.lyx.org/trac/timeline"
3065 target "http://www.lyx.org/trac/timeline"
3066
3067 \end_inset
3068
3069  to see what has been changed.
3070  That way you can easily see which parts of the translated document need
3071  to be updated.
3072 \end_layout
3073
3074 \begin_layout Standard
3075 If you ever find an error in the original document, fix it and notify the
3076  rest of the documentation team of the changes! (You didn't forget to join
3077  the documentation team, did you?)
3078 \end_layout
3079
3080 \begin_layout Standard
3081 \begin_inset Branch OutDated
3082 status collapsed
3083
3084 \begin_layout Section
3085 International Keyboard Support
3086 \end_layout
3087
3088 \begin_layout Standard
3089
3090 \emph on
3091 [Editor's Note: The following section is by
3092 \emph default
3093  
3094 \shape smallcaps
3095 \emph on
3096 Ivan Schreter
3097 \shape default
3098 .
3099  It needs to be fixed to conform to the new Documentation Style sheet and
3100  to make use of the new v1.0 features.
3101  The whole thing also needs to be merged with the section following it.-jw
3102  It may also be badly out of date.-rh (2008)]
3103 \end_layout
3104
3105 \begin_layout Subsection
3106 Defining Own Keymaps: Keymap File Format
3107 \end_layout
3108
3109 \begin_layout Standard
3110 Let's look at a keyboard definition file a little closer.
3111  It is a plain text file defining
3112 \end_layout
3113
3114 \begin_layout Itemize
3115 key-to-key or key-to-string translations
3116 \end_layout
3117
3118 \begin_layout Itemize
3119 dead keys
3120 \end_layout
3121
3122 \begin_layout Itemize
3123 dead keys exceptions
3124 \end_layout
3125
3126 \begin_layout Standard
3127 To define key-to-key or key-to-string translation, use this command:
3128 \end_layout
3129
3130 \begin_layout Quotation
3131 \begin_inset Flex CharStyle:Code
3132 status collapsed
3133
3134 \begin_layout Plain Layout
3135
3136 \backslash
3137 kmap
3138 \end_layout
3139
3140 \end_inset
3141
3142  
3143 \begin_inset Flex CharStyle:Code
3144 status collapsed
3145
3146 \begin_layout Plain Layout
3147 key
3148 \end_layout
3149
3150 \end_inset
3151
3152  outstring 
3153 \end_layout
3154
3155 \begin_layout Standard
3156 where 
3157 \begin_inset Flex CharStyle:Code
3158 status collapsed
3159
3160 \begin_layout Plain Layout
3161 key
3162 \end_layout
3163
3164 \end_inset
3165
3166  is the key to be translated and 
3167 \begin_inset Flex CharStyle:Code
3168 status collapsed
3169
3170 \begin_layout Plain Layout
3171 outstring
3172 \end_layout
3173
3174 \end_inset
3175
3176  is the string to be inserted into the document.
3177  To define dead keys, use:
3178 \end_layout
3179
3180 \begin_layout Quotation
3181 \begin_inset Flex CharStyle:Code
3182 status collapsed
3183
3184 \begin_layout Plain Layout
3185
3186 \backslash
3187 kmod
3188 \end_layout
3189
3190 \end_inset
3191
3192  
3193 \begin_inset Flex CharStyle:Code
3194 status collapsed
3195
3196 \begin_layout Plain Layout
3197 key
3198 \end_layout
3199
3200 \end_inset
3201
3202  deadkey
3203 \end_layout
3204
3205 \begin_layout Standard
3206 where 
3207 \begin_inset Flex CharStyle:Code
3208 status collapsed
3209
3210 \begin_layout Plain Layout
3211 key
3212 \end_layout
3213
3214 \end_inset
3215
3216  is a keyboard key and 
3217 \begin_inset Flex CharStyle:Code
3218 status collapsed
3219
3220 \begin_layout Plain Layout
3221 deadkey
3222 \end_layout
3223
3224 \end_inset
3225
3226  is dead key name.
3227  The following dead keys are supported (shortcut name is in parentheses):
3228 \end_layout
3229
3230 \begin_layout Quotation
3231
3232 \emph on
3233 Name
3234 \begin_inset space \hfill{}
3235 \end_inset
3236
3237 Example
3238 \end_layout
3239
3240 \begin_layout Quotation
3241 acute (acu)
3242 \begin_inset space \hfill{}
3243 \end_inset
3244
3245 áéíóú
3246 \end_layout
3247
3248 \begin_layout Quotation
3249 grave (gra)
3250 \begin_inset space \hfill{}
3251 \end_inset
3252
3253 àèìòù
3254 \end_layout
3255
3256 \begin_layout Quotation
3257 macron (mac)
3258 \begin_inset space \hfill{}
3259 \end_inset
3260
3261  ō
3262 \end_layout
3263
3264 \begin_layout Quotation
3265 tilde (til)
3266 \begin_inset space \hfill{}
3267 \end_inset
3268
3269 ñÑ
3270 \end_layout
3271
3272 \begin_layout Quotation
3273 underbar (underb)
3274 \begin_inset space \hfill{}
3275 \end_inset
3276
3277
3278 \begin_inset ERT
3279 status open
3280
3281 \begin_layout Plain Layout
3282
3283
3284 \backslash
3285 b o
3286 \end_layout
3287
3288 \end_inset
3289
3290
3291 \end_layout
3292
3293 \begin_layout Quotation
3294 cedilla (ced)
3295 \begin_inset space \hfill{}
3296 \end_inset
3297
3298 çÇ
3299 \end_layout
3300
3301 \begin_layout Quotation
3302 underdot (underd)
3303 \begin_inset space \hfill{}
3304 \end_inset
3305
3306
3307 \begin_inset ERT
3308 status open
3309
3310 \begin_layout Plain Layout
3311
3312
3313 \backslash
3314 d o
3315 \end_layout
3316
3317 \end_inset
3318
3319
3320 \end_layout
3321
3322 \begin_layout Quotation
3323 circumflex (circu)
3324 \begin_inset space \hfill{}
3325 \end_inset
3326
3327 âêîôû
3328 \end_layout
3329
3330 \begin_layout Quotation
3331 circle (circl)
3332 \begin_inset space \hfill{}
3333 \end_inset
3334
3335 ÅůŮ
3336 \end_layout
3337
3338 \begin_layout Quotation
3339 tie (tie)
3340 \begin_inset space \hfill{}
3341 \end_inset
3342
3343
3344 \begin_inset ERT
3345 status open
3346
3347 \begin_layout Plain Layout
3348
3349
3350 \backslash
3351 t o
3352 \end_layout
3353
3354 \end_inset
3355
3356
3357 \end_layout
3358
3359 \begin_layout Quotation
3360 breve (bre)
3361 \begin_inset space \hfill{}
3362 \end_inset
3363
3364 ă
3365 \begin_inset ERT
3366 status open
3367
3368 \begin_layout Plain Layout
3369
3370
3371 \backslash
3372 u o
3373 \end_layout
3374
3375 \end_inset
3376
3377
3378 \end_layout
3379
3380 \begin_layout Quotation
3381 caron (car)
3382 \begin_inset space \hfill{}
3383 \end_inset
3384
3385 čšž
3386 \end_layout
3387
3388 \begin_layout Quotation
3389 hungarian umlaut (hug)
3390 \begin_inset space \hfill{}
3391 \end_inset
3392
3393 őű
3394 \end_layout
3395
3396 \begin_layout Quotation
3397 umlaut (uml)
3398 \begin_inset space \hfill{}
3399 \end_inset
3400
3401 äöü
3402 \end_layout
3403
3404 \begin_layout Quotation
3405 dot (dot)
3406 \begin_inset space \hfill{}
3407 \end_inset
3408
3409 ż
3410 \begin_inset ERT
3411 status open
3412
3413 \begin_layout Plain Layout
3414
3415
3416 \backslash
3417 .s
3418 \end_layout
3419
3420 \end_inset
3421
3422
3423 \end_layout
3424
3425 \begin_layout Standard
3426 Since in many international keyboards there are exceptions to what some
3427  dead keys should do, you can define them using
3428 \end_layout
3429
3430 \begin_layout Quotation
3431 \begin_inset Flex CharStyle:Code
3432 status collapsed
3433
3434 \begin_layout Plain Layout
3435
3436 \backslash
3437 kxmod
3438 \end_layout
3439
3440 \end_inset
3441
3442  deadkey key outstring
3443 \end_layout
3444
3445 \begin_layout Standard
3446 For example, on Slovak keyboard, if you enter caron-o, it generates circumflex-o
3447 , so you put in
3448 \end_layout
3449
3450 \begin_layout Quotation
3451 \begin_inset Flex CharStyle:Code
3452 status collapsed
3453
3454 \begin_layout Plain Layout
3455
3456 \backslash
3457 kxmod
3458 \end_layout
3459
3460 \end_inset
3461
3462  caron o "
3463 \backslash
3464 ^o"
3465 \end_layout
3466
3467 \begin_layout Standard
3468 to make it work correctly.
3469  Also, you have to define as exceptions dead keys over i and j, to remove
3470  the dot from them before inserting an accent mark.
3471  I will change this when the time comes, but so far I haven't had time.
3472 \end_layout
3473
3474 \begin_layout Standard
3475 Oh, and about characters: backslash is escaped, so to enter it, you'll need
3476  double backslash.
3477  Also, quotes and 
3478 \begin_inset Flex CharStyle:Code
3479 status collapsed
3480
3481 \begin_layout Plain Layout
3482 #
3483 \end_layout
3484
3485 \end_inset
3486
3487  have different meaning.
3488  
3489 \begin_inset Flex CharStyle:Code
3490 status collapsed
3491
3492 \begin_layout Plain Layout
3493 #
3494 \end_layout
3495
3496 \end_inset
3497
3498  marks comments, quotes start and end LaTeX-style commands.
3499  To enter quote, you'll need to use 
3500 \begin_inset Flex CharStyle:Code
3501 status collapsed
3502
3503 \begin_layout Plain Layout
3504
3505 \backslash
3506 "
3507 \end_layout
3508
3509 \end_inset
3510
3511 , to enter 
3512 \begin_inset Flex CharStyle:Code
3513 status collapsed
3514
3515 \begin_layout Plain Layout
3516 #
3517 \end_layout
3518
3519 \end_inset
3520
3521 , use 
3522 \begin_inset Flex CharStyle:Code
3523 status collapsed
3524
3525 \begin_layout Plain Layout
3526
3527 \backslash
3528 #
3529 \end_layout
3530
3531 \end_inset
3532
3533 .
3534 \end_layout
3535
3536 \begin_layout Standard
3537 If you make a keyboard description file that works for your language, please
3538  mail it to me, so I can include it in the next keymap distribution.
3539 \end_layout
3540
3541 \begin_layout Standard
3542 More keywords will be supported in keymap configuration file in future,
3543  like
3544 \end_layout
3545
3546 \begin_layout Itemize
3547 \begin_inset Flex CharStyle:Code
3548 status collapsed
3549
3550 \begin_layout Plain Layout
3551
3552 \backslash
3553 kinclude filename
3554 \end_layout
3555
3556 \end_inset
3557
3558
3559 \emph on
3560
3561 \begin_inset space \hfill{}
3562 \end_inset
3563
3564
3565 \begin_inset Flex CharStyle:Code
3566 status collapsed
3567
3568 \begin_layout Plain Layout
3569 include
3570 \end_layout
3571
3572 \end_inset
3573
3574  another file
3575 \end_layout
3576
3577 \begin_layout Itemize
3578 \begin_inset Flex CharStyle:Code
3579 status collapsed
3580
3581 \begin_layout Plain Layout
3582
3583 \backslash
3584 kprog program
3585 \end_layout
3586
3587 \end_inset
3588
3589
3590 \emph on
3591
3592 \begin_inset space \hfill{}
3593 \end_inset
3594
3595
3596 \begin_inset Flex CharStyle:Code
3597 status collapsed
3598
3599 \begin_layout Plain Layout
3600 define
3601 \end_layout
3602
3603 \end_inset
3604
3605  an external keymap translation program 
3606 \end_layout
3607
3608 \begin_layout Standard
3609 Also, it should look into 
3610 \begin_inset Flex CharStyle:Code
3611 status collapsed
3612
3613 \begin_layout Plain Layout
3614 lyxrc
3615 \end_layout
3616
3617 \end_inset
3618
3619  file for defaults, too (for example, a 
3620 \begin_inset Flex CharStyle:Code
3621 status collapsed
3622
3623 \begin_layout Plain Layout
3624
3625 \backslash
3626 kinclude
3627 \end_layout
3628
3629 \end_inset
3630
3631  option to include default keyboard).
3632 \end_layout
3633
3634 \end_inset
3635
3636
3637 \end_layout
3638
3639 \begin_layout Section
3640 International Keymap Stuff
3641 \begin_inset CommandInset label
3642 LatexCommand label
3643 name "sec:International-Keymap-Stuff"
3644
3645 \end_inset
3646
3647
3648 \end_layout
3649
3650 \begin_layout Standard
3651 \begin_inset Note Note
3652 status open
3653
3654 \begin_layout Plain Layout
3655 In doing the revisions on this document in March 2008, I did not look over
3656  this stuff, as I do not understand it.
3657  It would be good if someone else could do so.
3658  (RH)
3659 \end_layout
3660
3661 \end_inset
3662
3663
3664 \end_layout
3665
3666 \begin_layout Standard
3667 The next two sections describe the 
3668 \begin_inset Flex CharStyle:Code
3669 status collapsed
3670
3671 \begin_layout Plain Layout
3672
3673 \shape up
3674 .kmap
3675 \end_layout
3676
3677 \end_inset
3678
3679  and 
3680 \begin_inset Flex CharStyle:Code
3681 status collapsed
3682
3683 \begin_layout Plain Layout
3684
3685 \shape up
3686 .cdef
3687 \end_layout
3688
3689 \end_inset
3690
3691  file syntax in detail.
3692  These sections should help you design your own key map if the ones provided
3693  do not meet your needs.
3694 \end_layout
3695
3696 \begin_layout Subsection
3697 The .kmap File
3698 \end_layout
3699
3700 \begin_layout Standard
3701
3702 \shape up
3703 .
3704 \begin_inset Flex CharStyle:Code
3705 status collapsed
3706
3707 \begin_layout Plain Layout
3708 kmap
3709 \end_layout
3710
3711 \end_inset
3712
3713  file maps keystrokes to characters or strings.
3714  As the name suggests, it sets a keyboard mapping.
3715  The 
3716 \begin_inset Flex CharStyle:Code
3717 status collapsed
3718
3719 \begin_layout Plain Layout
3720 .kmap
3721 \end_layout
3722
3723 \end_inset
3724
3725
3726 \shape default
3727  file keywords 
3728 \shape up
3729
3730 \begin_inset Flex CharStyle:Code
3731 status collapsed
3732
3733 \begin_layout Plain Layout
3734
3735 \shape up
3736 kmap
3737 \end_layout
3738
3739 \end_inset
3740
3741
3742 \shape default
3743 ,
3744 \shape up
3745  
3746 \shape default
3747
3748 \begin_inset Flex CharStyle:Code
3749 status collapsed
3750
3751 \begin_layout Plain Layout
3752
3753 \shape up
3754 kmod
3755 \end_layout
3756
3757 \end_inset
3758
3759 ,
3760 \shape up
3761  
3762 \shape default
3763
3764 \begin_inset Flex CharStyle:Code
3765 status collapsed
3766
3767 \begin_layout Plain Layout
3768
3769 \shape up
3770 ksmod
3771 \end_layout
3772
3773 \end_inset
3774
3775 , and 
3776 \begin_inset Flex CharStyle:Code
3777 status collapsed
3778
3779 \begin_layout Plain Layout
3780
3781 \shape up
3782 kcomb
3783 \end_layout
3784
3785 \end_inset
3786
3787  are described in this section.
3788 \end_layout
3789
3790 \begin_layout Labeling
3791 \labelwidthstring 00.00.0000
3792 \begin_inset Flex CharStyle:Code
3793 status collapsed
3794
3795 \begin_layout Plain Layout
3796
3797 \shape up
3798 kmap
3799 \end_layout
3800
3801 \end_inset
3802
3803  Map a character to a string
3804 \end_layout
3805
3806 \begin_layout LyX-Code
3807
3808 \backslash
3809 kmap 
3810 \family roman
3811 \emph on
3812 char
3813 \family default
3814 \emph default
3815  
3816 \family roman
3817 \emph on
3818 string
3819 \end_layout
3820
3821 \begin_layout Standard
3822 This will ma
3823 \family roman
3824 p
3825 \family default
3826  
3827 \family roman
3828 \emph on
3829 char
3830 \family default
3831 \emph default
3832  
3833 \family roman
3834 to
3835 \family default
3836  
3837 \family roman
3838 \emph on
3839 string
3840 \emph default
3841 .
3842  Note that in
3843 \family default
3844  
3845 \family roman
3846 \emph on
3847 string
3848 \emph default
3849 ,
3850 \family default
3851  
3852 \family roman
3853 \shape up
3854 the double-quote (")
3855 \family default
3856 \shape default
3857  
3858 \family roman
3859 and
3860 \family default
3861  
3862 \family roman
3863 \shape up
3864 the backslash (
3865 \backslash
3866 )
3867 \family default
3868 \shape default
3869  
3870 \family roman
3871 must be escaped with a preceding backslash (
3872 \shape up
3873
3874 \backslash
3875
3876 \shape default
3877 )
3878 \family default
3879 .
3880 \end_layout
3881
3882 \begin_layout Standard
3883 An example of a 
3884 \begin_inset Flex CharStyle:MenuItem
3885 status collapsed
3886
3887 \begin_layout Plain Layout
3888
3889 \shape up
3890 kmap
3891 \end_layout
3892
3893 \end_inset
3894
3895  statement to cause the symbol 
3896 \begin_inset Flex CharStyle:MenuItem
3897 status collapsed
3898
3899 \begin_layout Plain Layout
3900
3901 \shape up
3902 /
3903 \end_layout
3904
3905 \end_inset
3906
3907  to be output for the keystroke 
3908 \begin_inset Flex CharStyle:MenuItem
3909 status collapsed
3910
3911 \begin_layout Plain Layout
3912
3913 \shape up
3914 &
3915 \end_layout
3916
3917 \end_inset
3918
3919  is:
3920 \end_layout
3921
3922 \begin_layout LyX-Code
3923
3924 \backslash
3925 kmap & /
3926 \end_layout
3927
3928 \begin_layout Labeling
3929 \labelwidthstring 00.00.0000
3930 \begin_inset Flex CharStyle:Code
3931 status collapsed
3932
3933 \begin_layout Plain Layout
3934
3935 \shape up
3936 kmod
3937 \end_layout
3938
3939 \end_inset
3940
3941  Specify an accent character
3942 \end_layout
3943
3944 \begin_layout LyX-Code
3945
3946 \backslash
3947 kmod 
3948 \family roman
3949 \emph on
3950 char accent allowed
3951 \end_layout
3952
3953 \begin_layout Standard
3954 This will make the cha
3955 \family roman
3956 racter
3957 \family default
3958  
3959 \family roman
3960 \emph on
3961 char
3962 \family default
3963 \emph default
3964  
3965 \family roman
3966 \shape up
3967 \emph on
3968 be an accent
3969 \family default
3970 \shape default
3971 \emph default
3972  
3973 \family roman
3974 \shape up
3975 on the
3976 \family default
3977 \shape default
3978  
3979 \family roman
3980 \shape up
3981 \emph on
3982 allowed
3983 \family default
3984 \shape default
3985 \emph default
3986  
3987 \family roman
3988 \shape up
3989 cha
3990 \family default
3991 racter(s).
3992  This is the dead key
3993 \begin_inset Foot
3994 status collapsed
3995
3996 \begin_layout Plain Layout
3997 The term 
3998 \family roman
3999 \emph on
4000 dead key
4001 \family default
4002 \emph default
4003  refers to a key that does not produce a character by itself, but when followed
4004  with another key, produces the desired accent character.
4005  For example, a German characte
4006 \family roman
4007 r with an umlaut like
4008 \family default
4009  
4010 \family roman
4011 \emph on
4012 ä
4013 \family default
4014 \emph default
4015  
4016 \family roman
4017 can be produced in this manner.
4018 \end_layout
4019
4020 \end_inset
4021
4022  mechanism.
4023  
4024 \end_layout
4025
4026 \begin_layout Standard
4027 If you 
4028 \family roman
4029 hit
4030 \family default
4031  
4032 \family roman
4033 \emph on
4034 char
4035 \family default
4036 \emph default
4037  
4038 \family roman
4039 and then another key not in
4040 \family default
4041  
4042 \family roman
4043 \emph on
4044 allowed
4045 \emph default
4046 , you will get a
4047 \family default
4048  
4049 \family roman
4050 \emph on
4051 char
4052 \family default
4053 \emph default
4054  
4055 \family roman
4056 followed by the other, not allowed key, as output.
4057
4058 \family default
4059  Note that a 
4060 \begin_inset Flex CharStyle:MenuItem
4061 status collapsed
4062
4063 \begin_layout Plain Layout
4064
4065 \shape up
4066 Backspace
4067 \end_layout
4068
4069 \end_inset
4070
4071  cancels a dead key, so if 
4072 \family roman
4073 you hit
4074 \family default
4075  
4076 \family roman
4077 \emph on
4078 char
4079 \family default
4080 \emph default
4081  
4082 \begin_inset Flex CharStyle:MenuItem
4083 status collapsed
4084
4085 \begin_layout Plain Layout
4086
4087 \shape up
4088 \emph on
4089 Backspace
4090 \end_layout
4091
4092 \end_inset
4093
4094 , the cursor will not go one position backwards but will instead cancel
4095  the effect t
4096 \family roman
4097 hat
4098 \family default
4099  
4100 \family roman
4101 \shape up
4102 \emph on
4103 char
4104 \family default
4105 \shape default
4106 \emph default
4107  
4108 \family roman
4109 \shape up
4110 might have had on the next keystroke.
4111  
4112 \end_layout
4113
4114 \begin_layout Standard
4115 The following example specifies that the character ' is to be an acute accent,
4116  allowed on the characters a, e, i, o, u, A, E, I, O, and U:
4117 \end_layout
4118
4119 \begin_layout LyX-Code
4120
4121 \backslash
4122 kmod ' acute aeiouAEIOU
4123 \end_layout
4124
4125 \begin_layout Labeling
4126 \labelwidthstring 00.00.0000
4127 \begin_inset Flex CharStyle:Code
4128 status collapsed
4129
4130 \begin_layout Plain Layout
4131 ksmod
4132 \end_layout
4133
4134 \end_inset
4135
4136  Specify an exception to the accent character
4137 \end_layout
4138
4139 \begin_layout LyX-Code
4140
4141 \backslash
4142 kxmod  
4143 \family roman
4144 \emph on
4145 accent char result
4146 \end_layout
4147
4148 \begin_layout Standard
4149 This defines an exce
4150 \family roman
4151 ption for
4152 \family default
4153  
4154 \family roman
4155 \emph on
4156 accent
4157 \family default
4158 \emph default
4159  
4160 \family roman
4161 on
4162 \family default
4163  
4164 \family roman
4165 \emph on
4166 char
4167 \emph default
4168 .
4169  T
4170 \shape up
4171 he
4172 \family default
4173 \shape default
4174  
4175 \family roman
4176 \shape up
4177 \emph on
4178 accent
4179 \family default
4180 \shape default
4181 \emph default
4182  
4183 \family roman
4184 \shape up
4185 must
4186 \family default
4187 \shape default
4188  
4189 \shape up
4190 have been assigned a keystroke with a previous
4191 \shape default
4192  
4193 \begin_inset Flex CharStyle:Code
4194 status collapsed
4195
4196 \begin_layout Plain Layout
4197
4198 \shape up
4199
4200 \backslash
4201 kmo
4202 \shape default
4203 d
4204 \end_layout
4205
4206 \end_inset
4207
4208  declar
4209 \family roman
4210 ation and
4211 \family default
4212  
4213 \family roman
4214 \emph on
4215 char
4216 \family default
4217 \emph default
4218  
4219 \family roman
4220 must not belong in the
4221 \family default
4222  
4223 \family roman
4224 \emph on
4225 allowed
4226 \family default
4227 \emph default
4228  
4229 \family roman
4230 set of
4231 \family default
4232  
4233 \family roman
4234 \emph on
4235 accent
4236 \emph default
4237 .
4238  When
4239 \family default
4240  
4241 \family roman
4242 \shape up
4243 you enter the
4244 \family default
4245 \shape default
4246  
4247 \family roman
4248 \shape up
4249 \emph on
4250 accent char
4251 \family default
4252 \shape default
4253 \emph default
4254  
4255 \family roman
4256 \shape up
4257 sequence,
4258 \family default
4259 \shape default
4260  
4261 \family roman
4262 \shape up
4263 \emph on
4264 result
4265 \emph default
4266  is produced.
4267  If such a declaration does not exist in
4268 \family default
4269 \shape default
4270  
4271 \shape up
4272 the
4273 \shape default
4274  
4275 \begin_inset Flex CharStyle:Code
4276 status collapsed
4277
4278 \begin_layout Plain Layout
4279
4280 \shape up
4281 .kmap
4282 \end_layout
4283
4284 \end_inset
4285
4286  file and yo
4287 \family roman
4288 u enter
4289 \family default
4290  
4291 \family roman
4292 \emph on
4293 accent char
4294 \emph default
4295 , you get
4296 \family default
4297  
4298 \family roman
4299 \emph on
4300 accent_key char
4301 \emph default
4302  where
4303 \family default
4304  
4305 \family roman
4306 \emph on
4307 accent_key
4308 \emph default
4309  is the first arg
4310 \family default
4311 ument of the 
4312 \begin_inset Flex CharStyle:Code
4313 status collapsed
4314
4315 \begin_layout Plain Layout
4316
4317 \shape up
4318
4319 \backslash
4320 kmod
4321 \end_layout
4322
4323 \end_inset
4324
4325  declaration.
4326  
4327 \end_layout
4328
4329 \begin_layout Standard
4330 The following command produces causes äi to be produced when you enter acute-i
4331  ('i):
4332 \end_layout
4333
4334 \begin_layout LyX-Code
4335
4336 \backslash
4337 kxmod acute i "
4338 \backslash
4339
4340 \backslash
4341 '{
4342 \backslash
4343
4344 \backslash
4345 i}"
4346 \end_layout
4347
4348 \begin_layout Labeling
4349 \labelwidthstring 00.00.0000
4350 \begin_inset Flex CharStyle:Code
4351 status collapsed
4352
4353 \begin_layout Plain Layout
4354 kcomb
4355 \end_layout
4356
4357 \end_inset
4358
4359  Combine two accent characters
4360 \end_layout
4361
4362 \begin_layout LyX-Code
4363
4364 \backslash
4365 kcomb 
4366 \family roman
4367 \emph on
4368 accent1 accent2 allowed
4369 \end_layout
4370
4371 \begin_layout Standard
4372 This one is getting pretty esoteric.
4373  It allows you to combine the effect 
4374 \family roman
4375 of
4376 \family default
4377  
4378 \family roman
4379 \emph on
4380 accent1
4381 \family default
4382 \emph default
4383  
4384 \family roman
4385 and
4386 \family default
4387  
4388 \family roman
4389 \emph on
4390 accent2
4391 \family default
4392 \emph default
4393  
4394 \family roman
4395 (in that order!) on
4396 \family default
4397  
4398 \family roman
4399 \emph on
4400 allowed
4401 \family default
4402 \emph default
4403  
4404 \family roman
4405 chars.
4406  The keystrokes for
4407 \family default
4408  
4409 \family roman
4410 \emph on
4411 accent1
4412 \family default
4413 \emph default
4414  
4415 \family roman
4416 and
4417 \family default
4418  
4419 \family roman
4420 \emph on
4421 accent2
4422 \family default
4423 \emph default
4424  
4425 \family roman
4426 must have be
4427 \family default
4428 en set with a 
4429 \begin_inset Flex CharStyle:Code
4430 status collapsed
4431
4432 \begin_layout Plain Layout
4433
4434 \shape up
4435
4436 \backslash
4437 kmod
4438 \end_layout
4439
4440 \end_inset
4441
4442  command at 
4443 \family roman
4444 a
4445 \family default
4446  
4447 \family roman
4448 \emph on
4449 previous
4450 \family default
4451 \emph default
4452  
4453 \family roman
4454 point in the
4455 \family default
4456  file.
4457  
4458 \end_layout
4459
4460 \begin_layout Standard
4461 Consider this example from the 
4462 \begin_inset Flex CharStyle:Code
4463 status collapsed
4464
4465 \begin_layout Plain Layout
4466
4467 \shape up
4468 greek.kmap
4469 \end_layout
4470
4471 \end_inset
4472
4473  file:
4474 \end_layout
4475
4476 \begin_layout LyX-Code
4477
4478 \backslash
4479 kmod ; acute aeioyvhAEIOYVH 
4480 \backslash
4481 kmod : umlaut iyIY 
4482 \backslash
4483 kcomb acute umlaut iyIY
4484 \end_layout
4485
4486 \begin_layout Standard
4487 This allows you to press 
4488 \begin_inset Flex CharStyle:MenuItem
4489 status collapsed
4490
4491 \begin_layout Plain Layout
4492
4493 \shape up
4494 ;:i
4495 \end_layout
4496
4497 \end_inset
4498
4499  and get the effect of 
4500 \begin_inset Flex CharStyle:Code
4501 status collapsed
4502
4503 \begin_layout Plain Layout
4504
4505 \shape up
4506
4507 \backslash
4508 '{
4509 \backslash
4510 "{i}}
4511 \end_layout
4512
4513 \end_inset
4514
4515 .
4516  
4517 \family roman
4518 \shape up
4519 A backspace
4520 \family default
4521 \shape default
4522  in this case cancels the last dead key, so if you press 
4523 \begin_inset Flex CharStyle:MenuItem
4524 status collapsed
4525
4526 \begin_layout Plain Layout
4527
4528 \shape up
4529 ;: Backspace i
4530 \end_layout
4531
4532 \end_inset
4533
4534  you get 
4535 \begin_inset Flex CharStyle:Code
4536 status collapsed
4537
4538 \begin_layout Plain Layout
4539
4540 \shape up
4541
4542 \backslash
4543 '{i}
4544 \end_layout
4545
4546 \end_inset
4547
4548 .
4549 \end_layout
4550
4551 \begin_layout Subsection
4552 The .cdef File
4553 \end_layout
4554
4555 \begin_layout Standard
4556 After the 
4557 \begin_inset Flex CharStyle:Code
4558 status collapsed
4559
4560 \begin_layout Plain Layout
4561
4562 \shape up
4563 .kmap
4564 \end_layout
4565
4566 \end_inset
4567
4568  mapping is performed, a 
4569 \begin_inset Flex CharStyle:Code
4570 status collapsed
4571
4572 \begin_layout Plain Layout
4573
4574 \shape up
4575 .cde
4576 \shape default
4577 f
4578 \end_layout
4579
4580 \end_inset
4581
4582  file maps the strings that the symbols generate to characters in the current
4583  font.
4584  The LyX distribution currently includes at least the 
4585 \begin_inset Flex CharStyle:Code
4586 status collapsed
4587
4588 \begin_layout Plain Layout
4589
4590 \shape up
4591 iso8859-1.cdef
4592 \end_layout
4593
4594 \end_inset
4595
4596  and 
4597 \begin_inset Flex CharStyle:Code
4598 status collapsed
4599
4600 \begin_layout Plain Layout
4601
4602 \shape up
4603 iso8859-2.cdef
4604 \end_layout
4605
4606 \end_inset
4607
4608  files.
4609 \end_layout
4610
4611 \begin_layout Standard
4612 In general the 
4613 \begin_inset Flex CharStyle:Code
4614 status collapsed
4615
4616 \begin_layout Plain Layout
4617
4618 \shape up
4619 .cdef
4620 \end_layout
4621
4622 \end_inset
4623
4624  file is a sequence of declarations of the form
4625 \end_layout
4626
4627 \begin_layout LyX-Code
4628
4629 \family roman
4630 \emph on
4631 char_index_in_set
4632 \family default
4633 \emph default
4634  
4635 \family roman
4636 \emph on
4637  string
4638 \end_layout
4639
4640 \begin_layout Standard
4641 For example, in order to map 
4642 \begin_inset Flex CharStyle:MenuItem
4643 status collapsed
4644
4645 \begin_layout Plain Layout
4646
4647 \shape up
4648
4649 \backslash
4650 '{e}
4651 \end_layout
4652
4653 \end_inset
4654
4655  to the corresponding character in the iso-8859-1 set (233), the following
4656  declaration is used
4657 \end_layout
4658
4659 \begin_layout LyX-Code
4660 233 "
4661 \backslash
4662
4663 \backslash
4664 '{e}"
4665 \end_layout
4666
4667 \begin_layout Standard
4668 with 
4669 \begin_inset Flex CharStyle:Code
4670 status collapsed
4671
4672 \begin_layout Plain Layout
4673
4674 \backslash
4675
4676 \end_layout
4677
4678 \end_inset
4679
4680  and 
4681 \begin_inset Flex CharStyle:Code
4682 status collapsed
4683
4684 \begin_layout Plain Layout
4685 "
4686 \end_layout
4687
4688 \end_inset
4689
4690  being escap
4691 \family roman
4692 ed in
4693 \family default
4694  
4695 \family roman
4696 \emph on
4697 string
4698 \emph default
4699 .
4700  Note that
4701 \family default
4702  the same character can apply to more than one string.
4703  In the 
4704 \begin_inset Flex CharStyle:Code
4705 status collapsed
4706
4707 \begin_layout Plain Layout
4708 i
4709 \shape up
4710 so-8859-7.cdef
4711 \end_layout
4712
4713 \end_inset
4714
4715  file you have
4716 \end_layout
4717
4718 \begin_layout LyX-Code
4719 192 "
4720 \backslash
4721
4722 \backslash
4723 '{
4724 \backslash
4725
4726 \backslash
4727
4728 \backslash
4729 "{i}}"
4730 \begin_inset Newline newline
4731 \end_inset
4732
4733 192 "
4734 \backslash
4735
4736 \backslash
4737
4738 \backslash
4739 "{
4740 \backslash
4741
4742 \backslash
4743 '{i}}"
4744 \end_layout
4745
4746 \begin_layout Standard
4747 If LyX cannot find a mapping for the string produced by the keystroke or
4748  a deadkey sequence, it will check if it looks like an accented char and
4749  try to draw an accent over the character on screen.
4750 \end_layout
4751
4752 \begin_layout Subsection
4753 Dead Keys
4754 \end_layout
4755
4756 \begin_layout Standard
4757 There is a second way to add support for international characters through
4758  so-called dead-keys.
4759  A dead-key works in combination with a letter to produce an accented character.
4760  Here, we'll explain how to create a really simple dead-key to illustrate
4761  how they work.
4762 \end_layout
4763
4764 \begin_layout Standard
4765 Suppose you happen to need the circumflex character, 
4766 \begin_inset Quotes eld
4767 \end_inset
4768
4769  ̂
4770 \begin_inset Quotes erd
4771 \end_inset
4772
4773 .
4774  You could bind the 
4775 \begin_inset Flex CharStyle:MenuItem
4776 status collapsed
4777
4778 \begin_layout Plain Layout
4779 ^
4780 \end_layout
4781
4782 \end_inset
4783
4784 -key [a.k.a.
4785 \begin_inset space ~
4786 \end_inset
4787
4788
4789 \begin_inset Flex CharStyle:MenuItem
4790 status collapsed
4791
4792 \begin_layout Plain Layout
4793 Shift-6
4794 \end_layout
4795
4796 \end_inset
4797
4798 ] to the LyX command 
4799 \begin_inset Flex CharStyle:Code
4800 status collapsed
4801
4802 \begin_layout Plain Layout
4803 accent-circumflex
4804 \end_layout
4805
4806 \end_inset
4807
4808  in your 
4809 \begin_inset Flex CharStyle:Code
4810 status collapsed
4811
4812 \begin_layout Plain Layout
4813 lyxrc
4814 \end_layout
4815
4816 \end_inset
4817
4818  file.
4819  Now, whenever you type the 
4820 \begin_inset Flex CharStyle:MenuItem
4821 status collapsed
4822
4823 \begin_layout Plain Layout
4824 ^
4825 \end_layout
4826
4827 \end_inset
4828
4829 -key followed by a letter, that letter will have a circumflex accent on
4830  it.
4831  For example, the sequence 
4832 \begin_inset Quotes eld
4833 \end_inset
4834
4835
4836 \begin_inset Flex CharStyle:MenuItem
4837 status collapsed
4838
4839 \begin_layout Plain Layout
4840 ^e
4841 \end_layout
4842
4843 \end_inset
4844
4845
4846 \begin_inset Quotes erd
4847 \end_inset
4848
4849  produces the letter: 
4850 \begin_inset Quotes eld
4851 \end_inset
4852
4853 ê
4854 \begin_inset Quotes erd
4855 \end_inset
4856
4857 .
4858  If you tried to type 
4859 \begin_inset Quotes eld
4860 \end_inset
4861
4862
4863 \begin_inset Flex CharStyle:MenuItem
4864 status collapsed
4865
4866 \begin_layout Plain Layout
4867 ^t
4868 \end_layout
4869
4870 \end_inset
4871
4872
4873 \begin_inset Quotes erd
4874 \end_inset
4875
4876 , however, LyX will complain with a beep, since a 
4877 \begin_inset Quotes eld
4878 \end_inset
4879
4880
4881 \begin_inset Flex CharStyle:MenuItem
4882 status collapsed
4883
4884 \begin_layout Plain Layout
4885 t
4886 \end_layout
4887
4888 \end_inset
4889
4890
4891 \begin_inset Quotes erd
4892 \end_inset
4893
4894  never takes a circumflex accent.
4895  Hitting 
4896 \begin_inset Flex CharStyle:MenuItem
4897 status collapsed
4898
4899 \begin_layout Plain Layout
4900 Space
4901 \end_layout
4902
4903 \end_inset
4904
4905  after a dead-key produces the bare-accent.
4906  Please note this last point! If you bind a key to a dead-key, you'll need
4907  to rebind the character on that key to yet another key.
4908  Binding the 
4909 \begin_inset Flex CharStyle:MenuItem
4910 status collapsed
4911
4912 \begin_layout Plain Layout
4913 ,-key
4914 \end_layout
4915
4916 \end_inset
4917
4918  to a cedilla is a bad idea, since you'll only get cedillas instead of commas.
4919 \end_layout
4920
4921 \begin_layout Standard
4922 One common way to bind dead-keys is to use 
4923 \begin_inset Flex CharStyle:MenuItem
4924 status collapsed
4925
4926 \begin_layout Plain Layout
4927 Meta-
4928 \end_layout
4929
4930 \end_inset
4931
4932
4933 \begin_inset Flex CharStyle:MenuItem
4934 status collapsed
4935
4936 \begin_layout Plain Layout
4937 Ctrl-
4938 \end_layout
4939
4940 \end_inset
4941
4942 , and 
4943 \begin_inset Flex CharStyle:MenuItem
4944 status collapsed
4945
4946 \begin_layout Plain Layout
4947 Shift-
4948 \end_layout
4949
4950 \end_inset
4951
4952  in combination with an accent, like 
4953 \begin_inset Quotes eld
4954 \end_inset
4955
4956
4957 \begin_inset Flex CharStyle:MenuItem
4958 status collapsed
4959
4960 \begin_layout Plain Layout
4961 ~
4962 \end_layout
4963
4964 \end_inset
4965
4966
4967 \begin_inset Quotes erd
4968 \end_inset
4969
4970  or 
4971 \begin_inset Quotes eld
4972 \end_inset
4973
4974
4975 \begin_inset Flex CharStyle:MenuItem
4976 status collapsed
4977
4978 \begin_layout Plain Layout
4979 ,
4980 \end_layout
4981
4982 \end_inset
4983
4984
4985 \begin_inset Quotes erd
4986 \end_inset
4987
4988  or 
4989 \begin_inset Quotes eld
4990 \end_inset
4991
4992
4993 \begin_inset Flex CharStyle:MenuItem
4994 status collapsed
4995
4996 \begin_layout Plain Layout
4997 ^
4998 \end_layout
4999
5000 \end_inset
5001
5002
5003 \begin_inset Quotes erd
5004 \end_inset
5005
5006 .
5007  Another way involves using 
5008 \begin_inset Flex CharStyle:Code
5009 status collapsed
5010
5011 \begin_layout Plain Layout
5012 xmodmap
5013 \end_layout
5014
5015 \end_inset
5016
5017  and 
5018 \begin_inset Flex CharStyle:Code
5019 status collapsed
5020
5021 \begin_layout Plain Layout
5022 xkeycaps
5023 \end_layout
5024
5025 \end_inset
5026
5027  to set up the special 
5028 \begin_inset Flex CharStyle:Code
5029 status collapsed
5030
5031 \begin_layout Plain Layout
5032 Mode_Switch
5033 \end_layout
5034
5035 \end_inset
5036
5037  key.
5038  The 
5039 \begin_inset Flex CharStyle:Code
5040 status collapsed
5041
5042 \begin_layout Plain Layout
5043 Mode_Switch
5044 \end_layout
5045
5046 \end_inset
5047
5048  acts in some ways just like 
5049 \begin_inset Flex CharStyle:MenuItem
5050 status collapsed
5051
5052 \begin_layout Plain Layout
5053 Shift
5054 \end_layout
5055
5056 \end_inset
5057
5058  and permits you to bind keys to accented characters.
5059  You can also turn keys into dead-keys by binding them to something like
5060  
5061 \begin_inset Flex CharStyle:Code
5062 status collapsed
5063
5064 \begin_layout Plain Layout
5065 usldead_cedilla
5066 \end_layout
5067
5068 \end_inset
5069
5070  and then binding this symbolic key to the corresponding LyX command.
5071 \begin_inset Foot
5072 status collapsed
5073
5074 \begin_layout Plain Layout
5075 Note from 
5076 \noun on
5077 John Weiss
5078 \noun default
5079 : This is exactly what I do in my 
5080 \begin_inset Flex CharStyle:Code
5081 status collapsed
5082
5083 \begin_layout Plain Layout
5084 ~/.lyx/lyxrc
5085 \end_layout
5086
5087 \end_inset
5088
5089  and my 
5090 \begin_inset Flex CharStyle:Code
5091 status collapsed
5092
5093 \begin_layout Plain Layout
5094 ~/.xmodmap
5095 \end_layout
5096
5097 \end_inset
5098
5099  files.
5100  I have my 
5101 \begin_inset Flex CharStyle:MenuItem
5102 status collapsed
5103
5104 \begin_layout Plain Layout
5105 Scroll
5106 \begin_inset space ~
5107 \end_inset
5108
5109 Lock
5110 \end_layout
5111
5112 \end_inset
5113
5114  key set up as 
5115 \begin_inset Flex CharStyle:Code
5116 status collapsed
5117
5118 \begin_layout Plain Layout
5119 Mode_Shift
5120 \end_layout
5121
5122 \end_inset
5123
5124  and a bunch of these 
5125 \begin_inset Quotes eld
5126 \end_inset
5127
5128
5129 \begin_inset Flex CharStyle:Code
5130 status collapsed
5131
5132 \begin_layout Plain Layout
5133 usldead_*
5134 \end_layout
5135
5136 \end_inset
5137
5138
5139 \begin_inset Quotes erd
5140 \end_inset
5141
5142  symbolic keys bound such things as 
5143 \begin_inset Flex CharStyle:MenuItem
5144 status collapsed
5145
5146 \begin_layout Plain Layout
5147 Scroll
5148 \begin_inset space ~
5149 \end_inset
5150
5151 Lock-^
5152 \end_layout
5153
5154 \end_inset
5155
5156  and 
5157 \begin_inset Flex CharStyle:MenuItem
5158 status collapsed
5159
5160 \begin_layout Plain Layout
5161 Scroll
5162 \begin_inset space ~
5163 \end_inset
5164
5165 Lock-~
5166 \end_layout
5167
5168 \end_inset
5169
5170 .
5171  This is how I produce my accented characters.
5172 \end_layout
5173
5174 \end_inset
5175
5176  You can make just about anything into the 
5177 \begin_inset Flex CharStyle:Code
5178 status collapsed
5179
5180 \begin_layout Plain Layout
5181 Mode_Switch
5182 \end_layout
5183
5184 \end_inset
5185
5186  key: One of the 
5187 \begin_inset Flex CharStyle:MenuItem
5188 status collapsed
5189
5190 \begin_layout Plain Layout
5191 Ctrl-
5192 \end_layout
5193
5194 \end_inset
5195
5196  keys, a spare function key, etc.
5197  As for the LyX commands that produce accents, check the entry for 
5198 \begin_inset Flex CharStyle:Code
5199 status collapsed
5200
5201 \begin_layout Plain Layout
5202 accent-acute
5203 \end_layout
5204
5205 \end_inset
5206
5207  in the 
5208 \emph on
5209 Reference Manual
5210 \emph default
5211 .
5212  You'll find the complete list there.
5213 \end_layout
5214
5215 \begin_layout Subsection
5216 Saving your Language Configuration
5217 \end_layout
5218
5219 \begin_layout Standard
5220 You can edit your preferences so that your desired language environment
5221  is automatically configured when LyX starts up, via the 
5222 \begin_inset Flex CharStyle:MenuItem
5223 status collapsed
5224
5225 \begin_layout Plain Layout
5226 Edit\SpecialChar \menuseparator
5227 Preferences
5228 \end_layout
5229
5230 \end_inset
5231
5232  dialog.
5233 \end_layout
5234
5235 \begin_layout Chapter
5236 Installing New Document Classes, Layouts, and Templates
5237 \begin_inset CommandInset label
5238 LatexCommand label
5239 name "cha:Installing-New-Document"
5240
5241 \end_inset
5242
5243
5244 \begin_inset OptArg
5245 status collapsed
5246
5247 \begin_layout Plain Layout
5248 Installing New Document Classes
5249 \end_layout
5250
5251 \end_inset
5252
5253
5254 \end_layout
5255
5256 \begin_layout Standard
5257 In this chapter, we describe the procedures for creating and installing
5258  new LyX layout and template files, as well as offer a refresher on correctly
5259  installing new LaTeX document classes.
5260  
5261 \end_layout
5262
5263 \begin_layout Standard
5264 First, let us a say a few words about how one ought to think about the relation
5265  between LyX and LaTeX.
5266  The thing to understand is that, in a certain sense, LyX doesn't know anything
5267  about LaTeX.
5268  Indeed, from LyX's point of view, LaTeX is just one of several 
5269 \begin_inset Quotes eld
5270 \end_inset
5271
5272 backend formats
5273 \begin_inset Quotes erd
5274 \end_inset
5275
5276  in which it is capable of producing output.
5277  Other such formats are DocBook, plaintext, and XHTML.
5278  LaTeX is, of course, a particularly important format, but very little of
5279  the information LyX has about LaTeX is actually contained in the program
5280  itself.
5281 \begin_inset Foot
5282 status collapsed
5283
5284 \begin_layout Plain Layout
5285 Some commands are sufficiently complex that they are 
5286 \begin_inset Quotes eld
5287 \end_inset
5288
5289 hardcoded
5290 \begin_inset Quotes erd
5291 \end_inset
5292
5293  into LyX.
5294  But the developers generally regard this as a Bad Thing.
5295 \end_layout
5296
5297 \end_inset
5298
5299  Rather, that information, even for the standard classes like 
5300 \begin_inset Flex CharStyle:Code
5301 status collapsed
5302
5303 \begin_layout Plain Layout
5304 article.cls
5305 \end_layout
5306
5307 \end_inset
5308
5309 , is contained in `layout files'.
5310  Similarly, LyX itself does not know much about DocBook or XHTML.
5311  What it knows is contained in layout files.
5312 \end_layout
5313
5314 \begin_layout Standard
5315 You can think of the layout file for a given document class as a translation
5316  manual between LyX constructs---paragraphs with their corresponding styles,
5317  certain sorts of insets, etc---and the corresponding LaTeX, DocBook, or
5318  XHTML constructs.
5319  Almost everything LyX knows about 
5320 \begin_inset Flex CharStyle:Code
5321 status collapsed
5322
5323 \begin_layout Plain Layout
5324 article.cls
5325 \end_layout
5326
5327 \end_inset
5328
5329 , for example, is contained in the file 
5330 \begin_inset Flex CharStyle:Code
5331 status collapsed
5332
5333 \begin_layout Plain Layout
5334 article.layout
5335 \end_layout
5336
5337 \end_inset
5338
5339  and in various other files it includes.
5340  For this reason, anyone intending to write layout files should plan to
5341  study the existing files.
5342  A good place to start is with 
5343 \begin_inset Flex CharStyle:Code
5344 status collapsed
5345
5346 \begin_layout Plain Layout
5347 stdsections.inc
5348 \end_layout
5349
5350 \end_inset
5351
5352 , which is included in 
5353 \begin_inset Flex CharStyle:Code
5354 status collapsed
5355
5356 \begin_layout Plain Layout
5357 article.layout
5358 \end_layout
5359
5360 \end_inset
5361
5362
5363 \begin_inset Flex CharStyle:Code
5364 status collapsed
5365
5366 \begin_layout Plain Layout
5367 book.layout
5368 \end_layout
5369
5370 \end_inset
5371
5372 , and many of the other layout files for document classes.
5373  This file is where sections and the like are defined: 
5374 \begin_inset Flex CharStyle:Code
5375 status collapsed
5376
5377 \begin_layout Plain Layout
5378 stdsections.inc
5379 \end_layout
5380
5381 \end_inset
5382
5383  tells LyX how paragraphs that are marked with the Section, Subsection,
5384  etc, styles can be translated into corresponding LaTeX, DocBook, and XHTML
5385  commands and tags.
5386  The 
5387 \begin_inset Flex CharStyle:Code
5388 status collapsed
5389
5390 \begin_layout Plain Layout
5391 article.layout
5392 \end_layout
5393
5394 \end_inset
5395
5396  file basically just includes several of these 
5397 \begin_inset Flex CharStyle:Code
5398 status collapsed
5399
5400 \begin_layout Plain Layout
5401 std*.inc
5402 \end_layout
5403
5404 \end_inset
5405
5406  files.
5407 \end_layout
5408
5409 \begin_layout Standard
5410 Defining the LyX--LaTeX correspondence is not the only thing layout files
5411  do, though.
5412  Their other job is to define how the LyX constructs themselves will appear
5413  on-screen.
5414  The fact that layout files have these two jobs is often a source of confusion,
5415  because they are completely separate.
5416  Telling LyX how to translate a certain paragraph style into LaTeX does
5417  not tell LyX how to display it; conversely, telling LyX how to display
5418  a certain paragraph style does not tell LyX how to translate it into LaTeX
5419  (let alone tell LaTeX how to display it).
5420  So, in general, when you define a new LyX construct, you must always do
5421  two quite separate things: (i)
5422 \begin_inset space ~
5423 \end_inset
5424
5425 tell LyX how to translate it into LaTeX and (ii)
5426 \begin_inset space ~
5427 \end_inset
5428
5429 tell LyX how to display it.
5430 \end_layout
5431
5432 \begin_layout Standard
5433 Much the same is true, of course, as regards LyX's other backend formats,
5434  though XHTML is in some ways different, because in that case LyX 
5435 \emph on
5436 is
5437 \emph default
5438  able, to some extent, to use information about how it should display a
5439  paragraph on the screen to output information (in the form of CSS) about
5440  how the paragraph should be displayed in a browser.
5441  Even in this case, however, the distinction between what LyX does internally
5442  and how things are rendered externally remains in force, and the two can
5443  be controlled separately.
5444  See 
5445 \begin_inset CommandInset ref
5446 LatexCommand prettyref
5447 reference "sec:Tags-for-XHTML"
5448
5449 \end_inset
5450
5451  for the details.
5452 \end_layout
5453
5454 \begin_layout Section
5455 Installing new LaTeX files
5456 \end_layout
5457
5458 \begin_layout Standard
5459 Some installations may not include a LaTeX package or class file that you
5460  would like to use within LyX.
5461  For example, you might need FoilTeX, a package for preparing slides for
5462  overhead projectors.
5463  Modern LaTeX distributions like TeXLive (2008 or newer) or MiKTeX provide
5464  a user interface for installing such packages.
5465  For example, with MiKTeX, you start the program 
5466 \begin_inset Quotes eld
5467 \end_inset
5468
5469 Browse Packages
5470 \begin_inset Quotes erd
5471 \end_inset
5472
5473  to get a list of available packages.
5474  To install one, right click on it or use the toolbar button to install
5475  it.
5476  
5477 \end_layout
5478
5479 \begin_layout Standard
5480 If your LaTeX distribution doesn't provide such a `package manager', or
5481  if the file is not available from your distribution, then you can follow
5482  these steps to install it manually.
5483 \end_layout
5484
5485 \begin_layout Enumerate
5486 Get the package from 
5487 \begin_inset CommandInset href
5488 LatexCommand href
5489 name "CTAN"
5490 target "http://www.ctan.org/"
5491
5492 \end_inset
5493
5494  or wherever.
5495 \end_layout
5496
5497 \begin_layout Enumerate
5498 You can install the package in several different places.
5499  If you want it to be available for all users on your system, then you should
5500  install it in your `local' TeX tree; if you want (or need) it to be available
5501  just for you, then you can install it in your own `user' TeX tree.
5502  Where these trees should be created, if they do not already exist, depends
5503  upon the details of your system.
5504  To find out where they are, look in the file 
5505 \begin_inset Flex CharStyle:Code
5506 status collapsed
5507
5508 \begin_layout Plain Layout
5509 texmf.cnf
5510 \end_layout
5511
5512 \end_inset
5513
5514 .
5515 \begin_inset Foot
5516 status collapsed
5517
5518 \begin_layout Plain Layout
5519 This usually lives in the directory 
5520 \begin_inset Flex CharStyle:Code
5521 status collapsed
5522
5523 \begin_layout Plain Layout
5524 $TEXMF/web2c
5525 \end_layout
5526
5527 \end_inset
5528
5529 , though you can run 
5530 \begin_inset Flex CharStyle:Code
5531 status collapsed
5532
5533 \begin_layout Plain Layout
5534 kpsewhich texmf.cnf
5535 \end_layout
5536
5537 \end_inset
5538
5539  to locate it.
5540 \end_layout
5541
5542 \end_inset
5543
5544  The location of the `local' TeX tree is defined by the 
5545 \begin_inset Flex CharStyle:Code
5546 status collapsed
5547
5548 \begin_layout Plain Layout
5549 TEXMFLOCAL
5550 \end_layout
5551
5552 \end_inset
5553
5554  variable; this is usually somewhere like 
5555 \begin_inset Flex URL
5556 status collapsed
5557
5558 \begin_layout Plain Layout
5559
5560 /usr/local/share/texmf/
5561 \end_layout
5562
5563 \end_inset
5564
5565 .
5566  The location of the `user' TeX tree is defined by 
5567 \begin_inset Flex CharStyle:Code
5568 status collapsed
5569
5570 \begin_layout Plain Layout
5571 TEXMFHOME
5572 \end_layout
5573
5574 \end_inset
5575
5576  and is commonly 
5577 \begin_inset Flex CharStyle:Code
5578 status collapsed
5579
5580 \begin_layout Plain Layout
5581 $HOME/texmf/
5582 \end_layout
5583
5584 \end_inset
5585
5586 .
5587  (If these variables are not predefined, you can define them.) You'll probably
5588  need root permissions to create or modify the `local' tree, but your `user'
5589  tree shouldn't have such limitations.
5590 \end_layout
5591
5592 \begin_layout Enumerate
5593 Make sure 
5594 \begin_inset Flex CharStyle:Code
5595 status collapsed
5596
5597 \begin_layout Plain Layout
5598 TEXMF
5599 \end_layout
5600
5601 \end_inset
5602
5603  includes the 
5604 \begin_inset Flex CharStyle:Code
5605 status collapsed
5606
5607 \begin_layout Plain Layout
5608 TEXMFLOCAL
5609 \end_layout
5610
5611 \end_inset
5612
5613  and 
5614 \begin_inset Flex CharStyle:Code
5615 status collapsed
5616
5617 \begin_layout Plain Layout
5618 TEXMFHOME
5619 \end_layout
5620
5621 \end_inset
5622
5623  variables; e.
5624 \begin_inset space \thinspace{}
5625 \end_inset
5626
5627 g.
5628 \begin_inset Newline newline
5629 \end_inset
5630
5631
5632 \begin_inset Flex CharStyle:Code
5633 status collapsed
5634
5635 \begin_layout Plain Layout
5636 TEXMF = {$TEXMFHOME,!!$TEXMFLOCAL,!!$TEXMFMAIN}
5637 \end_layout
5638
5639 \end_inset
5640
5641
5642 \begin_inset Newline newline
5643 \end_inset
5644
5645 It probably does.
5646 \end_layout
5647
5648 \begin_layout Enumerate
5649 Your local and user trees 
5650 \emph on
5651 must
5652 \emph default
5653  have the same sort of directory structure as your main existing 
5654 \begin_inset Flex CharStyle:Code
5655 status collapsed
5656
5657 \begin_layout Plain Layout
5658 texmf
5659 \end_layout
5660
5661 \end_inset
5662
5663  directory, which will be found at 
5664 \begin_inset Flex CharStyle:Code
5665 status collapsed
5666
5667 \begin_layout Plain Layout
5668 TEXMFMAIN
5669 \end_layout
5670
5671 \end_inset
5672
5673  (commonly, 
5674 \begin_inset Flex CharStyle:Code
5675 status collapsed
5676
5677 \begin_layout Plain Layout
5678 /usr/share/texmf/
5679 \end_layout
5680
5681 \end_inset
5682
5683 .) For example, latex packages should go under 
5684 \begin_inset Flex CharStyle:Code
5685 status collapsed
5686
5687 \begin_layout Plain Layout
5688 $TEXMFLOCAL/tex/latex/
5689 \end_layout
5690
5691 \end_inset
5692
5693  or 
5694 \begin_inset Flex CharStyle:Code
5695 status collapsed
5696
5697 \begin_layout Plain Layout
5698 $TEXMFHOME/tex/latex/
5699 \end_layout
5700
5701 \end_inset
5702
5703 .
5704  If you do not put them here, they probably will not work.
5705 \end_layout
5706
5707 \begin_layout Enumerate
5708 Once your tree is properly set up, you can install the package into an appropria
5709 te location.
5710  If you are lucky, your package will have been provided as a so-called `TDS'
5711  (TeX Directory Structure) zip file.
5712  To install it, you want to unzip it from the top of your tree.
5713  So, for example, you can copy the file 
5714 \begin_inset Flex CharStyle:Code
5715 status collapsed
5716
5717 \begin_layout Plain Layout
5718 newpkg.zip
5719 \end_layout
5720
5721 \end_inset
5722
5723  to 
5724 \begin_inset Flex CharStyle:Code
5725 status collapsed
5726
5727 \begin_layout Plain Layout
5728 /home/yourname/texmf/
5729 \end_layout
5730
5731 \end_inset
5732
5733  and then, from inside that directory, just run: 
5734 \begin_inset Flex CharStyle:Code
5735 status collapsed
5736
5737 \begin_layout Plain Layout
5738 unzip newpkg.zip
5739 \end_layout
5740
5741 \end_inset
5742
5743 .
5744  This will extract the needed files and copy them where they need to be.
5745 \begin_inset Newline newline
5746 \end_inset
5747
5748 If you do not have a TDS file, then you have to do this manually.
5749  For example, you might install the FoilTeX files into 
5750 \begin_inset Flex URL
5751 status collapsed
5752
5753 \begin_layout Plain Layout
5754
5755 $TEXMFLOCAL/tex/latex/contrib/foiltex
5756 \end_layout
5757
5758 \end_inset
5759
5760 .
5761  Why there? The CTAN download directories are themselves organized much
5762  like a TeX tree, and it isn't a bad idea to follow its structure when you
5763  install your own files.
5764  FoilTeX, as it happens, is found at 
5765 \begin_inset Flex URL
5766 status collapsed
5767
5768 \begin_layout Plain Layout
5769
5770 http://ctan.org/texarchive/macros/latex/contrib/foiltex/
5771 \end_layout
5772
5773 \end_inset
5774
5775 .
5776  
5777 \end_layout
5778
5779 \begin_layout Enumerate
5780 Finally, you must update the database TeX uses to find files.
5781  On MiKTeX, this is done by pressing the button 
5782 \family sans
5783 Refresh
5784 \begin_inset space ~
5785 \end_inset
5786
5787 FNDB
5788 \family default
5789  that you find in MiKTeX's 
5790 \begin_inset Quotes eld
5791 \end_inset
5792
5793 Settings
5794 \begin_inset Quotes erd
5795 \end_inset
5796
5797  program.
5798  
5799 \begin_inset Flex CharStyle:Code
5800 status collapsed
5801
5802 \begin_layout Plain Layout
5803 $TEXMFLOCAL/tex/latex/
5804 \end_layout
5805
5806 \end_inset
5807
5808 .
5809  Under TeXLive and the like, you should run 
5810 \begin_inset Flex CharStyle:Code
5811 status collapsed
5812
5813 \begin_layout Plain Layout
5814 texhash
5815 \end_layout
5816
5817 \end_inset
5818
5819  from a terminal, with root permissions if necessary.
5820  
5821 \end_layout
5822
5823 \begin_layout Standard
5824 Your package is now installed and available to LaTeX.
5825  You can verify this from a terminal by typing `
5826 \begin_inset Flex CharStyle:Code
5827 status collapsed
5828
5829 \begin_layout Plain Layout
5830 kpsewhich yourfile.ext
5831 \end_layout
5832
5833 \end_inset
5834
5835 '.
5836  To make LyX aware of it, however, you will need to reconfigure (
5837 \begin_inset Flex CharStyle:MenuItem
5838 status collapsed
5839
5840 \begin_layout Plain Layout
5841 Tools\SpecialChar \menuseparator
5842 Reconfigure
5843 \end_layout
5844
5845 \end_inset
5846
5847 ) and then restart LyX.
5848  If the new package was a document class, such as FoilTeX again, you will
5849  now see it available under 
5850 \begin_inset Flex CharStyle:MenuItem
5851 status collapsed
5852
5853 \begin_layout Plain Layout
5854 Document\SpecialChar \menuseparator
5855 Settings\SpecialChar \menuseparator
5856 Document Class
5857 \end_layout
5858
5859 \end_inset
5860
5861 , in this case as 
5862 \begin_inset Flex CharStyle:MenuItem
5863 status collapsed
5864
5865 \begin_layout Plain Layout
5866 slides (FoilTeX)
5867 \end_layout
5868
5869 \end_inset
5870
5871 .
5872 \end_layout
5873
5874 \begin_layout Standard
5875 What if there isn't a layout file is available for your new document class?
5876  Then, unfortunately, LyX will know nothing about it until you create a
5877  layout file yourself (or get someone else to do it).
5878  That is the topic of the next section.
5879 \end_layout
5880
5881 \begin_layout Section
5882 Types of layout files
5883 \end_layout
5884
5885 \begin_layout Standard
5886 This section describes the various sorts of LyX files that contain layout
5887  information.
5888  These files describe various paragraph and character styles, determining
5889  how LyX should display them and how they should be translated into LaTeX,
5890  DocBook, XHTML, or whatever output format is being used.
5891  
5892 \end_layout
5893
5894 \begin_layout Standard
5895 We shall try to provide a thorough description of the process of writing
5896  layout files here.
5897  However, there are so many different types of documents supported even
5898  by just LaTeX that we can't hope to cover every different possibility or
5899  problem you might encounter.
5900  The LyX users' list is frequented by people with lots of experience with
5901  layout design who are willing to share what they've learned, so please
5902  feel free to ask questions there.
5903 \end_layout
5904
5905 \begin_layout Standard
5906 As you prepare to write a new layout, it is extremely helpful to look at
5907  the layouts distributed with LyX.
5908  If you write a LyX layout for a LaTeX document class that might also be
5909  used by others, or write a module that might be useful to others, then
5910  you should consider posting your layout to the 
5911 \begin_inset CommandInset href
5912 LatexCommand href
5913 name "layout section on the LyX wiki"
5914 target "http://wiki.lyx.org/Layouts/Layouts"
5915
5916 \end_inset
5917
5918  or even to the LyX developers' list, so that it might be included in LyX
5919  itself.
5920 \begin_inset Foot
5921 status collapsed
5922
5923 \begin_layout Plain Layout
5924 Note that LyX is licensed under the General Public License, so any material
5925  that is contribued to LyX must be similarly licensed.
5926 \end_layout
5927
5928 \end_inset
5929
5930
5931 \end_layout
5932
5933 \begin_layout Subsection
5934 Layout modules
5935 \begin_inset CommandInset label
5936 LatexCommand label
5937 name "sub:Layout-modules"
5938
5939 \end_inset
5940
5941
5942 \end_layout
5943
5944 \begin_layout Standard
5945 We have spoken to this point about `layout files'.
5946  But there are different sorts of files that contain layout information.
5947  Layout files, strictly so called, have the 
5948 \begin_inset Flex CharStyle:Code
5949 status collapsed
5950
5951 \begin_layout Plain Layout
5952 .layout
5953 \end_layout
5954
5955 \end_inset
5956
5957  extension and provide LyX with information about document classes.
5958  As of LyX 1.6, however, layout information can also be contained in layout
5959  
5960 \emph on
5961 modules
5962 \emph default
5963 , which have the 
5964 \begin_inset Flex CharStyle:Code
5965 status collapsed
5966
5967 \begin_layout Plain Layout
5968 .module
5969 \end_layout
5970
5971 \end_inset
5972
5973  extension.
5974  Modules are to LaTeX packages much as layouts are to LaTeX classes, and
5975  some modules—such as the 
5976 \begin_inset Flex CharStyle:Code
5977 status collapsed
5978
5979 \begin_layout Plain Layout
5980 endnotes
5981 \end_layout
5982
5983 \end_inset
5984
5985  module—specifcally provide support for one package.
5986  In a sense, layout modules are similar to included
5987 \begin_inset Foot
5988 status collapsed
5989
5990 \begin_layout Plain Layout
5991 These can have any extension, but by convention have the 
5992 \begin_inset Flex CharStyle:Code
5993 status collapsed
5994
5995 \begin_layout Plain Layout
5996 .inc
5997 \end_layout
5998
5999 \end_inset
6000
6001  extension.
6002 \end_layout
6003
6004 \end_inset
6005
6006  files—files like 
6007 \begin_inset Flex CharStyle:Code
6008 status collapsed
6009
6010 \begin_layout Plain Layout
6011 stdsections.inc
6012 \end_layout
6013
6014 \end_inset
6015
6016 —in that modules are not specific to a given document class but may be used
6017  with many different classes.
6018  The difference is that using an included file with 
6019 \begin_inset Flex CharStyle:Code
6020 status collapsed
6021
6022 \begin_layout Plain Layout
6023 article.cls
6024 \end_layout
6025
6026 \end_inset
6027
6028  requires editing that file.
6029  Modules, by contrast, are selected in the 
6030 \begin_inset Flex CharStyle:MenuItem
6031 status collapsed
6032
6033 \begin_layout Plain Layout
6034 Document\SpecialChar \menuseparator
6035 Settings
6036 \end_layout
6037
6038 \end_inset
6039
6040  dialog.
6041 \end_layout
6042
6043 \begin_layout Standard
6044 Building modules is the easiest way to get started with layout editing,
6045  since it can be as simple as adding a single new paragraph style or flex
6046  inset.
6047  But modules may, in principle, contain anything a layout file can contain.
6048 \end_layout
6049
6050 \begin_layout Standard
6051 After creating a new module and copying it to the 
6052 \begin_inset Flex CharStyle:Code
6053 status collapsed
6054
6055 \begin_layout Plain Layout
6056 layout/
6057 \end_layout
6058
6059 \end_inset
6060
6061  folder, you will need to reconfigure and then restart LyX for the module
6062  to appear in the menu.
6063  However, changes you make to the module will be seen immediately, if you
6064  open 
6065 \begin_inset Flex CharStyle:MenuItem
6066 status collapsed
6067
6068 \begin_layout Plain Layout
6069 Document\SpecialChar \menuseparator
6070 Settings
6071 \end_layout
6072
6073 \end_inset
6074
6075 , highlight something, and then hit 
6076 \begin_inset Quotes eld
6077 \end_inset
6078
6079 OK
6080 \begin_inset Quotes erd
6081 \end_inset
6082
6083 .
6084  
6085 \emph on
6086 It is strongly recommended that you save your work before doing this
6087 \emph default
6088 .
6089  In fact, 
6090 \emph on
6091 it is strongly recommended that you not attempt to edit modules while simultaneo
6092 usly working on actual documents
6093 \emph default
6094 .
6095  Though of course the developers strive to keep LyX stable in such situations,
6096  syntax errors and the like in your module file could cause strange behavior.
6097 \end_layout
6098
6099 \begin_layout Subsection
6100 Layout for 
6101 \begin_inset Flex CharStyle:MenuItem
6102 status collapsed
6103
6104 \begin_layout Plain Layout
6105 .sty
6106 \end_layout
6107
6108 \end_inset
6109
6110  files
6111 \end_layout
6112
6113 \begin_layout Standard
6114 There are two situations you are likely to encounter when wanting to support
6115  a new LaTeX document class, involving LaTeX2e class (
6116 \begin_inset Flex CharStyle:Code
6117 status collapsed
6118
6119 \begin_layout Plain Layout
6120 .cls
6121 \end_layout
6122
6123 \end_inset
6124
6125 ) and style (
6126 \begin_inset Flex CharStyle:Code
6127 status collapsed
6128
6129 \begin_layout Plain Layout
6130 .sty
6131 \end_layout
6132
6133 \end_inset
6134
6135 ) files.
6136  Supporting a style file is usually fairly easy.
6137  Supporting a new class file is a bit harder.
6138  We'll discuss the former in this section and the latter in the next.
6139  Similar remarks apply, of course, if you want to support a new DocBook
6140  DTD.
6141 \end_layout
6142
6143 \begin_layout Standard
6144 The easier case is the one in which your new document class is provided
6145  as a style file that is to be used in conjunction with an already supported
6146  document class.
6147  For the sake of the example, we'll assume that the style file is called
6148  
6149 \begin_inset Flex CharStyle:MenuItem
6150 status collapsed
6151
6152 \begin_layout Plain Layout
6153 myclass.sty
6154 \end_layout
6155
6156 \end_inset
6157
6158  and that it is meant to be used with 
6159 \begin_inset Flex CharStyle:MenuItem
6160 status collapsed
6161
6162 \begin_layout Plain Layout
6163 report.cls
6164 \end_layout
6165
6166 \end_inset
6167
6168 , which is a standard class.
6169  
6170 \end_layout
6171
6172 \begin_layout Standard
6173 Start by copying the existing class's layout file into your local directory:
6174 \begin_inset Foot
6175 status collapsed
6176
6177 \begin_layout Plain Layout
6178 Of course, which directory is your local directory will vary by platform,
6179  and LyX allows you to specify your local directory on startup, too, using
6180  the 
6181 \begin_inset Flex CharStyle:Code
6182 status collapsed
6183
6184 \begin_layout Plain Layout
6185 -userdir
6186 \end_layout
6187
6188 \end_inset
6189
6190  option.
6191 \end_layout
6192
6193 \end_inset
6194
6195
6196 \end_layout
6197
6198 \begin_layout LyX-Code
6199 cp report.layout ~/.lyx/layouts/myclass.layout
6200 \end_layout
6201
6202 \begin_layout Standard
6203 Then edit 
6204 \begin_inset Flex CharStyle:Code
6205 status collapsed
6206
6207 \begin_layout Plain Layout
6208 myclass.layout
6209 \end_layout
6210
6211 \end_inset
6212
6213  and change the line: 
6214 \end_layout
6215
6216 \begin_layout LyX-Code
6217
6218 \backslash
6219 DeclareLaTeXClass{report}
6220 \end_layout
6221
6222 \begin_layout Standard
6223 to read
6224 \end_layout
6225
6226 \begin_layout LyX-Code
6227
6228 \backslash
6229 DeclareLaTeXClass[report, myclass.sty]{report (myclass)}
6230 \end_layout
6231
6232 \begin_layout Standard
6233 Then add:
6234 \end_layout
6235
6236 \begin_layout LyX-Code
6237 Preamble 
6238 \begin_inset Newline newline
6239 \end_inset
6240
6241     
6242 \backslash
6243 usepackage{myclass}
6244 \begin_inset Newline newline
6245 \end_inset
6246
6247 EndPreamble
6248 \end_layout
6249
6250 \begin_layout Standard
6251 near the top of the file.
6252 \end_layout
6253
6254 \begin_layout Standard
6255 Start LyX and select 
6256 \begin_inset Flex CharStyle:MenuItem
6257 status collapsed
6258
6259 \begin_layout Plain Layout
6260 Tools\SpecialChar \menuseparator
6261 Reconfigure
6262 \end_layout
6263
6264 \end_inset
6265
6266 .
6267  Then restart LyX and try creating a new document.
6268  You should see "
6269 \begin_inset Flex CharStyle:MenuItem
6270 status collapsed
6271
6272 \begin_layout Plain Layout
6273 report (myclass)
6274 \end_layout
6275
6276 \end_inset
6277
6278 " as a document class option in the 
6279 \begin_inset Flex CharStyle:MenuItem
6280 status collapsed
6281
6282 \begin_layout Plain Layout
6283 Document\SpecialChar \menuseparator
6284 Settings
6285 \end_layout
6286
6287 \end_inset
6288
6289  dialog.
6290  It is likely that some of the sectioning commands and such in your new
6291  class will work differently from how they worked in the base class—
6292 \begin_inset Flex CharStyle:Code
6293 status collapsed
6294
6295 \begin_layout Plain Layout
6296 report
6297 \end_layout
6298
6299 \end_inset
6300
6301  in this example—so you can fiddle around with the settings for the different
6302  sections if you wish.
6303  The layout information for sections is contained in 
6304 \begin_inset Flex CharStyle:Code
6305 status collapsed
6306
6307 \begin_layout Plain Layout
6308 stdsections.inc
6309 \end_layout
6310
6311 \end_inset
6312
6313 , but you do not need to copy and change this file.
6314  Instead, you can simply add your changes to your layout file, after the
6315  line 
6316 \begin_inset Flex CharStyle:Code
6317 status collapsed
6318
6319 \begin_layout Plain Layout
6320 Input stdclass.inc
6321 \end_layout
6322
6323 \end_inset
6324
6325 , which itself includes 
6326 \begin_inset Flex CharStyle:Code
6327 status collapsed
6328
6329 \begin_layout Plain Layout
6330 stdsections.inc
6331 \end_layout
6332
6333 \end_inset
6334
6335 .
6336  For example, you might add these lines:
6337 \end_layout
6338
6339 \begin_layout LyX-Code
6340 Style Chapter
6341 \end_layout
6342
6343 \begin_layout LyX-Code
6344     Font
6345 \end_layout
6346
6347 \begin_layout LyX-Code
6348         Family Sans
6349 \end_layout
6350
6351 \begin_layout LyX-Code
6352     EndFont
6353 \end_layout
6354
6355 \begin_layout LyX-Code
6356 End
6357 \end_layout
6358
6359 \begin_layout Standard
6360 to change the font for chapter headings to sans-serif.
6361  This will override (or, in this case, add to) the existing declaration
6362  for the Chapter style.
6363  
6364 \end_layout
6365
6366 \begin_layout Standard
6367 Your new package may also provide commands or environments not present in
6368  the base class.
6369  In this case, you will want to add these to the layout file.
6370  See 
6371 \begin_inset CommandInset ref
6372 LatexCommand ref
6373 reference "sec:TextClass"
6374
6375 \end_inset
6376
6377  for information on how to do so.
6378 \end_layout
6379
6380 \begin_layout Standard
6381 If 
6382 \begin_inset Flex CharStyle:MenuItem
6383 status collapsed
6384
6385 \begin_layout Plain Layout
6386 myclass.sty
6387 \end_layout
6388
6389 \end_inset
6390
6391  can be used with several different document classes, and even if it cannot,
6392  you might find it easiest just to write a module that you can load with
6393  the base class.
6394  The simplest possible such module would be:
6395 \end_layout
6396
6397 \begin_layout LyX-Code
6398 #
6399 \backslash
6400 DeclareLyXModule{My Package} 
6401 \end_layout
6402
6403 \begin_layout LyX-Code
6404 #DescriptionBegin 
6405 \end_layout
6406
6407 \begin_layout LyX-Code
6408 #Support for mypkg.sty.
6409 \end_layout
6410
6411 \begin_layout LyX-Code
6412 #DescriptionEnd 
6413 \begin_inset Newline newline
6414 \end_inset
6415
6416
6417 \end_layout
6418
6419 \begin_layout LyX-Code
6420 Format 21
6421 \begin_inset Newline newline
6422 \end_inset
6423
6424
6425 \end_layout
6426
6427 \begin_layout LyX-Code
6428 Preamble
6429 \begin_inset Newline newline
6430 \end_inset
6431
6432     
6433 \backslash
6434 usepackage{mypkg}
6435 \begin_inset Newline newline
6436 \end_inset
6437
6438 EndPreamble
6439 \end_layout
6440
6441 \begin_layout Standard
6442 A more complex module might modify the behavior of some existing constructs
6443  or define some new ones.
6444  Again, see 
6445 \begin_inset CommandInset ref
6446 LatexCommand ref
6447 reference "sec:TextClass"
6448
6449 \end_inset
6450
6451  for discussion.
6452 \end_layout
6453
6454 \begin_layout Subsection
6455 Layout for 
6456 \begin_inset Flex CharStyle:MenuItem
6457 status collapsed
6458
6459 \begin_layout Plain Layout
6460 .cls
6461 \end_layout
6462
6463 \end_inset
6464
6465  files
6466 \end_layout
6467
6468 \begin_layout Standard
6469 There are two possibilities here.
6470  One is that the class file is itself based upon an existing document class.
6471  For example, many thesis classes are based upon 
6472 \begin_inset Flex CharStyle:MenuItem
6473 status collapsed
6474
6475 \begin_layout Plain Layout
6476 book.cls
6477 \end_layout
6478
6479 \end_inset
6480
6481 .
6482  To see whether yours is, look for a line like
6483 \end_layout
6484
6485 \begin_layout LyX-Code
6486
6487 \backslash
6488 LoadClass{book}
6489 \end_layout
6490
6491 \begin_layout Standard
6492 in the file.
6493  If so, then you may proceed largely as in the previous section, though
6494  the 
6495 \begin_inset Flex CharStyle:Code
6496 status collapsed
6497
6498 \begin_layout Plain Layout
6499 DeclareLaTeXClass
6500 \end_layout
6501
6502 \end_inset
6503
6504  line will be different.
6505  If your new class is 
6506 \begin_inset Flex CharStyle:Code
6507 status collapsed
6508
6509 \begin_layout Plain Layout
6510 thesis
6511 \end_layout
6512
6513 \end_inset
6514
6515  and it is based upon 
6516 \begin_inset Flex CharStyle:Code
6517 status collapsed
6518
6519 \begin_layout Plain Layout
6520 book
6521 \end_layout
6522
6523 \end_inset
6524
6525 , then the line should read:
6526 \begin_inset Foot
6527 status collapsed
6528
6529 \begin_layout Plain Layout
6530 And it will be easiest if you save the file to 
6531 \begin_inset Flex CharStyle:Code
6532 status collapsed
6533
6534 \begin_layout Plain Layout
6535 thesis.layout
6536 \end_layout
6537
6538 \end_inset
6539
6540 : LyX assumes that the document class has the same name as the layout file.
6541  
6542 \end_layout
6543
6544 \end_inset
6545
6546
6547 \end_layout
6548
6549 \begin_layout LyX-Code
6550
6551 \backslash
6552 DeclareLaTeXClass[thesis,book]{thesis}
6553 \end_layout
6554
6555 \begin_layout Standard
6556 If, on the other hand, the new class is not based upon an existing class,
6557  you will probably have to 
6558 \begin_inset Quotes eld
6559 \end_inset
6560
6561 roll your own
6562 \begin_inset Quotes erd
6563 \end_inset
6564
6565  layout.
6566  We strongly suggest copying an existing layout file which uses a similar
6567  LaTeX class and then modifying it, if you can do so.
6568  At least use an existing file as a starting point so you can find out what
6569  items you need to worry about.
6570  Again, the specifics are covered below.
6571 \end_layout
6572
6573 \begin_layout Subsection
6574 Creating templates
6575 \begin_inset CommandInset label
6576 LatexCommand label
6577 name "sub:Creating-Templates"
6578
6579 \end_inset
6580
6581
6582 \end_layout
6583
6584 \begin_layout Standard
6585 Once you have written a layout file for a new document class, you might
6586  want to consider writing a 
6587 \emph on
6588 template
6589 \emph default
6590  for it, too.
6591  A template acts as a kind of tutorial for your layout, showing how it might
6592  be used, though containing dummy content.
6593  You can of course look at the various templates included with LyX for ideas.
6594 \end_layout
6595
6596 \begin_layout Standard
6597 Templates are created just like usual documents: using LyX.
6598  The only difference is that usual documents contain all possible settings,
6599  including the font scheme and the paper size.
6600  Usually a user doesn't want a template to overwrite his preferred settings
6601  for such parameters.
6602  For that reason, the designer of a template should remove the corresponding
6603  commands like 
6604 \begin_inset Flex CharStyle:Code
6605 status collapsed
6606
6607 \begin_layout Plain Layout
6608
6609 \backslash
6610 font_roman
6611 \end_layout
6612
6613 \end_inset
6614
6615  or 
6616 \begin_inset Flex CharStyle:Code
6617 status collapsed
6618
6619 \begin_layout Plain Layout
6620
6621 \backslash
6622 papersize
6623 \end_layout
6624
6625 \end_inset
6626
6627  from the template LyX file.
6628  This can be done with any simple text-editor, for example 
6629 \begin_inset Flex CharStyle:Code
6630 status collapsed
6631
6632 \begin_layout Plain Layout
6633 vi
6634 \end_layout
6635
6636 \end_inset
6637
6638  or 
6639 \begin_inset Flex CharStyle:Code
6640 status collapsed
6641
6642 \begin_layout Plain Layout
6643 notepad
6644 \end_layout
6645
6646 \end_inset
6647
6648 .
6649  
6650 \end_layout
6651
6652 \begin_layout Standard
6653 Put the edited template files you create in 
6654 \begin_inset Flex CharStyle:Code
6655 status collapsed
6656
6657 \begin_layout Plain Layout
6658 UserDir/templates/
6659 \end_layout
6660
6661 \end_inset
6662
6663 , copy the ones you use from the global template directory in 
6664 \begin_inset Flex CharStyle:Code
6665 status collapsed
6666
6667 \begin_layout Plain Layout
6668 LyXDir/templates/
6669 \end_layout
6670
6671 \end_inset
6672
6673  to the same place, and redefine the template path in the 
6674 \begin_inset Flex CharStyle:MenuItem
6675 status collapsed
6676
6677 \begin_layout Plain Layout
6678 Tools\SpecialChar \menuseparator
6679 Preferences\SpecialChar \menuseparator
6680 Paths
6681 \end_layout
6682
6683 \end_inset
6684
6685  dialog.
6686 \end_layout
6687
6688 \begin_layout Standard
6689 Note, by the way, that there is a template which has a particular meaning:
6690  
6691 \begin_inset Flex CharStyle:Code
6692 status collapsed
6693
6694 \begin_layout Plain Layout
6695 defaults.lyx
6696 \end_layout
6697
6698 \end_inset
6699
6700 .
6701  This template is loaded every time you create a new document with 
6702 \begin_inset Flex CharStyle:MenuItem
6703 status collapsed
6704
6705 \begin_layout Plain Layout
6706 File\SpecialChar \menuseparator
6707 New
6708 \end_layout
6709
6710 \end_inset
6711
6712  in order to provide useful defaults.
6713  To create this template from inside LyX, all you have to do is to open
6714  a document with the correct settings, and use the 
6715 \begin_inset Flex CharStyle:MenuItem
6716 status collapsed
6717
6718 \begin_layout Plain Layout
6719 Save as Document Defaults
6720 \end_layout
6721
6722 \end_inset
6723
6724  button.
6725 \end_layout
6726
6727 \begin_layout Subsection
6728 Upgrading old layout files
6729 \end_layout
6730
6731 \begin_layout Standard
6732 The format of layout files changes with each LyX release, so old layout
6733  files need to be converted to the new format.
6734  This process has been automated since LyX 1.4: If LyX reads a layout file
6735  in an older format, it automatically calls the script 
6736 \begin_inset Flex CharStyle:Code
6737 status collapsed
6738
6739 \begin_layout Plain Layout
6740 layout2layout.py
6741 \end_layout
6742
6743 \end_inset
6744
6745  to convert it to a temporary file in current format.
6746  The original file is left untouched.
6747  If you use the layout file often, then, you may want to convert it permanently,
6748  so that LyX does not have to do so itself every time.
6749  To do this, you can call the converter manually:
6750 \end_layout
6751
6752 \begin_layout LyX-Code
6753 mv myclass.layout myclass.old
6754 \end_layout
6755
6756 \begin_layout LyX-Code
6757 python LyXDir/scripts/layout2layout.py myclass.old myclass.layout
6758 \end_layout
6759
6760 \begin_layout Standard
6761 You need to replace 
6762 \begin_inset Flex CharStyle:Code
6763 status collapsed
6764
6765 \begin_layout Plain Layout
6766 LyXDir
6767 \end_layout
6768
6769 \end_inset
6770
6771  with the name of your LyX system directory, of course.
6772 \end_layout
6773
6774 \begin_layout Standard
6775 Note that manual conversion does not affect included files, so these will
6776  have to be converted separately.
6777 \end_layout
6778
6779 \begin_layout Section
6780 \begin_inset CommandInset label
6781 LatexCommand label
6782 name "sec:TextClass"
6783
6784 \end_inset
6785
6786 The layout file format
6787 \end_layout
6788
6789 \begin_layout Standard
6790 When it's finally time to get your hands dirty and create or edit your own
6791  layout file, the following sections describe what you're up against.
6792  Our advice is to go slowly, save and test often, listen to soothing music,
6793  and enjoy one or two of your favorite adult beverages; more if you are
6794  getting particularly stuck.
6795  It's really not that hard, except that the multitude of options can become
6796  overwhelming if you try to do too much in one sitting.
6797  Go have another adult beverage, just for good measure.
6798 \end_layout
6799
6800 \begin_layout Standard
6801 Note that all the tags used in layout files are case-insensitive.
6802  This means that 
6803 \begin_inset Flex CharStyle:Code
6804 status collapsed
6805
6806 \begin_layout Plain Layout
6807 Style
6808 \end_layout
6809
6810 \end_inset
6811
6812
6813 \begin_inset Flex CharStyle:Code
6814 status collapsed
6815
6816 \begin_layout Plain Layout
6817 style
6818 \end_layout
6819
6820 \end_inset
6821
6822  and 
6823 \begin_inset Flex CharStyle:Code
6824 status collapsed
6825
6826 \begin_layout Plain Layout
6827 StYlE
6828 \end_layout
6829
6830 \end_inset
6831
6832  are really the same tag.
6833  The possible values are printed in brackets after the feature's name.
6834  The default value if a feature isn't specified inside a text class-description
6835  is typeset 
6836 \begin_inset Flex CharStyle:Code
6837 status collapsed
6838
6839 \begin_layout Plain Layout
6840
6841 \emph on
6842 emphasized
6843 \end_layout
6844
6845 \end_inset
6846
6847 .
6848  If the argument has a data type like 
6849 \begin_inset Quotes eld
6850 \end_inset
6851
6852 string
6853 \begin_inset Quotes erd
6854 \end_inset
6855
6856  or 
6857 \begin_inset Quotes eld
6858 \end_inset
6859
6860 float
6861 \begin_inset Quotes erd
6862 \end_inset
6863
6864 , the default is shown like this: 
6865 \begin_inset Flex CharStyle:Code
6866 status collapsed
6867
6868 \begin_layout Plain Layout
6869 float=
6870 \emph on
6871 default
6872 \end_layout
6873
6874 \end_inset
6875
6876 .
6877 \end_layout
6878
6879 \begin_layout Subsection
6880 The document class declaration
6881 \end_layout
6882
6883 \begin_layout Standard
6884 Lines in a layout file which begin with 
6885 \begin_inset Flex CharStyle:Code
6886 status collapsed
6887
6888 \begin_layout Plain Layout
6889 #
6890 \end_layout
6891
6892 \end_inset
6893
6894  are comments.
6895  There is one exception to this rule.
6896  All 
6897 \begin_inset Flex CharStyle:Code
6898 status collapsed
6899
6900 \begin_layout Plain Layout
6901 *.layout
6902 \end_layout
6903
6904 \end_inset
6905
6906  files should begin with a line like:
6907 \end_layout
6908
6909 \begin_layout LyX-Code
6910
6911 \size small
6912 #% Do not delete the line below; configure depends on this 
6913 \end_layout
6914
6915 \begin_layout LyX-Code
6916
6917 \size small
6918 #  
6919 \backslash
6920 DeclareLaTeXClass{article}
6921 \end_layout
6922
6923 \begin_layout Standard
6924 The second line is used when you (re)configure LyX.
6925  The layout file is read by the LaTeX script 
6926 \begin_inset Flex CharStyle:Code
6927 status collapsed
6928
6929 \begin_layout Plain Layout
6930 chkconfig.ltx
6931 \end_layout
6932
6933 \end_inset
6934
6935 , in a special mode where 
6936 \begin_inset Flex CharStyle:Code
6937 status collapsed
6938
6939 \begin_layout Plain Layout
6940 #
6941 \end_layout
6942
6943 \end_inset
6944
6945  is ignored.
6946  The first line is just a LaTeX comment, and the second one contains the
6947  declaration of the text class.
6948  If these lines appear in a file named 
6949 \begin_inset Flex CharStyle:Code
6950 status collapsed
6951
6952 \begin_layout Plain Layout
6953 article.layout
6954 \end_layout
6955
6956 \end_inset
6957
6958 , then they define a text class of name 
6959 \begin_inset Flex CharStyle:Code
6960 status collapsed
6961
6962 \begin_layout Plain Layout
6963 article
6964 \end_layout
6965
6966 \end_inset
6967
6968  (the name of the layout file) which uses the LaTeX document class 
6969 \begin_inset Flex CharStyle:Code
6970 status collapsed
6971
6972 \begin_layout Plain Layout
6973 article.cls
6974 \end_layout
6975
6976 \end_inset
6977
6978  (the default is to use the same name as the layout).
6979  The string 
6980 \begin_inset Quotes eld
6981 \end_inset
6982
6983 article
6984 \begin_inset Quotes erd
6985 \end_inset
6986
6987  that appears above is used as a description of the text class in the 
6988 \begin_inset Flex CharStyle:MenuItem
6989 status collapsed
6990
6991 \begin_layout Plain Layout
6992 Document\SpecialChar \menuseparator
6993 Settings
6994 \end_layout
6995
6996 \end_inset
6997
6998  dialog.
6999 \end_layout
7000
7001 \begin_layout Standard
7002 Let's assume that you wrote your own text class that uses the 
7003 \begin_inset Flex CharStyle:Code
7004 status collapsed
7005
7006 \begin_layout Plain Layout
7007 article.cls
7008 \end_layout
7009
7010 \end_inset
7011
7012  document class, but where you changed the appearance of the section headings.
7013  If you put it in a file 
7014 \begin_inset Flex CharStyle:Code
7015 status collapsed
7016
7017 \begin_layout Plain Layout
7018 myarticle.layout
7019 \end_layout
7020
7021 \end_inset
7022
7023 , the header of this file should be:
7024 \end_layout
7025
7026 \begin_layout LyX-Code
7027
7028 \size small
7029 #% Do not delete the line below; configure depends on this 
7030 \end_layout
7031
7032 \begin_layout LyX-Code
7033
7034 \size small
7035 #  
7036 \backslash
7037 DeclareLaTeXClass[article]{article (with my own headings)}
7038 \end_layout
7039
7040 \begin_layout Standard
7041 This declares a text class 
7042 \begin_inset Flex CharStyle:Code
7043 status collapsed
7044
7045 \begin_layout Plain Layout
7046 myarticle
7047 \end_layout
7048
7049 \end_inset
7050
7051 , associated with the LaTeX document class 
7052 \begin_inset Flex CharStyle:Code
7053 status collapsed
7054
7055 \begin_layout Plain Layout
7056 article.cls
7057 \end_layout
7058
7059 \end_inset
7060
7061  and described as 
7062 \begin_inset Quotes eld
7063 \end_inset
7064
7065 article (with my own headings)
7066 \begin_inset Quotes erd
7067 \end_inset
7068
7069 .
7070  If your text class depends on several packages, you can declare it as:
7071 \end_layout
7072
7073 \begin_layout LyX-Code
7074
7075 \size small
7076 #% Do not delete the line below; configure depends on this 
7077 \end_layout
7078
7079 \begin_layout LyX-Code
7080
7081 \size small
7082 #  
7083 \backslash
7084 DeclareLaTeXClass[article,foo.sty]{article (with my own headings)}
7085 \end_layout
7086
7087 \begin_layout Standard
7088 This indicates that your text class uses the 
7089 \begin_inset Flex CharStyle:Code
7090 status collapsed
7091
7092 \begin_layout Plain Layout
7093 foo.sty
7094 \end_layout
7095
7096 \end_inset
7097
7098  package.
7099  Finally, it is also possible to declare classes for DocBook code.
7100  Typical declarations will look like:
7101 \end_layout
7102
7103 \begin_layout LyX-Code
7104
7105 \size small
7106 #% Do not delete the line below; configure depends on this 
7107 \end_layout
7108
7109 \begin_layout LyX-Code
7110
7111 \size small
7112
7113 \backslash
7114 DeclareDocBookClass[article]{SGML (DocBook article)}
7115 \end_layout
7116
7117 \begin_layout Standard
7118 Note that these declarations can also be given an optional parameter declaring
7119  the name of the document class (but not a list).
7120 \end_layout
7121
7122 \begin_layout Standard
7123 So, to be as explicit as possible, the form of the layout declaration is:
7124 \end_layout
7125
7126 \begin_layout LyX-Code
7127
7128 \size small
7129 #  
7130 \backslash
7131 DeclareLaTeXClass[class,package.sty]{layout description}
7132 \end_layout
7133
7134 \begin_layout Standard
7135 The class need only be specified if the name of the LaTeX class file and
7136  the name of the layout file are different; if the name of the class file
7137  is not specified, then LyX will simply assume that it is the same as the
7138  name of the layout file.
7139 \end_layout
7140
7141 \begin_layout Standard
7142 When the text class has been modified to your taste, all you have to do
7143  is to copy it either to 
7144 \begin_inset Flex CharStyle:Code
7145 status collapsed
7146
7147 \begin_layout Plain Layout
7148 LyXDir/layouts/
7149 \end_layout
7150
7151 \end_inset
7152
7153  or to 
7154 \begin_inset Flex CharStyle:Code
7155 status collapsed
7156
7157 \begin_layout Plain Layout
7158 UserDir/layouts
7159 \end_layout
7160
7161 \end_inset
7162
7163 , run 
7164 \begin_inset Flex CharStyle:MenuItem
7165 status collapsed
7166
7167 \begin_layout Plain Layout
7168 Tools\SpecialChar \menuseparator
7169 Reconfigure
7170 \end_layout
7171
7172 \end_inset
7173
7174 , exit LyX and restart.
7175  Then your new text class should be available along with the others.
7176 \end_layout
7177
7178 \begin_layout Standard
7179 Once the layout file is installed, you can edit it and see your changes
7180  without having to reconfigure or to restart LyX.
7181  
7182 \begin_inset Foot
7183 status collapsed
7184
7185 \begin_layout Plain Layout
7186 In versions of LyX prior to 1.6, this was not true.
7187  As a result, editing layout files was very time consuming, since you had
7188  constantly to restart LyX to see changes.
7189 \end_layout
7190
7191 \end_inset
7192
7193  You can force a reload of the current layout by using the LyX function
7194  
7195 \begin_inset Flex CharStyle:MenuItem
7196 status collapsed
7197
7198 \begin_layout Plain Layout
7199 layout-reload
7200 \end_layout
7201
7202 \end_inset
7203
7204 .
7205  There is no default binding for this function—though, of course, you can
7206  bind it to a key yourself.
7207  But you will normally use this function simply by entering it in the mini-buffe
7208 r.
7209  
7210 \end_layout
7211
7212 \begin_layout Standard
7213
7214 \emph on
7215 Warning
7216 \emph default
7217
7218 \begin_inset Flex CharStyle:MenuItem
7219 status collapsed
7220
7221 \begin_layout Plain Layout
7222 layout-reload
7223 \end_layout
7224
7225 \end_inset
7226
7227  is very much an `advanced feature'.
7228  It is 
7229 \emph on
7230 strongly
7231 \emph default
7232  recommended that you save your work before using this function.
7233  In fact, it is 
7234 \emph on
7235 strongly
7236 \emph default
7237  recommended that you not attempt to edit layout information while simultaneousl
7238 y working on a document that you care about.
7239  Use a test document.
7240  Syntax errors and the like in your layout file could cause peculiar behavior.
7241  In particular, such errors could cause LyX to regard the current layout
7242  as invalid and to attempt to switch to some other layout.
7243 \begin_inset Foot
7244 status collapsed
7245
7246 \begin_layout Plain Layout
7247 Really bad syntax errors may even caused LyX to exit.
7248  This is because certain sorts of errors may make LyX unable to read 
7249 \emph on
7250 any
7251 \emph default
7252  layout information.
7253  Please be careful.
7254 \end_layout
7255
7256 \end_inset
7257
7258  The LyX team strives to keep LyX stable in such situations, but safe is
7259  better than sorry.
7260 \begin_inset Foot
7261 status collapsed
7262
7263 \begin_layout Plain Layout
7264 While we're giving advice: make regular backups.
7265  And be nice to your mother.
7266 \end_layout
7267
7268 \end_inset
7269
7270
7271 \end_layout
7272
7273 \begin_layout Subsection
7274 The Module declaration
7275 \end_layout
7276
7277 \begin_layout Standard
7278 A module must begin with a line like the following:
7279 \end_layout
7280
7281 \begin_layout LyX-Code
7282 #
7283 \backslash
7284 DeclareLyXModule[endnotes.sty]{Endnotes} 
7285 \end_layout
7286
7287 \begin_layout Standard
7288 The mandatory argument, in curly brackets, is the name of the module, as
7289  it should appear in 
7290 \begin_inset Flex CharStyle:MenuItem
7291 status collapsed
7292
7293 \begin_layout Plain Layout
7294 Document\SpecialChar \menuseparator
7295 Settings
7296 \end_layout
7297
7298 \end_inset
7299
7300 .
7301  The argument in square brackets is optional: It declares any LaTeX packages
7302  on which the module depends.
7303  Please note that only packages about which LyX knows should be listed in
7304  the square brackets.
7305 \begin_inset Foot
7306 status collapsed
7307
7308 \begin_layout Plain Layout
7309 The list of such packages is documented only in the source code.
7310 \end_layout
7311
7312 \end_inset
7313
7314  LyX will not check for arbitrary packages.
7315  It is also possible to use the form 
7316 \begin_inset Flex CharStyle:MenuItem
7317 status collapsed
7318
7319 \begin_layout Plain Layout
7320 from->to
7321 \end_layout
7322
7323 \end_inset
7324
7325  as an optional argument, which declares that the module can only be used
7326  when there exists a conversion chain between the formats `
7327 \begin_inset Flex CharStyle:Code
7328 status collapsed
7329
7330 \begin_layout Plain Layout
7331 from
7332 \end_layout
7333
7334 \end_inset
7335
7336 ' and `
7337 \begin_inset Flex CharStyle:Code
7338 status collapsed
7339
7340 \begin_layout Plain Layout
7341 to
7342 \end_layout
7343
7344 \end_inset
7345
7346 '.
7347 \end_layout
7348
7349 \begin_layout Standard
7350 The module declaration should then be followed by lines like the following:
7351 \end_layout
7352
7353 \begin_layout LyX-Code
7354 #DescriptionBegin 
7355 \end_layout
7356
7357 \begin_layout LyX-Code
7358 #Adds an endnote command, in addition to footnotes.
7359  
7360 \end_layout
7361
7362 \begin_layout LyX-Code
7363 #You will need to add  
7364 \backslash
7365 theendnotes in TeX code where you 
7366 \end_layout
7367
7368 \begin_layout LyX-Code
7369 #want the endnotes to appear.
7370  
7371 \end_layout
7372
7373 \begin_layout LyX-Code
7374 #DescriptionEnd 
7375 \end_layout
7376
7377 \begin_layout LyX-Code
7378 #Requires: somemodule | othermodule
7379 \end_layout
7380
7381 \begin_layout LyX-Code
7382 #Excludes: badmodule
7383 \end_layout
7384
7385 \begin_layout Standard
7386 The description is used in 
7387 \begin_inset Flex CharStyle:MenuItem
7388 status collapsed
7389
7390 \begin_layout Plain Layout
7391 Document\SpecialChar \menuseparator
7392 Settings
7393 \end_layout
7394
7395 \end_inset
7396
7397  to provide the user with information about what the module does.
7398  The 
7399 \begin_inset Flex CharStyle:Code
7400 status collapsed
7401
7402 \begin_layout Plain Layout
7403 Requires
7404 \end_layout
7405
7406 \end_inset
7407
7408  line is used to identify other modules with which this one must be used;
7409  the 
7410 \begin_inset Flex CharStyle:Code
7411 status collapsed
7412
7413 \begin_layout Plain Layout
7414 Excludes
7415 \end_layout
7416
7417 \end_inset
7418
7419  line is used to identify modules with which this one may not be used.
7420  Both are optional, and, as shown, multiple modules should be separated
7421  with the pipe symbol: |.
7422  Note that the required modules are treated disjunctively: 
7423 \emph on
7424 at least one
7425 \emph default
7426  of the required modules must be used.
7427  Similarly, 
7428 \emph on
7429 no
7430 \emph default
7431  excluded module may be used.
7432  Note that modules are identified here by their 
7433 \emph on
7434 filenames
7435 \emph default
7436  without the 
7437 \begin_inset Flex CharStyle:Code
7438 status collapsed
7439
7440 \begin_layout Plain Layout
7441 .module
7442 \end_layout
7443
7444 \end_inset
7445
7446  extension.
7447  So 
7448 \begin_inset Flex CharStyle:Code
7449 status collapsed
7450
7451 \begin_layout Plain Layout
7452 somemodule
7453 \end_layout
7454
7455 \end_inset
7456
7457  is really 
7458 \begin_inset Flex CharStyle:Code
7459 status collapsed
7460
7461 \begin_layout Plain Layout
7462 somemodule.module
7463 \end_layout
7464
7465 \end_inset
7466
7467 .
7468 \end_layout
7469
7470 \begin_layout Subsection
7471 File format
7472 \end_layout
7473
7474 \begin_layout Standard
7475 The first non-comment line of any layout file, included file, or module
7476  
7477 \emph on
7478 must
7479 \emph default
7480  contain the file format number:
7481 \end_layout
7482
7483 \begin_layout Description
7484 \begin_inset Flex CharStyle:Code
7485 status collapsed
7486
7487 \begin_layout Plain Layout
7488 Format
7489 \end_layout
7490
7491 \end_inset
7492
7493  [
7494 \begin_inset Flex CharStyle:Code
7495 status collapsed
7496
7497 \begin_layout Plain Layout
7498 int
7499 \end_layout
7500
7501 \end_inset
7502
7503 ] The format of the layout file.
7504 \end_layout
7505
7506 \begin_layout Standard
7507 This tag was introduced with LyX 1.4.0.
7508  Layout files from LyX 1.3.x and earlier don't have an explicit file format
7509  and are considered to be of format 1.
7510  The format for the present version of LyX is format 21.
7511  But each version of LyX is capable of reading earlier versions' layout
7512  files, just as they are capable of reading files produced by earlier versions
7513  of LyX.
7514  There is, however, no provision for converting to earlier formats.
7515  So LyX 1.6.x will not read layout files in format 21 but only files in format
7516  11 or earlier.
7517 \end_layout
7518
7519 \begin_layout Subsection
7520 \begin_inset CommandInset label
7521 LatexCommand label
7522 name "sub:General-text-class"
7523
7524 \end_inset
7525
7526 General text class parameters
7527 \end_layout
7528
7529 \begin_layout Standard
7530 These are general parameters that govern the behavior of an entire document
7531  class.
7532  (This does 
7533 \emph on
7534 not
7535 \emph default
7536  mean that they must appear in 
7537 \begin_inset Flex CharStyle:Code
7538 status collapsed
7539
7540 \begin_layout Plain Layout
7541 .layout
7542 \end_layout
7543
7544 \end_inset
7545
7546  files rather than in modules.
7547  A module can contain any layout tag.)
7548 \end_layout
7549
7550 \begin_layout Description
7551 \begin_inset Flex CharStyle:Code
7552 status collapsed
7553
7554 \begin_layout Plain Layout
7555 AddToHTMLPreamble
7556 \end_layout
7557
7558 \end_inset
7559
7560  Adds information that will be output in the 
7561 \begin_inset Flex CharStyle:Code
7562 status collapsed
7563
7564 \begin_layout Plain Layout
7565 <head>
7566 \end_layout
7567
7568 \end_inset
7569
7570  block when this document class is output to XHTML.
7571  Typically, this would be used to output CSS style information, but it can
7572  be used for anything that can appear in 
7573 \begin_inset Flex CharStyle:Code
7574 status collapsed
7575
7576 \begin_layout Plain Layout
7577 <head>
7578 \end_layout
7579
7580 \end_inset
7581
7582 .
7583  Must end with 
7584 \begin_inset Quotes eld
7585 \end_inset
7586
7587
7588 \begin_inset Flex CharStyle:Code
7589 status collapsed
7590
7591 \begin_layout Plain Layout
7592 EndPreamble
7593 \end_layout
7594
7595 \end_inset
7596
7597
7598 \begin_inset Quotes erd
7599 \end_inset
7600
7601 .
7602 \end_layout
7603
7604 \begin_layout Description
7605 \begin_inset Flex CharStyle:Code
7606 status collapsed
7607
7608 \begin_layout Plain Layout
7609 AddToPreamble
7610 \end_layout
7611
7612 \end_inset
7613
7614  Adds information to the document preamble.
7615  Must end with 
7616 \begin_inset Quotes eld
7617 \end_inset
7618
7619
7620 \begin_inset Flex CharStyle:Code
7621 status collapsed
7622
7623 \begin_layout Plain Layout
7624 EndPreamble
7625 \end_layout
7626
7627 \end_inset
7628
7629
7630 \begin_inset Quotes erd
7631 \end_inset
7632
7633 .
7634 \end_layout
7635
7636 \begin_layout Description
7637 \begin_inset Flex CharStyle:Code
7638 status collapsed
7639
7640 \begin_layout Plain Layout
7641 CiteFormat
7642 \end_layout
7643
7644 \end_inset
7645
7646  Defines formats for use in the display of bibliographic information.
7647  See Section for details.
7648  Must end with 
7649 \begin_inset Quotes eld
7650 \end_inset
7651
7652
7653 \begin_inset Flex CharStyle:Code
7654 status collapsed
7655
7656 \begin_layout Plain Layout
7657 End
7658 \end_layout
7659
7660 \end_inset
7661
7662
7663 \begin_inset Quotes erd
7664 \end_inset
7665
7666 .
7667 \end_layout
7668
7669 \begin_layout Description
7670 \begin_inset Flex CharStyle:Code
7671 status collapsed
7672
7673 \begin_layout Plain Layout
7674 ClassOptions
7675 \end_layout
7676
7677 \end_inset
7678
7679  Describes various global options supported by the document class.
7680  See Section
7681 \begin_inset space ~
7682 \end_inset
7683
7684
7685 \begin_inset CommandInset ref
7686 LatexCommand ref
7687 reference "sub:ClassOptions"
7688
7689 \end_inset
7690
7691  for a description.
7692  Must end with 
7693 \begin_inset Quotes eld
7694 \end_inset
7695
7696
7697 \begin_inset Flex CharStyle:Code
7698 status collapsed
7699
7700 \begin_layout Plain Layout
7701 End
7702 \end_layout
7703
7704 \end_inset
7705
7706
7707 \begin_inset Quotes erd
7708 \end_inset
7709
7710 .
7711 \end_layout
7712
7713 \begin_layout Description
7714 \begin_inset Flex CharStyle:Code
7715 status collapsed
7716
7717 \begin_layout Plain Layout
7718 Columns
7719 \end_layout
7720
7721 \end_inset
7722
7723  [
7724 \begin_inset Flex CharStyle:Code
7725 status collapsed
7726
7727 \begin_layout Plain Layout
7728
7729 \emph on
7730 1
7731 \end_layout
7732
7733 \end_inset
7734
7735
7736 \begin_inset Flex CharStyle:Code
7737 status collapsed
7738
7739 \begin_layout Plain Layout
7740 2
7741 \end_layout
7742
7743 \end_inset
7744
7745 ] Whether the class should 
7746 \emph on
7747 default
7748 \emph default
7749  to having one or two columns.
7750  Can be changed in the 
7751 \begin_inset Flex CharStyle:MenuItem
7752 status collapsed
7753
7754 \begin_layout Plain Layout
7755 Document\SpecialChar \menuseparator
7756 Settings
7757 \end_layout
7758
7759 \end_inset
7760
7761  dialog.
7762 \end_layout
7763
7764 \begin_layout Description
7765 \begin_inset Flex CharStyle:Code
7766 status collapsed
7767
7768 \begin_layout Plain Layout
7769 Counter
7770 \end_layout
7771
7772 \end_inset
7773
7774  [
7775 \begin_inset Flex CharStyle:Code
7776 status collapsed
7777
7778 \begin_layout Plain Layout
7779 string
7780 \end_layout
7781
7782 \end_inset
7783
7784 ] This sequence defines the properties for a counter.
7785  If the counter does not yet exist, it is created; if it does exist, it
7786  is modified.
7787  Must end with 
7788 \begin_inset Quotes eld
7789 \end_inset
7790
7791
7792 \begin_inset Flex CharStyle:Code
7793 status collapsed
7794
7795 \begin_layout Plain Layout
7796 End
7797 \end_layout
7798
7799 \end_inset
7800
7801
7802 \begin_inset Quotes erd
7803 \end_inset
7804
7805 .
7806 \begin_inset Newline newline
7807 \end_inset
7808
7809 See Section
7810 \begin_inset space ~
7811 \end_inset
7812
7813
7814 \begin_inset CommandInset ref
7815 LatexCommand ref
7816 reference "sub:Counters"
7817
7818 \end_inset
7819
7820  for details on counters.
7821 \end_layout
7822
7823 \begin_layout Description
7824 \begin_inset Flex CharStyle:Code
7825 status collapsed
7826
7827 \begin_layout Plain Layout
7828 DefaultFont
7829 \end_layout
7830
7831 \end_inset
7832
7833  Sets the default font used to display the document.
7834  See Section
7835 \begin_inset space ~
7836 \end_inset
7837
7838
7839 \begin_inset CommandInset ref
7840 LatexCommand ref
7841 reference "sub:Font-description"
7842
7843 \end_inset
7844
7845  for how to declare fonts.
7846  Must end with 
7847 \begin_inset Quotes eld
7848 \end_inset
7849
7850
7851 \begin_inset Flex CharStyle:Code
7852 status collapsed
7853
7854 \begin_layout Plain Layout
7855 EndFont
7856 \end_layout
7857
7858 \end_inset
7859
7860
7861 \begin_inset Quotes erd
7862 \end_inset
7863
7864 .
7865 \end_layout
7866
7867 \begin_layout Description
7868 \begin_inset Flex CharStyle:Code
7869 status collapsed
7870
7871 \begin_layout Plain Layout
7872 DefaultModule
7873 \end_layout
7874
7875 \end_inset
7876
7877  [
7878 \begin_inset Flex CharStyle:Code
7879 status collapsed
7880
7881 \begin_layout Plain Layout
7882 string]
7883 \end_layout
7884
7885 \end_inset
7886
7887  Specifies a module to be included by default with this document class.
7888  The module should be specified by filename without the 
7889 \begin_inset Flex CharStyle:Code
7890 status collapsed
7891
7892 \begin_layout Plain Layout
7893 .module
7894 \end_layout
7895
7896 \end_inset
7897
7898  extension.
7899  The user can still remove the module, but it will be active at the outset.
7900  (This applies only when new files are created, or when this class is chosen
7901  for an existing document.)
7902 \end_layout
7903
7904 \begin_layout Description
7905 \begin_inset Flex CharStyle:Code
7906 status collapsed
7907
7908 \begin_layout Plain Layout
7909 DefaultStyle
7910 \end_layout
7911
7912 \end_inset
7913
7914  [
7915 \begin_inset Flex CharStyle:Code
7916 status collapsed
7917
7918 \begin_layout Plain Layout
7919 string
7920 \end_layout
7921
7922 \end_inset
7923
7924 ] This is the style that will be assigned to new paragraphs, usually 
7925 \begin_inset Flex CharStyle:MenuItem
7926 status collapsed
7927
7928 \begin_layout Plain Layout
7929 Standard
7930 \end_layout
7931
7932 \end_inset
7933
7934 .
7935  This will default to the first defined style if not given, but you are
7936  encouraged to use this directive.
7937 \end_layout
7938
7939 \begin_layout Description
7940 \begin_inset Flex CharStyle:Code
7941 status collapsed
7942
7943 \begin_layout Plain Layout
7944 ExcludesModule
7945 \end_layout
7946
7947 \end_inset
7948
7949  [
7950 \begin_inset Flex CharStyle:Code
7951 status collapsed
7952
7953 \begin_layout Plain Layout
7954 string
7955 \end_layout
7956
7957 \end_inset
7958
7959 ] This tag indicates that the module in question—which should be specified
7960  by filename without the 
7961 \begin_inset Flex CharStyle:Code
7962 status collapsed
7963
7964 \begin_layout Plain Layout
7965 .module
7966 \end_layout
7967
7968 \end_inset
7969
7970  extension—cannot be used with this document class.
7971  This might be used in a journal-specific layout file to prevent, say, the
7972  use of the 
7973 \begin_inset Flex CharStyle:Code
7974 status collapsed
7975
7976 \begin_layout Plain Layout
7977 theorems-sec
7978 \end_layout
7979
7980 \end_inset
7981
7982  module that numbers theorems by section.
7983  This tag may 
7984 \emph on
7985 not
7986 \emph default
7987  be used in a module.
7988  Modules have their own way of excluding other modules (see 
7989 \begin_inset CommandInset ref
7990 LatexCommand ref
7991 reference "sub:Layout-modules"
7992
7993 \end_inset
7994
7995 ).
7996 \end_layout
7997
7998 \begin_layout Description
7999 \begin_inset Flex CharStyle:Code
8000 status collapsed
8001
8002 \begin_layout Plain Layout
8003 Float
8004 \end_layout
8005
8006 \end_inset
8007
8008  Defines a new float.
8009  See Section
8010 \begin_inset space ~
8011 \end_inset
8012
8013
8014 \begin_inset CommandInset ref
8015 LatexCommand ref
8016 reference "sub:Floats"
8017
8018 \end_inset
8019
8020  for details.
8021  Must end with 
8022 \begin_inset Quotes eld
8023 \end_inset
8024
8025
8026 \begin_inset Flex CharStyle:Code
8027 status collapsed
8028
8029 \begin_layout Plain Layout
8030 End
8031 \end_layout
8032
8033 \end_inset
8034
8035
8036 \begin_inset Quotes erd
8037 \end_inset
8038
8039 .
8040 \end_layout
8041
8042 \begin_layout Description
8043 \begin_inset Flex CharStyle:Code
8044 status collapsed
8045
8046 \begin_layout Plain Layout
8047 HTMLPreamble
8048 \end_layout
8049
8050 \end_inset
8051
8052  Sets the information that will be output in the 
8053 \begin_inset Flex CharStyle:Code
8054 status collapsed
8055
8056 \begin_layout Plain Layout
8057 <head>
8058 \end_layout
8059
8060 \end_inset
8061
8062  block when this document class is output to XHTML.
8063  Note that this will completely override any prior 
8064 \begin_inset Flex CharStyle:Code
8065 status collapsed
8066
8067 \begin_layout Plain Layout
8068 HTMLPreamble
8069 \end_layout
8070
8071 \end_inset
8072
8073  or 
8074 \begin_inset Flex CharStyle:Code
8075 status collapsed
8076
8077 \begin_layout Plain Layout
8078 AddToHTMLPreamble
8079 \end_layout
8080
8081 \end_inset
8082
8083  declarations.
8084  (Use 
8085 \begin_inset Flex CharStyle:Code
8086 status collapsed
8087
8088 \begin_layout Plain Layout
8089 AddToHTMLPreamble
8090 \end_layout
8091
8092 \end_inset
8093
8094  if you just want to add material to the preamble.) Must end with 
8095 \begin_inset Quotes eld
8096 \end_inset
8097
8098
8099 \begin_inset Flex CharStyle:Code
8100 status collapsed
8101
8102 \begin_layout Plain Layout
8103 EndPreamble
8104 \end_layout
8105
8106 \end_inset
8107
8108
8109 \begin_inset Quotes erd
8110 \end_inset
8111
8112 .
8113 \end_layout
8114
8115 \begin_layout Description
8116 \begin_inset Flex CharStyle:Code
8117 status collapsed
8118
8119 \begin_layout Plain Layout
8120 HTMLTOCSection
8121 \end_layout
8122
8123 \end_inset
8124
8125  [
8126 \begin_inset Flex CharStyle:Code
8127 status collapsed
8128
8129 \begin_layout Plain Layout
8130 string
8131 \end_layout
8132
8133 \end_inset
8134
8135 ] The layout to use for the table of contents, bibliography, and so forth,
8136  when the document is output to HTML.
8137  For articles, this should normally be Section; for books, Chapter.
8138  If it is not given, then LyX will attempt to figure out which layout to
8139  use.
8140 \end_layout
8141
8142 \begin_layout Description
8143 \begin_inset Flex CharStyle:Code
8144 status collapsed
8145
8146 \begin_layout Plain Layout
8147 IfCounter
8148 \end_layout
8149
8150 \end_inset
8151
8152  [
8153 \begin_inset Flex CharStyle:Code
8154 status collapsed
8155
8156 \begin_layout Plain Layout
8157 string
8158 \end_layout
8159
8160 \end_inset
8161
8162 ] Modifies the properties of the given counter.
8163  If the counter does not exist, the section is ignored.
8164  Must end with 
8165 \begin_inset Quotes eld
8166 \end_inset
8167
8168
8169 \begin_inset Flex CharStyle:Code
8170 status collapsed
8171
8172 \begin_layout Plain Layout
8173 End
8174 \end_layout
8175
8176 \end_inset
8177
8178
8179 \begin_inset Quotes erd
8180 \end_inset
8181
8182 .
8183 \begin_inset Newline newline
8184 \end_inset
8185
8186 See Section
8187 \begin_inset space ~
8188 \end_inset
8189
8190
8191 \begin_inset CommandInset ref
8192 LatexCommand ref
8193 reference "sub:Counters"
8194
8195 \end_inset
8196
8197  for details on counters.
8198 \end_layout
8199
8200 \begin_layout Description
8201 \begin_inset Flex CharStyle:Code
8202 status collapsed
8203
8204 \begin_layout Plain Layout
8205 IfStyle
8206 \end_layout
8207
8208 \end_inset
8209
8210  [
8211 \begin_inset Flex CharStyle:Code
8212 status collapsed
8213
8214 \begin_layout Plain Layout
8215 string
8216 \end_layout
8217
8218 \end_inset
8219
8220 ] Modifies the properties of the given paragraph style.
8221  If the style does not exist, the section is ignored.
8222  Must end with 
8223 \begin_inset Quotes eld
8224 \end_inset
8225
8226
8227 \begin_inset Flex CharStyle:Code
8228 status collapsed
8229
8230 \begin_layout Plain Layout
8231 End
8232 \end_layout
8233
8234 \end_inset
8235
8236
8237 \begin_inset Quotes erd
8238 \end_inset
8239
8240 .
8241 \end_layout
8242
8243 \begin_layout Description
8244 \begin_inset Flex CharStyle:Code
8245 status collapsed
8246
8247 \begin_layout Plain Layout
8248 Input
8249 \end_layout
8250
8251 \end_inset
8252
8253  As its name implies, this command allows you to include another layout
8254  definition file within yours to avoid duplicating commands.
8255  Common examples are the standard layout files, for example, 
8256 \begin_inset Flex CharStyle:Code
8257 status collapsed
8258
8259 \begin_layout Plain Layout
8260 stdclass.inc
8261 \end_layout
8262
8263 \end_inset
8264
8265 , which contains most of the basic layouts.
8266 \end_layout
8267
8268 \begin_layout Description
8269 \begin_inset Flex CharStyle:Code
8270 status collapsed
8271
8272 \begin_layout Plain Layout
8273 InsetLayout
8274 \end_layout
8275
8276 \end_inset
8277
8278  This section (re-)defines the layout of an inset.
8279  It can be applied to an existing inset or to a new, user-defined inset,
8280  e.g., a new character style.
8281  Must end with 
8282 \begin_inset Quotes eld
8283 \end_inset
8284
8285
8286 \begin_inset Flex CharStyle:Code
8287 status collapsed
8288
8289 \begin_layout Plain Layout
8290 End
8291 \end_layout
8292
8293 \end_inset
8294
8295
8296 \begin_inset Quotes erd
8297 \end_inset
8298
8299 .
8300 \begin_inset Newline newline
8301 \end_inset
8302
8303 See Section
8304 \begin_inset space ~
8305 \end_inset
8306
8307
8308 \begin_inset CommandInset ref
8309 LatexCommand ref
8310 reference "sub:Flex-insets-and"
8311
8312 \end_inset
8313
8314  for more information.
8315  
8316 \end_layout
8317
8318 \begin_layout Description
8319 \begin_inset Flex CharStyle:Code
8320 status collapsed
8321
8322 \begin_layout Plain Layout
8323 LeftMargin
8324 \end_layout
8325
8326 \end_inset
8327
8328  [
8329 \begin_inset Flex CharStyle:Code
8330 status collapsed
8331
8332 \begin_layout Plain Layout
8333 string
8334 \end_layout
8335
8336 \end_inset
8337
8338 ] A string that indicates the width of the left margin on the screen, for
8339  example, 
8340 \begin_inset Quotes eld
8341 \end_inset
8342
8343 MMMMM
8344 \begin_inset Quotes erd
8345 \end_inset
8346
8347 .
8348  (Note that this is not a `length', like 
8349 \begin_inset Quotes eld
8350 \end_inset
8351
8352 2ex
8353 \begin_inset Quotes erd
8354 \end_inset
8355
8356 .)
8357 \end_layout
8358
8359 \begin_layout Description
8360 \begin_inset Flex CharStyle:Code
8361 status collapsed
8362
8363 \begin_layout Plain Layout
8364 NoFloat
8365 \end_layout
8366
8367 \end_inset
8368
8369  This command deletes an existing float.
8370  This is particularly useful when you want to suppress a float that has
8371  been defined in an input file.
8372 \end_layout
8373
8374 \begin_layout Description
8375 \begin_inset Flex CharStyle:Code
8376 status collapsed
8377
8378 \begin_layout Plain Layout
8379 NoStyle
8380 \end_layout
8381
8382 \end_inset
8383
8384  This command deletes an existing style.
8385  This is particularly useful when you want to suppress a style that has
8386  be defined in an input file.
8387 \end_layout
8388
8389 \begin_layout Description
8390 \begin_inset Flex CharStyle:Code
8391 status collapsed
8392
8393 \begin_layout Plain Layout
8394 OutputFormat
8395 \end_layout
8396
8397 \end_inset
8398
8399  A string indicating the file format (as defined in the Preferences dialog)
8400  produced by this class.
8401  It is mainly useful when 
8402 \begin_inset Flex CharStyle:Code
8403 status collapsed
8404
8405 \begin_layout Plain Layout
8406 OutputType
8407 \end_layout
8408
8409 \end_inset
8410
8411  is `literate' and one wants to define a new type of literate document.
8412  This string is reset to `docbook', `latex', or `literate' when the correspondin
8413
8414 \begin_inset Flex CharStyle:Code
8415 status collapsed
8416
8417 \begin_layout Plain Layout
8418 OutputType
8419 \end_layout
8420
8421 \end_inset
8422
8423  parameter is encountered.
8424 \end_layout
8425
8426 \begin_layout Description
8427 \begin_inset Flex CharStyle:Code
8428 status collapsed
8429
8430 \begin_layout Plain Layout
8431 OutputType
8432 \end_layout
8433
8434 \end_inset
8435
8436  A string indicating what sort of output documents using this class will
8437  produce.
8438  At present, the options are: `docbook', `latex', and `literate'.
8439 \end_layout
8440
8441 \begin_layout Description
8442 \begin_inset Flex CharStyle:Code
8443 status collapsed
8444
8445 \begin_layout Plain Layout
8446 PageStyle
8447 \end_layout
8448
8449 \end_inset
8450
8451  [
8452 \begin_inset Flex CharStyle:Code
8453 status collapsed
8454
8455 \begin_layout Plain Layout
8456
8457 \emph on
8458 plain
8459 \end_layout
8460
8461 \end_inset
8462
8463
8464 \begin_inset Flex CharStyle:Code
8465 status collapsed
8466
8467 \begin_layout Plain Layout
8468 empty
8469 \end_layout
8470
8471 \end_inset
8472
8473
8474 \begin_inset Flex CharStyle:Code
8475 status collapsed
8476
8477 \begin_layout Plain Layout
8478 headings
8479 \end_layout
8480
8481 \end_inset
8482
8483 ] The default pagestyle.
8484  Can be changed in the 
8485 \begin_inset Flex CharStyle:MenuItem
8486 status collapsed
8487
8488 \begin_layout Plain Layout
8489 Document\SpecialChar \menuseparator
8490 Settings
8491 \end_layout
8492
8493 \end_inset
8494
8495  dialog.
8496 \end_layout
8497
8498 \begin_layout Description
8499 \begin_inset Flex CharStyle:Code
8500 status collapsed
8501
8502 \begin_layout Plain Layout
8503 Preamble
8504 \end_layout
8505
8506 \end_inset
8507
8508  Sets the preamble for the LaTeX document.
8509  Note that this will completely override any prior 
8510 \begin_inset Flex CharStyle:Code
8511 status collapsed
8512
8513 \begin_layout Plain Layout
8514 Preamble
8515 \end_layout
8516
8517 \end_inset
8518
8519  or 
8520 \begin_inset Flex CharStyle:Code
8521 status collapsed
8522
8523 \begin_layout Plain Layout
8524 AddToPreamble
8525 \end_layout
8526
8527 \end_inset
8528
8529  declarations.
8530  (Use 
8531 \begin_inset Flex CharStyle:Code
8532 status collapsed
8533
8534 \begin_layout Plain Layout
8535 AddToPreamble
8536 \end_layout
8537
8538 \end_inset
8539
8540  if you just want to add material to the preamble.) Must end with 
8541 \begin_inset Quotes eld
8542 \end_inset
8543
8544
8545 \begin_inset Flex CharStyle:Code
8546 status collapsed
8547
8548 \begin_layout Plain Layout
8549 EndPreamble
8550 \end_layout
8551
8552 \end_inset
8553
8554
8555 \begin_inset Quotes erd
8556 \end_inset
8557
8558 .
8559 \end_layout
8560
8561 \begin_layout Description
8562 \begin_inset Flex CharStyle:Code
8563 status collapsed
8564
8565 \begin_layout Plain Layout
8566 Provides
8567 \end_layout
8568
8569 \end_inset
8570
8571  [
8572 \begin_inset Flex CharStyle:Code
8573 status collapsed
8574
8575 \begin_layout Plain Layout
8576 string
8577 \end_layout
8578
8579 \end_inset
8580
8581 ] [
8582 \begin_inset Flex CharStyle:Code
8583 status collapsed
8584
8585 \begin_layout Plain Layout
8586
8587 \emph on
8588 0
8589 \end_layout
8590
8591 \end_inset
8592
8593
8594 \begin_inset Flex CharStyle:Code
8595 status collapsed
8596
8597 \begin_layout Plain Layout
8598 1
8599 \end_layout
8600
8601 \end_inset
8602
8603 ] Whether the class already provides the feature 
8604 \begin_inset Flex CharStyle:Code
8605 status collapsed
8606
8607 \begin_layout Plain Layout
8608 string
8609 \end_layout
8610
8611 \end_inset
8612
8613 .
8614  A feature is in general the name of a package (
8615 \begin_inset Flex CharStyle:Code
8616 status collapsed
8617
8618 \begin_layout Plain Layout
8619 amsmath
8620 \end_layout
8621
8622 \end_inset
8623
8624
8625 \begin_inset Flex CharStyle:Code
8626 status collapsed
8627
8628 \begin_layout Plain Layout
8629 makeidx
8630 \end_layout
8631
8632 \end_inset
8633
8634 , \SpecialChar \ldots{}
8635 ) or a macro (
8636 \begin_inset Flex CharStyle:Code
8637 status collapsed
8638
8639 \begin_layout Plain Layout
8640 url
8641 \end_layout
8642
8643 \end_inset
8644
8645
8646 \begin_inset Flex CharStyle:Code
8647 status collapsed
8648
8649 \begin_layout Plain Layout
8650 boldsymbol
8651 \end_layout
8652
8653 \end_inset
8654
8655 ,\SpecialChar \ldots{}
8656 ); the complete list of supported features is unfortunately not documented
8657  outside the LyX source code—but see 
8658 \begin_inset Flex CharStyle:Code
8659 status collapsed
8660
8661 \begin_layout Plain Layout
8662 LaTeXFeatures.cpp
8663 \end_layout
8664
8665 \end_inset
8666
8667  if you're interested.
8668  
8669 \begin_inset Flex CharStyle:MenuItem
8670 status collapsed
8671
8672 \begin_layout Plain Layout
8673 Help\SpecialChar \menuseparator
8674 LaTeX Configuration
8675 \end_layout
8676
8677 \end_inset
8678
8679  also gives an overview of the supported packages.
8680 \end_layout
8681
8682 \begin_layout Description
8683 \begin_inset Flex CharStyle:Code
8684 status collapsed
8685
8686 \begin_layout Plain Layout
8687 ProvidesModule
8688 \end_layout
8689
8690 \end_inset
8691
8692  [
8693 \begin_inset Flex CharStyle:Code
8694 status collapsed
8695
8696 \begin_layout Plain Layout
8697 string
8698 \end_layout
8699
8700 \end_inset
8701
8702 ] Indicates that this layout provides the functionality of the module mentioned,
8703  which should be specified by the filename without the 
8704 \begin_inset Flex CharStyle:Code
8705 status collapsed
8706
8707 \begin_layout Plain Layout
8708 .module
8709 \end_layout
8710
8711 \end_inset
8712
8713  extension.
8714  This will typically be used if the layout includes the module directly,
8715  rather than using the 
8716 \begin_inset Flex CharStyle:Code
8717 status collapsed
8718
8719 \begin_layout Plain Layout
8720 DefaultModule
8721 \end_layout
8722
8723 \end_inset
8724
8725  tag to indicate that it ought to be used.
8726  It could also be used in a module that provided an alternate implementation
8727  of the same functionality.
8728 \end_layout
8729
8730 \begin_layout Description
8731 \begin_inset Flex CharStyle:Code
8732 status collapsed
8733
8734 \begin_layout Plain Layout
8735 Requires
8736 \end_layout
8737
8738 \end_inset
8739
8740  [
8741 \begin_inset Flex CharStyle:Code
8742 status collapsed
8743
8744 \begin_layout Plain Layout
8745 string
8746 \end_layout
8747
8748 \end_inset
8749
8750 ] Whether the class requires the feature 
8751 \begin_inset Flex CharStyle:Code
8752 status collapsed
8753
8754 \begin_layout Plain Layout
8755 string
8756 \end_layout
8757
8758 \end_inset
8759
8760 .
8761  Multiple features must be separated by commas.
8762  Note that you can only request supported features.
8763  (Again, see 
8764 \begin_inset Flex CharStyle:Code
8765 status collapsed
8766
8767 \begin_layout Plain Layout
8768 LaTeXFeatures.cpp
8769 \end_layout
8770
8771 \end_inset
8772
8773  for a list of these.)
8774 \end_layout
8775
8776 \begin_layout Description
8777 \begin_inset Flex CharStyle:Code
8778 status collapsed
8779
8780 \begin_layout Plain Layout
8781 RightMargin
8782 \end_layout
8783
8784 \end_inset
8785
8786  A string that indicates the width of the right margin on the screen, for
8787  example, 
8788 \begin_inset Quotes eld
8789 \end_inset
8790
8791 MMMMM
8792 \begin_inset Quotes erd
8793 \end_inset
8794
8795 .
8796 \end_layout
8797
8798 \begin_layout Description
8799 \begin_inset Flex CharStyle:Code
8800 status collapsed
8801
8802 \begin_layout Plain Layout
8803 SecNumDepth
8804 \end_layout
8805
8806 \end_inset
8807
8808  Sets which divisions get numbered.
8809  Corresponds to the 
8810 \begin_inset Flex CharStyle:Code
8811 status collapsed
8812
8813 \begin_layout Plain Layout
8814 secnumdepth
8815 \end_layout
8816
8817 \end_inset
8818
8819  counter in LaTeX.
8820 \end_layout
8821
8822 \begin_layout Description
8823 \begin_inset Flex CharStyle:Code
8824 status collapsed
8825
8826 \begin_layout Plain Layout
8827 Sides
8828 \end_layout
8829
8830 \end_inset
8831
8832  [
8833 \begin_inset Flex CharStyle:Code
8834 status collapsed
8835
8836 \begin_layout Plain Layout
8837
8838 \emph on
8839 1
8840 \end_layout
8841
8842 \end_inset
8843
8844
8845 \begin_inset Flex CharStyle:Code
8846 status collapsed
8847
8848 \begin_layout Plain Layout
8849 2
8850 \end_layout
8851
8852 \end_inset
8853
8854 ] Whether the class-default should be printing on one or both sides of the
8855  paper.
8856  Can be changed in the 
8857 \begin_inset Flex CharStyle:MenuItem
8858 status collapsed
8859
8860 \begin_layout Plain Layout
8861 Document\SpecialChar \menuseparator
8862 Settings
8863 \end_layout
8864
8865 \end_inset
8866
8867  dialog.
8868 \end_layout
8869
8870 \begin_layout Description
8871 \begin_inset Flex CharStyle:Code
8872 status collapsed
8873
8874 \begin_layout Plain Layout
8875 Style
8876 \end_layout
8877
8878 \end_inset
8879
8880  This sequence defines a paragraph style.
8881  If the style does not yet exist, it is created; if it does exist, its parameter
8882 s are modified.
8883  Must end with 
8884 \begin_inset Quotes eld
8885 \end_inset
8886
8887
8888 \begin_inset Flex CharStyle:Code
8889 status collapsed
8890
8891 \begin_layout Plain Layout
8892 End
8893 \end_layout
8894
8895 \end_inset
8896
8897
8898 \begin_inset Quotes erd
8899 \end_inset
8900
8901 .
8902 \begin_inset Newline newline
8903 \end_inset
8904
8905 See Section
8906 \begin_inset space ~
8907 \end_inset
8908
8909
8910 \begin_inset CommandInset ref
8911 LatexCommand ref
8912 reference "sub:Paragraph-Styles"
8913
8914 \end_inset
8915
8916  for details on paragraph styles.
8917 \end_layout
8918
8919 \begin_layout Description
8920 \begin_inset Flex CharStyle:Code
8921 status collapsed
8922
8923 \begin_layout Plain Layout
8924 TitleLatexName
8925 \end_layout
8926
8927 \end_inset
8928
8929  [
8930 \begin_inset Flex CharStyle:Code
8931 status collapsed
8932
8933 \begin_layout Plain Layout
8934 string="maketitle"
8935 \end_layout
8936
8937 \end_inset
8938
8939 ] The name of the command or environment to be used with 
8940 \begin_inset Flex CharStyle:Code
8941 status collapsed
8942
8943 \begin_layout Plain Layout
8944 TitleLatexType
8945 \end_layout
8946
8947 \end_inset
8948
8949 .
8950 \end_layout
8951
8952 \begin_layout Description
8953 \begin_inset Flex CharStyle:Code
8954 status collapsed
8955
8956 \begin_layout Plain Layout
8957 TitleLatexType
8958 \end_layout
8959
8960 \end_inset
8961
8962  [
8963 \begin_inset Flex CharStyle:Code
8964 status collapsed
8965
8966 \begin_layout Plain Layout
8967
8968 \emph on
8969 CommandAfter
8970 \end_layout
8971
8972 \end_inset
8973
8974
8975 \begin_inset Flex CharStyle:Code
8976 status collapsed
8977
8978 \begin_layout Plain Layout
8979 Environment
8980 \end_layout
8981
8982 \end_inset
8983
8984 ] Indicates what kind of markup is used to define the title of a document.
8985  
8986 \begin_inset Flex CharStyle:Code
8987 status collapsed
8988
8989 \begin_layout Plain Layout
8990 CommandAfter
8991 \end_layout
8992
8993 \end_inset
8994
8995  means that the macro with name 
8996 \begin_inset Flex CharStyle:Code
8997 status collapsed
8998
8999 \begin_layout Plain Layout
9000 TitleLatexName
9001 \end_layout
9002
9003 \end_inset
9004
9005  will be inserted after the last layout which has 
9006 \begin_inset Quotes eld
9007 \end_inset
9008
9009
9010 \begin_inset Flex CharStyle:Code
9011 status collapsed
9012
9013 \begin_layout Plain Layout
9014 InTitle 1
9015 \end_layout
9016
9017 \end_inset
9018
9019
9020 \begin_inset Quotes erd
9021 \end_inset
9022
9023 .
9024  
9025 \begin_inset Flex CharStyle:Code
9026 status collapsed
9027
9028 \begin_layout Plain Layout
9029 Environment
9030 \end_layout
9031
9032 \end_inset
9033
9034  corresponds to the case where the block of paragraphs which have 
9035 \begin_inset Quotes eld
9036 \end_inset
9037
9038
9039 \begin_inset Flex CharStyle:Code
9040 status collapsed
9041
9042 \begin_layout Plain Layout
9043 InTitle 1
9044 \end_layout
9045
9046 \end_inset
9047
9048
9049 \begin_inset Quotes erd
9050 \end_inset
9051
9052  should be enclosed into the 
9053 \begin_inset Flex CharStyle:Code
9054 status collapsed
9055
9056 \begin_layout Plain Layout
9057 TitleLatexName
9058 \end_layout
9059
9060 \end_inset
9061
9062  environment.
9063 \end_layout
9064
9065 \begin_layout Description
9066 \begin_inset Flex CharStyle:Code
9067 status collapsed
9068
9069 \begin_layout Plain Layout
9070 TocDepth
9071 \end_layout
9072
9073 \end_inset
9074
9075  Sets which divisions are included in the table of contents.
9076  Corresponds to the 
9077 \begin_inset Flex CharStyle:Code
9078 status collapsed
9079
9080 \begin_layout Plain Layout
9081 tocdepth
9082 \end_layout
9083
9084 \end_inset
9085
9086  counter in LaTeX.
9087 \end_layout
9088
9089 \begin_layout Subsection
9090 \begin_inset Flex CharStyle:Code
9091 status collapsed
9092
9093 \begin_layout Plain Layout
9094 ClassOptions
9095 \end_layout
9096
9097 \end_inset
9098
9099  section
9100 \begin_inset CommandInset label
9101 LatexCommand label
9102 name "sub:ClassOptions"
9103
9104 \end_inset
9105
9106
9107 \end_layout
9108
9109 \begin_layout Standard
9110 The 
9111 \begin_inset Flex CharStyle:Code
9112 status collapsed
9113
9114 \begin_layout Plain Layout
9115 ClassOptions
9116 \end_layout
9117
9118 \end_inset
9119
9120  section can contain the following entries:
9121 \end_layout
9122
9123 \begin_layout Description
9124 \begin_inset Flex CharStyle:Code
9125 status collapsed
9126
9127 \begin_layout Plain Layout
9128 FontSize
9129 \end_layout
9130
9131 \end_inset
9132
9133  [
9134 \begin_inset Flex CharStyle:Code
9135 status collapsed
9136
9137 \begin_layout Plain Layout
9138 string="10|11|12"
9139 \end_layout
9140
9141 \end_inset
9142
9143 ] The list of available font sizes for the document's main font, separated
9144  by 
9145 \begin_inset Quotes eld
9146 \end_inset
9147
9148
9149 \begin_inset Flex CharStyle:Code
9150 status collapsed
9151
9152 \begin_layout Plain Layout
9153 |
9154 \end_layout
9155
9156 \end_inset
9157
9158
9159 \begin_inset Quotes erd
9160 \end_inset
9161
9162 .
9163 \end_layout
9164
9165 \begin_layout Description
9166 \begin_inset Flex CharStyle:Code
9167 status collapsed
9168
9169 \begin_layout Plain Layout
9170 Header
9171 \end_layout
9172
9173 \end_inset
9174
9175  Used to set the DTD line with XML-based output classes.
9176  E.
9177 \begin_inset space \thinspace{}
9178 \end_inset
9179
9180 g.: PUBLIC 
9181 \begin_inset Quotes eld
9182 \end_inset
9183
9184 -//OASIS//DTD DocBook V4.2//EN
9185 \begin_inset Quotes erd
9186 \end_inset
9187
9188 .
9189 \end_layout
9190
9191 \begin_layout Description
9192 \begin_inset Flex CharStyle:Code
9193 status collapsed
9194
9195 \begin_layout Plain Layout
9196 PageStyle
9197 \end_layout
9198
9199 \end_inset
9200
9201  [
9202 \begin_inset Flex CharStyle:Code
9203 status collapsed
9204
9205 \begin_layout Plain Layout
9206 string="empty|plain|headings|fancy"
9207 \end_layout
9208
9209 \end_inset
9210
9211 ] The list of available page styles, separated by 
9212 \begin_inset Quotes eld
9213 \end_inset
9214
9215
9216 \begin_inset Flex CharStyle:Code
9217 status collapsed
9218
9219 \begin_layout Plain Layout
9220 |
9221 \end_layout
9222
9223 \end_inset
9224
9225
9226 \begin_inset Quotes erd
9227 \end_inset
9228
9229 .
9230 \end_layout
9231
9232 \begin_layout Description
9233 \begin_inset Flex CharStyle:Code
9234 status collapsed
9235
9236 \begin_layout Plain Layout
9237 Other
9238 \end_layout
9239
9240 \end_inset
9241
9242  [
9243 \begin_inset Flex CharStyle:Code
9244 status collapsed
9245
9246 \begin_layout Plain Layout
9247 string=""
9248 \end_layout
9249
9250 \end_inset
9251
9252 ] Some document class options, separated by a comma, that will be added
9253  to the optional part of the 
9254 \begin_inset Flex CharStyle:Code
9255 status collapsed
9256
9257 \begin_layout Plain Layout
9258
9259 \backslash
9260 documentclass
9261 \end_layout
9262
9263 \end_inset
9264
9265  command.
9266 \end_layout
9267
9268 \begin_layout Standard
9269 The 
9270 \begin_inset Flex CharStyle:Code
9271 status collapsed
9272
9273 \begin_layout Plain Layout
9274 ClassOptions
9275 \end_layout
9276
9277 \end_inset
9278
9279  section must end with 
9280 \begin_inset Quotes eld
9281 \end_inset
9282
9283
9284 \begin_inset Flex CharStyle:Code
9285 status collapsed
9286
9287 \begin_layout Plain Layout
9288 End
9289 \end_layout
9290
9291 \end_inset
9292
9293
9294 \begin_inset Quotes erd
9295 \end_inset
9296
9297 .
9298 \end_layout
9299
9300 \begin_layout Subsection
9301 Paragraph styles
9302 \begin_inset CommandInset label
9303 LatexCommand label
9304 name "sub:Paragraph-Styles"
9305
9306 \end_inset
9307
9308
9309 \end_layout
9310
9311 \begin_layout Standard
9312 A paragraph style description looks like this:
9313 \begin_inset Foot
9314 status collapsed
9315
9316 \begin_layout Plain Layout
9317 Note that this will either define a new layout or modify an existing one.
9318 \end_layout
9319
9320 \end_inset
9321
9322
9323 \end_layout
9324
9325 \begin_layout LyX-Code
9326 Style 
9327 \family roman
9328 \emph on
9329 name
9330 \end_layout
9331
9332 \begin_layout LyX-Code
9333  ...
9334 \end_layout
9335
9336 \begin_layout LyX-Code
9337 End
9338 \end_layout
9339
9340 \begin_layout Standard
9341 where the following commands are allowed:
9342 \end_layout
9343
9344 \begin_layout Description
9345 \begin_inset Flex CharStyle:Code
9346 status collapsed
9347
9348 \begin_layout Plain Layout
9349 Align
9350 \end_layout
9351
9352 \end_inset
9353
9354  [
9355 \begin_inset Flex CharStyle:Code
9356 status collapsed
9357
9358 \begin_layout Plain Layout
9359
9360 \emph on
9361 block
9362 \emph default
9363 , left, right, center
9364 \end_layout
9365
9366 \end_inset
9367
9368 ] Paragraph alignment.
9369 \end_layout
9370
9371 \begin_layout Description
9372 \begin_inset Flex CharStyle:Code
9373 status collapsed
9374
9375 \begin_layout Plain Layout
9376 AlignPossible
9377 \end_layout
9378
9379 \end_inset
9380
9381  [
9382 \begin_inset Flex CharStyle:Code
9383 status collapsed
9384
9385 \begin_layout Plain Layout
9386
9387 \emph on
9388 block
9389 \emph default
9390 , left, right, center
9391 \end_layout
9392
9393 \end_inset
9394
9395 ] A comma separated list of permitted alignments.
9396  (Some LaTeX styles prohibit certain alignments, since those wouldn't make
9397  sense.
9398  For example a right-aligned or centered enumeration isn't possible.)
9399 \end_layout
9400
9401 \begin_layout Description
9402 \begin_inset Flex CharStyle:Code
9403 status collapsed
9404
9405 \begin_layout Plain Layout
9406 BabelPreamble
9407 \end_layout
9408
9409 \end_inset
9410
9411  Language dependent information to be included in the LaTeX preamble when
9412  this style is used.
9413  Note that this will completely override any prior 
9414 \begin_inset Flex CharStyle:Code
9415 status collapsed
9416
9417 \begin_layout Plain Layout
9418 BabelPreamble
9419 \end_layout
9420
9421 \end_inset
9422
9423  declarations.
9424  Must end with 
9425 \begin_inset Quotes eld
9426 \end_inset
9427
9428
9429 \begin_inset Flex CharStyle:Code
9430 status collapsed
9431
9432 \begin_layout Plain Layout
9433 EndBabelPreamble
9434 \end_layout
9435
9436 \end_inset
9437
9438
9439 \begin_inset Quotes erd
9440 \end_inset
9441
9442 .
9443  The contents of this tag will occur once in the LaTeX preamble for each
9444  language used by the document.
9445  Each time, the following substitutions are made:
9446 \end_layout
9447
9448 \begin_deeper
9449 \begin_layout Itemize
9450 \begin_inset Flex CharStyle:Code
9451 status collapsed
9452
9453 \begin_layout Plain Layout
9454 $$lang
9455 \end_layout
9456
9457 \end_inset
9458
9459  is replaced by the language name (as used by the babel package).
9460 \end_layout
9461
9462 \begin_layout Itemize
9463 The 
9464 \begin_inset Quotes eld
9465 \end_inset
9466
9467 Function
9468 \begin_inset Quotes erd
9469 \end_inset
9470
9471  
9472 \begin_inset Flex CharStyle:Code
9473 status collapsed
9474
9475 \begin_layout Plain Layout
9476 _()
9477 \end_layout
9478
9479 \end_inset
9480
9481  replaces its argument by the translation of the argument to the current
9482  language.
9483 \end_layout
9484
9485 \begin_layout Standard
9486 This preamble snippet will only be used if the document contains more than
9487  one language and the babel package is used.
9488 \end_layout
9489
9490 \end_deeper
9491 \begin_layout Description
9492 \begin_inset Flex CharStyle:Code
9493 status collapsed
9494
9495 \begin_layout Plain Layout
9496 BottomSep
9497 \end_layout
9498
9499 \end_inset
9500
9501  [
9502 \begin_inset Flex CharStyle:Code
9503 status collapsed
9504
9505 \begin_layout Plain Layout
9506 float=0
9507 \end_layout
9508
9509 \end_inset
9510
9511 ]
9512 \begin_inset Foot
9513 status collapsed
9514
9515 \begin_layout Plain Layout
9516 Note that a `float' here is a real number, such as: 1.5.
9517 \end_layout
9518
9519 \end_inset
9520
9521  The vertical space with which the last of a chain of paragraphs with this
9522  layout is separated from the following paragraph.
9523  If the next paragraph has another layout, the separations are not simply
9524  added, but the maximum is taken.
9525 \end_layout
9526
9527 \begin_layout Description
9528 \begin_inset Flex CharStyle:Code
9529 status collapsed
9530
9531 \begin_layout Plain Layout
9532 Category
9533 \end_layout
9534
9535 \end_inset
9536
9537  
9538 \begin_inset Flex CharStyle:Code
9539 status collapsed
9540
9541 \begin_layout Plain Layout
9542 [string]
9543 \end_layout
9544
9545 \end_inset
9546
9547  The category for this style.
9548  This is used to group related styles in the Layout combobox on the toolbar.
9549  Any string can be used, but you may want to use existing categories with
9550  your own styles.
9551  
9552 \end_layout
9553
9554 \begin_layout Description
9555 \begin_inset Flex CharStyle:Code
9556 status collapsed
9557
9558 \begin_layout Plain Layout
9559 CommandDepth
9560 \end_layout
9561
9562 \end_inset
9563
9564  Depth of XML command.
9565  Used only with XML-type formats.
9566 \end_layout
9567
9568 \begin_layout Description
9569 \begin_inset Flex CharStyle:Code
9570 status collapsed
9571
9572 \begin_layout Plain Layout
9573 CopyStyle
9574 \end_layout
9575
9576 \end_inset
9577
9578  
9579 \begin_inset CommandInset label
9580 LatexCommand label
9581 name "des:CopyStyle"
9582
9583 \end_inset
9584
9585
9586 \begin_inset Flex CharStyle:Code
9587 status collapsed
9588
9589 \begin_layout Plain Layout
9590 [string]
9591 \end_layout
9592
9593 \end_inset
9594
9595  Copies all the features of an existing style into the current one.
9596  
9597 \end_layout
9598
9599 \begin_layout Description
9600 \begin_inset Flex CharStyle:Code
9601 status collapsed
9602
9603 \begin_layout Plain Layout
9604 DependsOn
9605 \end_layout
9606
9607 \end_inset
9608
9609  The name of a style whose preamble should be output 
9610 \emph on
9611 before
9612 \emph default
9613  this one.
9614  This allows to ensure some ordering of the preamble snippets when macros
9615  definitions depend on one another.
9616 \begin_inset Foot
9617 status collapsed
9618
9619 \begin_layout Plain Layout
9620 Note that, besides that functionality, there is no way to ensure any ordering
9621  of preambles.
9622  The ordering that you see in a given version of LyX may change without
9623  warning in later versions.
9624 \end_layout
9625
9626 \end_inset
9627
9628
9629 \end_layout
9630
9631 \begin_layout Description
9632 \begin_inset Flex CharStyle:Code
9633 status collapsed
9634
9635 \begin_layout Plain Layout
9636 EndLabeltype
9637 \end_layout
9638
9639 \end_inset
9640
9641  [
9642 \begin_inset Flex CharStyle:Code
9643 status collapsed
9644
9645 \begin_layout Plain Layout
9646
9647 \emph on
9648 No_Label
9649 \emph default
9650 , Box, Filled_Box, Static
9651 \end_layout
9652
9653 \end_inset
9654
9655 ] The type of label that stands at the end of the paragraph (or sequence
9656  of paragraphs if 
9657 \begin_inset Flex CharStyle:Code
9658 status collapsed
9659
9660 \begin_layout Plain Layout
9661 LatexType
9662 \end_layout
9663
9664 \end_inset
9665
9666  is 
9667 \begin_inset Flex CharStyle:Code
9668 status collapsed
9669
9670 \begin_layout Plain Layout
9671 Environment
9672 \end_layout
9673
9674 \end_inset
9675
9676
9677 \begin_inset Flex CharStyle:Code
9678 status collapsed
9679
9680 \begin_layout Plain Layout
9681 Item_Environment
9682 \end_layout
9683
9684 \end_inset
9685
9686  or 
9687 \begin_inset Flex CharStyle:Code
9688 status collapsed
9689
9690 \begin_layout Plain Layout
9691 List_Environment
9692 \end_layout
9693
9694 \end_inset
9695
9696 ).
9697  
9698 \begin_inset Flex CharStyle:Code
9699 status collapsed
9700
9701 \begin_layout Plain Layout
9702 No_Label
9703 \end_layout
9704
9705 \end_inset
9706
9707  means 
9708 \begin_inset Quotes eld
9709 \end_inset
9710
9711 nothing
9712 \begin_inset Quotes erd
9713 \end_inset
9714
9715
9716 \begin_inset Flex CharStyle:Code
9717 status collapsed
9718
9719 \begin_layout Plain Layout
9720 Box
9721 \end_layout
9722
9723 \end_inset
9724
9725  (resp.
9726 \begin_inset Flex CharStyle:Code
9727 status collapsed
9728
9729 \begin_layout Plain Layout
9730 \begin_inset space ~
9731 \end_inset
9732
9733 Filled_Box
9734 \end_layout
9735
9736 \end_inset
9737
9738 ) is a white (resp.
9739 \begin_inset space ~
9740 \end_inset
9741
9742 black) square suitable for end of proof markers, 
9743 \begin_inset Flex CharStyle:Code
9744 status collapsed
9745
9746 \begin_layout Plain Layout
9747 Static
9748 \end_layout
9749
9750 \end_inset
9751
9752  is an explicit text string.
9753 \end_layout
9754
9755 \begin_layout Description
9756 \begin_inset Flex CharStyle:Code
9757 status collapsed
9758
9759 \begin_layout Plain Layout
9760 EndLabelString
9761 \end_layout
9762
9763 \end_inset
9764
9765  [
9766 \begin_inset Flex CharStyle:Code
9767 status collapsed
9768
9769 \begin_layout Plain Layout
9770 string=""
9771 \end_layout
9772
9773 \end_inset
9774
9775 ] The string used for a label with a 
9776 \begin_inset Flex CharStyle:Code
9777 status collapsed
9778
9779 \begin_layout Plain Layout
9780 Static
9781 \end_layout
9782
9783 \end_inset
9784
9785  
9786 \begin_inset Flex CharStyle:Code
9787 status collapsed
9788
9789 \begin_layout Plain Layout
9790 EndLabelType
9791 \end_layout
9792
9793 \end_inset
9794
9795 .
9796  
9797 \end_layout
9798
9799 \begin_layout Description
9800 \begin_inset Flex CharStyle:Code
9801 status collapsed
9802
9803 \begin_layout Plain Layout
9804 Fill_Bottom
9805 \end_layout
9806
9807 \end_inset
9808
9809  [
9810 \begin_inset Flex CharStyle:Code
9811 status collapsed
9812
9813 \begin_layout Plain Layout
9814
9815 \emph on
9816 0
9817 \emph default
9818 ,1
9819 \end_layout
9820
9821 \end_inset
9822
9823 ] Similar to 
9824 \begin_inset Flex CharStyle:Code
9825 status collapsed
9826
9827 \begin_layout Plain Layout
9828 Fill_Top
9829 \end_layout
9830
9831 \end_inset
9832
9833 .
9834 \end_layout
9835
9836 \begin_layout Description
9837 \begin_inset Flex CharStyle:Code
9838 status collapsed
9839
9840 \begin_layout Plain Layout
9841 Fill_Top
9842 \end_layout
9843
9844 \end_inset
9845
9846  [
9847 \begin_inset Flex CharStyle:Code
9848 status collapsed
9849
9850 \begin_layout Plain Layout
9851
9852 \emph on
9853 0
9854 \emph default
9855 ,1
9856 \end_layout
9857
9858 \end_inset
9859
9860 ] With this parameter the 
9861 \begin_inset Flex CharStyle:MenuItem
9862 status collapsed
9863
9864 \begin_layout Plain Layout
9865 Fill
9866 \end_layout
9867
9868 \end_inset
9869
9870  value of the 
9871 \begin_inset Quotes eld
9872 \end_inset
9873
9874 Vertical space above
9875 \begin_inset Quotes erd
9876 \end_inset
9877
9878  list of the 
9879 \begin_inset Flex CharStyle:MenuItem
9880 status collapsed
9881
9882 \begin_layout Plain Layout
9883 Edit\SpecialChar \menuseparator
9884 Paragraph
9885 \begin_inset space ~
9886 \end_inset
9887
9888 Settings
9889 \end_layout
9890
9891 \end_inset
9892
9893  dialog can be set when initializing a paragraph with this style.
9894 \begin_inset Foot
9895 status collapsed
9896
9897 \begin_layout Plain Layout
9898
9899 \emph on
9900 Note from Jean-Marc:
9901 \emph default
9902  I'm not sure that this setting has much use, and it should probably be
9903  removed in later versions.
9904 \end_layout
9905
9906 \end_inset
9907
9908  
9909 \end_layout
9910
9911 \begin_layout Description
9912 \begin_inset Flex CharStyle:Code
9913 status collapsed
9914
9915 \begin_layout Plain Layout
9916 Font
9917 \end_layout
9918
9919 \end_inset
9920
9921  The font used for both the text body 
9922 \emph on
9923 and
9924 \emph default
9925  the label.
9926  See section
9927 \begin_inset space ~
9928 \end_inset
9929
9930
9931 \begin_inset CommandInset ref
9932 LatexCommand ref
9933 reference "sub:Font-description"
9934
9935 \end_inset
9936
9937 .
9938  Note that defining this font automatically defines the 
9939 \begin_inset Flex CharStyle:Code
9940 status collapsed
9941
9942 \begin_layout Plain Layout
9943 LabelFont
9944 \end_layout
9945
9946 \end_inset
9947
9948  to the same value.
9949  So you should define this one first if you also want to define 
9950 \begin_inset Flex CharStyle:Code
9951 status collapsed
9952
9953 \begin_layout Plain Layout
9954 LabelFont
9955 \end_layout
9956
9957 \end_inset
9958
9959 .
9960 \end_layout
9961
9962 \begin_layout Description
9963 \begin_inset Flex CharStyle:Code
9964 status collapsed
9965
9966 \begin_layout Plain Layout
9967 FreeSpacing
9968 \end_layout
9969
9970 \end_inset
9971
9972  
9973 \begin_inset CommandInset label
9974 LatexCommand label
9975 name "des:FreeSpacing"
9976
9977 \end_inset
9978
9979 [
9980 \begin_inset Flex CharStyle:Code
9981 status collapsed
9982
9983 \begin_layout Plain Layout
9984
9985 \emph on
9986 0
9987 \end_layout
9988
9989 \end_inset
9990
9991
9992 \begin_inset Flex CharStyle:Code
9993 status collapsed
9994
9995 \begin_layout Plain Layout
9996 1
9997 \end_layout
9998
9999 \end_inset
10000
10001 ] Usually LyX doesn't allow you to insert more than one space between words,
10002  since a space is considered as the separation between two words, not a
10003  character or symbol of its own.
10004  This is a very fine thing but sometimes annoying, for example, when typing
10005  program code or plain LaTeX code.
10006  For this reason, 
10007 \begin_inset Flex CharStyle:Code
10008 status collapsed
10009
10010 \begin_layout Plain Layout
10011 FreeSpacing
10012 \end_layout
10013
10014 \end_inset
10015
10016  can be enabled.
10017  Note that LyX will create protected blanks for the additional blanks when
10018  in another mode than LaTeX-mode.
10019 \end_layout
10020
10021 \begin_layout Description
10022 \begin_inset Flex CharStyle:Code
10023 status collapsed
10024
10025 \begin_layout Plain Layout
10026 HTML*
10027 \end_layout
10028
10029 \end_inset
10030
10031  These tags are used with XHTML output.
10032  See 
10033 \begin_inset CommandInset ref
10034 LatexCommand prettyref
10035 reference "sub:Paragraph-Style-XHTML"
10036
10037 \end_inset
10038
10039 .
10040 \end_layout
10041
10042 \begin_layout Description
10043 \begin_inset Flex CharStyle:Code
10044 status collapsed
10045
10046 \begin_layout Plain Layout
10047 InnerTag
10048 \end_layout
10049
10050 \end_inset
10051
10052  [[FIXME]] (Used only with XML-type formats.)
10053 \end_layout
10054
10055 \begin_layout Description
10056 \begin_inset Flex CharStyle:Code
10057 status collapsed
10058
10059 \begin_layout Plain Layout
10060 InPreamble
10061 \end_layout
10062
10063 \end_inset
10064
10065  
10066 \begin_inset Flex CharStyle:Code
10067 status collapsed
10068
10069 \begin_layout Plain Layout
10070 [1, 0]
10071 \end_layout
10072
10073 \end_inset
10074
10075  If 1, marks the layout as to be included in the document preamble rather
10076  than in the document body.
10077  This is useful for document classes that want such information as the title
10078  and author to appear in the preamble.
10079 \end_layout
10080
10081 \begin_layout Description
10082 \begin_inset Flex CharStyle:Code
10083 status collapsed
10084
10085 \begin_layout Plain Layout
10086 InTitle
10087 \end_layout
10088
10089 \end_inset
10090
10091  
10092 \begin_inset Flex CharStyle:Code
10093 status collapsed
10094
10095 \begin_layout Plain Layout
10096 [1, 0]
10097 \end_layout
10098
10099 \end_inset
10100
10101  If 1, marks the layout as being part of a title block (see also the 
10102 \begin_inset Flex CharStyle:Code
10103 status collapsed
10104
10105 \begin_layout Plain Layout
10106 TitleLatexType
10107 \end_layout
10108
10109 \end_inset
10110
10111  and 
10112 \begin_inset Flex CharStyle:Code
10113 status collapsed
10114
10115 \begin_layout Plain Layout
10116 TitleLatexName
10117 \end_layout
10118
10119 \end_inset
10120
10121  global entries).
10122 \end_layout
10123
10124 \begin_layout Description
10125 \begin_inset Flex CharStyle:Code
10126 status collapsed
10127
10128 \begin_layout Plain Layout
10129 ItemSep
10130 \end_layout
10131
10132 \end_inset
10133
10134  [
10135 \begin_inset Flex CharStyle:Code
10136 status collapsed
10137
10138 \begin_layout Plain Layout
10139 float=0
10140 \end_layout
10141
10142 \end_inset
10143
10144 ] This provides extra space between paragraphs that have the same layout.
10145  If you put other layouts into an environment, each is separated with the
10146  environment's 
10147 \begin_inset Flex CharStyle:Code
10148 status collapsed
10149
10150 \begin_layout Plain Layout
10151 Parsep
10152 \end_layout
10153
10154 \end_inset
10155
10156 .
10157  But the whole items of the environment are additionally separated with
10158  this 
10159 \begin_inset Flex CharStyle:Code
10160 status collapsed
10161
10162 \begin_layout Plain Layout
10163 Itemsep
10164 \end_layout
10165
10166 \end_inset
10167
10168 .
10169  Note that this is a
10170 \emph on
10171  multiplier.
10172 \end_layout
10173
10174 \begin_layout Description
10175 \begin_inset Flex CharStyle:Code
10176 status collapsed
10177
10178 \begin_layout Plain Layout
10179 ItemTag
10180 \end_layout
10181
10182 \end_inset
10183
10184  [[FIXME]] (Used only with XML-type formats.)
10185 \end_layout
10186
10187 \begin_layout Description
10188 \begin_inset Flex CharStyle:Code
10189 status collapsed
10190
10191 \begin_layout Plain Layout
10192 KeepEmpty
10193 \end_layout
10194
10195 \end_inset
10196
10197  
10198 \begin_inset CommandInset label
10199 LatexCommand label
10200 name "des:KeepEmpty"
10201
10202 \end_inset
10203
10204 [
10205 \begin_inset Flex CharStyle:Code
10206 status collapsed
10207
10208 \begin_layout Plain Layout
10209
10210 \emph on
10211 0
10212 \end_layout
10213
10214 \end_inset
10215
10216
10217 \begin_inset Flex CharStyle:Code
10218 status collapsed
10219
10220 \begin_layout Plain Layout
10221 1
10222 \end_layout
10223
10224 \end_inset
10225
10226 ] Usually LyX does not allow you to leave a paragraph empty, since it would
10227  lead to empty LaTeX output.
10228  There are some cases where this could be desirable however: in a letter
10229  template, the required fields can be provided as empty fields, so that
10230  people do not forget them; in some special classes, a layout can be used
10231  as some kind of break, which does not contain actual text.
10232 \end_layout
10233
10234 \begin_layout Description
10235 \begin_inset Flex CharStyle:Code
10236 status collapsed
10237
10238 \begin_layout Plain Layout
10239 LabelBottomsep
10240 \end_layout
10241
10242 \end_inset
10243
10244  [float=0] The vertical space between the label and the text body.
10245  Only used for labels that are above the text body (
10246 \begin_inset Flex CharStyle:Code
10247 status collapsed
10248
10249 \begin_layout Plain Layout
10250 Top_Environment
10251 \end_layout
10252
10253 \end_inset
10254
10255
10256 \begin_inset Flex CharStyle:Code
10257 status collapsed
10258
10259 \begin_layout Plain Layout
10260 Centered_Top_Environment
10261 \end_layout
10262
10263 \end_inset
10264
10265 ).
10266 \end_layout
10267
10268 \begin_layout Description
10269 \begin_inset Flex CharStyle:Code
10270 status collapsed
10271
10272 \begin_layout Plain Layout
10273 LabelCounter
10274 \end_layout
10275
10276 \end_inset
10277
10278  [
10279 \begin_inset Flex CharStyle:Code
10280 status collapsed
10281
10282 \begin_layout Plain Layout
10283 string=""
10284 \end_layout
10285
10286 \end_inset
10287
10288 ]
10289 \begin_inset Newline newline
10290 \end_inset
10291
10292 The name of the counter for automatic numbering.
10293  
10294 \begin_inset Newline newline
10295 \end_inset
10296
10297 This 
10298 \emph on
10299 must
10300 \emph default
10301  be given if 
10302 \begin_inset Flex CharStyle:Code
10303 status collapsed
10304
10305 \begin_layout Plain Layout
10306 LabelType
10307 \end_layout
10308
10309 \end_inset
10310
10311  is 
10312 \begin_inset Flex CharStyle:Code
10313 status collapsed
10314
10315 \begin_layout Plain Layout
10316 Counter
10317 \end_layout
10318
10319 \end_inset
10320
10321 .
10322  In that case, the counter will be stepped each time the layout appears.
10323  
10324 \begin_inset Newline newline
10325 \end_inset
10326
10327 This 
10328 \emph on
10329 may
10330 \emph default
10331  also be given if 
10332 \begin_inset Flex CharStyle:Code
10333 status collapsed
10334
10335 \begin_layout Plain Layout
10336 LabelType
10337 \end_layout
10338
10339 \end_inset
10340
10341  is 
10342 \begin_inset Flex CharStyle:Code
10343 status collapsed
10344
10345 \begin_layout Plain Layout
10346 Enumerate
10347 \end_layout
10348
10349 \end_inset
10350
10351 , though this case is a bit complicated.
10352  Suppose you declare 
10353 \begin_inset Quotes eld
10354 \end_inset
10355
10356
10357 \begin_inset Flex CharStyle:Code
10358 status collapsed
10359
10360 \begin_layout Plain Layout
10361 LabelCounter myenum
10362 \end_layout
10363
10364 \end_inset
10365
10366
10367 \begin_inset Quotes erd
10368 \end_inset
10369
10370 .
10371  Then the actual counters used are 
10372 \begin_inset Flex CharStyle:Code
10373 status collapsed
10374
10375 \begin_layout Plain Layout
10376 myenumi
10377 \end_layout
10378
10379 \end_inset
10380
10381
10382 \begin_inset Flex CharStyle:Code
10383 status collapsed
10384
10385 \begin_layout Plain Layout
10386 myenumii
10387 \end_layout
10388
10389 \end_inset
10390
10391
10392 \begin_inset Flex CharStyle:Code
10393 status collapsed
10394
10395 \begin_layout Plain Layout
10396 myenumiii
10397 \end_layout
10398
10399 \end_inset
10400
10401 , and 
10402 \begin_inset Flex CharStyle:Code
10403 status collapsed
10404
10405 \begin_layout Plain Layout
10406 myenumiv
10407 \end_layout
10408
10409 \end_inset
10410
10411 , much as in LaTeX.
10412  These counters must all be declared separately.
10413 \begin_inset Newline newline
10414 \end_inset
10415
10416 See Section 
10417 \begin_inset CommandInset ref
10418 LatexCommand ref
10419 reference "sub:Counters"
10420
10421 \end_inset
10422
10423  for details on counters.
10424 \end_layout
10425
10426 \begin_layout Description
10427 \begin_inset Flex CharStyle:Code
10428 status collapsed
10429
10430 \begin_layout Plain Layout
10431 LabelFont
10432 \end_layout
10433
10434 \end_inset
10435
10436  The font used for the label.
10437  See section
10438 \begin_inset space ~
10439 \end_inset
10440
10441
10442 \begin_inset CommandInset ref
10443 LatexCommand ref
10444 reference "sub:Font-description"
10445
10446 \end_inset
10447
10448 .
10449 \end_layout
10450
10451 \begin_layout Description
10452 \begin_inset Flex CharStyle:Code
10453 status collapsed
10454
10455 \begin_layout Plain Layout
10456 LabelIndent
10457 \end_layout
10458
10459 \end_inset
10460
10461  Text that indicates how far a label should be indented.
10462 \end_layout
10463
10464 \begin_layout Description
10465 \begin_inset Flex CharStyle:Code
10466 status collapsed
10467
10468 \begin_layout Plain Layout
10469 Labelsep
10470 \end_layout
10471
10472 \end_inset
10473
10474  [
10475 \begin_inset Flex CharStyle:Code
10476 status collapsed
10477
10478 \begin_layout Plain Layout
10479 string=""
10480 \end_layout
10481
10482 \end_inset
10483
10484 ] The horizontal space between the label and the text body.
10485  Only used for labels that are not above the text body.
10486 \end_layout
10487
10488 \begin_layout Description
10489 \begin_inset Flex CharStyle:Code
10490 status collapsed
10491
10492 \begin_layout Plain Layout
10493 LabelString
10494 \end_layout
10495
10496 \end_inset
10497
10498  [
10499 \begin_inset Flex CharStyle:Code
10500 status collapsed
10501
10502 \begin_layout Plain Layout
10503 string=""
10504 \end_layout
10505
10506 \end_inset
10507
10508 ] The string used for a label with a 
10509 \begin_inset Flex CharStyle:Code
10510 status collapsed
10511
10512 \begin_layout Plain Layout
10513 Static
10514 \end_layout
10515
10516 \end_inset
10517
10518  labeltype.
10519  When 
10520 \begin_inset Flex CharStyle:Code
10521 status collapsed
10522
10523 \begin_layout Plain Layout
10524 LabelCounter
10525 \end_layout
10526
10527 \end_inset
10528
10529  is set, this string can be contain the special formatting commands described
10530  in Section 
10531 \begin_inset CommandInset ref
10532 LatexCommand ref
10533 reference "sub:Counters"
10534
10535 \end_inset
10536
10537 .
10538 \begin_inset Foot
10539 status collapsed
10540
10541 \begin_layout Plain Layout
10542 For the sake of backwards compatibility, the string 
10543 \begin_inset Flex CharStyle:Code
10544 status collapsed
10545
10546 \begin_layout Plain Layout
10547 @
10548 \emph on
10549 style-name
10550 \emph default
10551 @
10552 \end_layout
10553
10554 \end_inset
10555
10556  will be replaced by the expanded 
10557 \begin_inset Flex CharStyle:Code
10558 status collapsed
10559
10560 \begin_layout Plain Layout
10561 LabelString
10562 \end_layout
10563
10564 \end_inset
10565
10566  of style 
10567 \begin_inset Flex CharStyle:Code
10568 status collapsed
10569
10570 \begin_layout Plain Layout
10571
10572 \emph on
10573 style-name
10574 \end_layout
10575
10576 \end_inset
10577
10578 .
10579  This feature is now obsolete and should be replaced by the mechanisms of
10580  Section 
10581 \begin_inset CommandInset ref
10582 LatexCommand ref
10583 reference "sub:Counters"
10584
10585 \end_inset
10586
10587 .
10588 \end_layout
10589
10590 \end_inset
10591
10592
10593 \end_layout
10594
10595 \begin_layout Description
10596 \begin_inset Flex CharStyle:Code
10597 status collapsed
10598
10599 \begin_layout Plain Layout
10600 LabelStringAppendix
10601 \end_layout
10602
10603 \end_inset
10604
10605  [
10606 \begin_inset Flex CharStyle:Code
10607 status collapsed
10608
10609 \begin_layout Plain Layout
10610 string=""
10611 \end_layout
10612
10613 \end_inset
10614
10615 ] This is used inside the appendix instead of 
10616 \begin_inset Flex CharStyle:Code
10617 status collapsed
10618
10619 \begin_layout Plain Layout
10620 LabelString
10621 \end_layout
10622
10623 \end_inset
10624
10625 .
10626  Note that every 
10627 \begin_inset Flex CharStyle:Code
10628 status collapsed
10629
10630 \begin_layout Plain Layout
10631 LabelString
10632 \end_layout
10633
10634 \end_inset
10635
10636  statement resets 
10637 \begin_inset Flex CharStyle:Code
10638 status collapsed
10639
10640 \begin_layout Plain Layout
10641 LabelStringAppendix
10642 \end_layout
10643
10644 \end_inset
10645
10646  too.
10647 \end_layout
10648
10649 \begin_layout Description
10650 \begin_inset Flex CharStyle:Code
10651 status collapsed
10652
10653 \begin_layout Plain Layout
10654 LabelTag
10655 \end_layout
10656
10657 \end_inset
10658
10659  [FIXME] (Used only with XML-type formats.)
10660 \end_layout
10661
10662 \begin_layout Description
10663 \begin_inset Flex CharStyle:Code
10664 status collapsed
10665
10666 \begin_layout Plain Layout
10667 LabelType
10668 \end_layout
10669
10670 \end_inset
10671
10672  [
10673 \begin_inset Flex CharStyle:Code
10674 status collapsed
10675
10676 \begin_layout Plain Layout
10677
10678 \emph on
10679 No_Label
10680 \emph default
10681 , Manual, Static, Top_Environment, Centered_Top_Environment, Counter, Sensitive,
10682  Enumerate, Itemize, Bibliography
10683 \end_layout
10684
10685 \end_inset
10686
10687
10688 \end_layout
10689
10690 \begin_deeper
10691 \begin_layout Itemize
10692 \begin_inset Flex CharStyle:Code
10693 status collapsed
10694
10695 \begin_layout Plain Layout
10696 Manual
10697 \end_layout
10698
10699 \end_inset
10700
10701  means the label is the very first word (up to the first real blank).
10702  Use protected spaces (like
10703 \begin_inset space ~
10704 \end_inset
10705
10706 that one) if you want more than one word as the label.
10707  
10708 \end_layout
10709
10710 \begin_layout Itemize
10711 \begin_inset Flex CharStyle:Code
10712 status collapsed
10713
10714 \begin_layout Plain Layout
10715 Static
10716 \end_layout
10717
10718 \end_inset
10719
10720  means the label is simply whatever 
10721 \begin_inset Flex CharStyle:Code
10722 status collapsed
10723
10724 \begin_layout Plain Layout
10725 LabelString
10726 \end_layout
10727
10728 \end_inset
10729
10730  declares it to be.
10731  Note that this really is `static'.
10732 \end_layout
10733
10734 \begin_layout Itemize
10735 \begin_inset Flex CharStyle:Code
10736 status collapsed
10737
10738 \begin_layout Plain Layout
10739 Top_Environment
10740 \end_layout
10741
10742 \end_inset
10743
10744  and 
10745 \begin_inset Flex CharStyle:Code
10746 status collapsed
10747
10748 \begin_layout Plain Layout
10749 Centered_Top_Environment
10750 \end_layout
10751
10752 \end_inset
10753
10754  are special cases of 
10755 \begin_inset Flex CharStyle:Code
10756 status collapsed
10757
10758 \begin_layout Plain Layout
10759 Static
10760 \end_layout
10761
10762 \end_inset
10763
10764 .
10765  The label will be printed above the paragraph, but only at the top of an
10766  environment or the top of a chain of paragraphs with this layout.
10767  This might be used with the 
10768 \begin_inset Flex CharStyle:MenuItem
10769 status collapsed
10770
10771 \begin_layout Plain Layout
10772 Abstract
10773 \end_layout
10774
10775 \end_inset
10776
10777  layout, for example.
10778 \end_layout
10779
10780 \begin_layout Itemize
10781 \begin_inset Flex CharStyle:Code
10782 status collapsed
10783
10784 \begin_layout Plain Layout
10785 Sensitive
10786 \end_layout
10787
10788 \end_inset
10789
10790  is a special case for the caption-labels 
10791 \begin_inset Quotes eld
10792 \end_inset
10793
10794 Figure
10795 \begin_inset Quotes erd
10796 \end_inset
10797
10798  and 
10799 \begin_inset Quotes eld
10800 \end_inset
10801
10802 Table
10803 \begin_inset Quotes erd
10804 \end_inset
10805
10806 .
10807  
10808 \begin_inset Flex CharStyle:Code
10809 status collapsed
10810
10811 \begin_layout Plain Layout
10812 Sensitive
10813 \end_layout
10814
10815 \end_inset
10816
10817  means the (hardcoded) label string depends on the kind of float: It is
10818  hardcoded to be `FloatType N', where N is the value of the counter associated
10819  with the float.
10820 \end_layout
10821
10822 \begin_layout Itemize
10823 The 
10824 \begin_inset Flex CharStyle:Code
10825 status collapsed
10826
10827 \begin_layout Plain Layout
10828 Counter
10829 \end_layout
10830
10831 \end_inset
10832
10833  label type defines automatically numbered labels.
10834  The 
10835 \begin_inset Flex CharStyle:Code
10836 status collapsed
10837
10838 \begin_layout Plain Layout
10839 LabelString
10840 \end_layout
10841
10842 \end_inset
10843
10844  will be expanded to resolve any counter references it contains: For example,
10845  it might be 
10846 \begin_inset Quotes eld
10847 \end_inset
10848
10849
10850 \begin_inset Flex CharStyle:Code
10851 status collapsed
10852
10853 \begin_layout Plain Layout
10854 Section 
10855 \backslash
10856 thechapter.
10857 \backslash
10858 thesection
10859 \end_layout
10860
10861 \end_inset
10862
10863
10864 \begin_inset Quotes erd
10865 \end_inset
10866
10867 .
10868  See Section 
10869 \begin_inset CommandInset ref
10870 LatexCommand ref
10871 reference "sub:Counters"
10872
10873 \end_inset
10874
10875  for more information on counters.
10876 \end_layout
10877
10878 \begin_layout Itemize
10879 \begin_inset Flex CharStyle:Code
10880 status collapsed
10881
10882 \begin_layout Plain Layout
10883 Enumerate
10884 \end_layout
10885
10886 \end_inset
10887
10888  produces the usual sort of enumeration labels.
10889  At present, it is hardcoded to use Arabic numerals, lowercase letters,
10890  small Roman numerals, and uppercase letters for the four possible depths.
10891 \end_layout
10892
10893 \begin_layout Itemize
10894 \begin_inset Flex CharStyle:Code
10895 status collapsed
10896
10897 \begin_layout Plain Layout
10898 Itemize
10899 \end_layout
10900
10901 \end_inset
10902
10903  produces various bullets at the different levels.
10904  It is also hardcoded.
10905 \end_layout
10906
10907 \begin_layout Itemize
10908 \begin_inset Flex CharStyle:Code
10909 status collapsed
10910
10911 \begin_layout Plain Layout
10912 Bibliography
10913 \end_layout
10914
10915 \end_inset
10916
10917  is used internally by LyX and should be used only with 
10918 \begin_inset Flex CharStyle:Code
10919 status collapsed
10920
10921 \begin_layout Plain Layout
10922 LatexType BibEnvironment
10923 \end_layout
10924
10925 \end_inset
10926
10927 .
10928 \end_layout
10929
10930 \end_deeper
10931 \begin_layout Description
10932 \begin_inset Flex CharStyle:Code
10933 status collapsed
10934
10935 \begin_layout Plain Layout
10936 LangPreamble
10937 \end_layout
10938
10939 \end_inset
10940
10941  Like 
10942 \begin_inset Flex CharStyle:Code
10943 status collapsed
10944
10945 \begin_layout Plain Layout
10946 BabelPreamble
10947 \end_layout
10948
10949 \end_inset
10950
10951 , but this preamble snippet occurs independently from the babel package,
10952  and only for the document language.
10953  Must end with 
10954 \begin_inset Quotes eld
10955 \end_inset
10956
10957
10958 \begin_inset Flex CharStyle:Code
10959 status collapsed
10960
10961 \begin_layout Plain Layout
10962 EndLangPreamble
10963 \end_layout
10964
10965 \end_inset
10966
10967
10968 \begin_inset Quotes erd
10969 \end_inset
10970
10971 .
10972 \end_layout
10973
10974 \begin_deeper
10975 \begin_layout Standard
10976 If the style defines text that appears in the typeset document, it may use
10977  
10978 \begin_inset Flex CharStyle:Code
10979 status collapsed
10980
10981 \begin_layout Plain Layout
10982 LangPreamble
10983 \end_layout
10984
10985 \end_inset
10986
10987  and 
10988 \begin_inset Flex CharStyle:Code
10989 status collapsed
10990
10991 \begin_layout Plain Layout
10992 BabelPreamble
10993 \end_layout
10994
10995 \end_inset
10996
10997  to support non-english and even multilanguage documents correctly.
10998  The following excerpt (from the 
10999 \begin_inset Flex CharStyle:Code
11000 status collapsed
11001
11002 \begin_layout Plain Layout
11003 theorems-ams.inc
11004 \end_layout
11005
11006 \end_inset
11007
11008  file) shows how this works:
11009 \end_layout
11010
11011 \begin_layout LyX-Code
11012 Preamble
11013 \end_layout
11014
11015 \begin_layout LyX-Code
11016   
11017 \backslash
11018 theoremstyle{remark}
11019 \end_layout
11020
11021 \begin_layout LyX-Code
11022   
11023 \backslash
11024 newtheorem{claim}[thm]{
11025 \backslash
11026 protect
11027 \backslash
11028 claimname}
11029 \end_layout
11030
11031 \begin_layout LyX-Code
11032 EndPreamble
11033 \end_layout
11034
11035 \begin_layout LyX-Code
11036 LangPreamble
11037 \end_layout
11038
11039 \begin_layout LyX-Code
11040   
11041 \backslash
11042 providecommand{
11043 \backslash
11044 claimname}{_(Claim)}
11045 \end_layout
11046
11047 \begin_layout LyX-Code
11048
11049 \end_layout
11050
11051 \begin_layout LyX-Code
11052 EndLangPreamble
11053 \end_layout
11054
11055 \begin_layout LyX-Code
11056 BabelPreamble
11057 \end_layout
11058
11059 \begin_layout LyX-Code
11060     
11061 \backslash
11062 addto
11063 \backslash
11064 captions$$lang{
11065 \backslash
11066 renewcommand{
11067 \backslash
11068 claimname}{_(Claim)}}
11069 \end_layout
11070
11071 \begin_layout LyX-Code
11072 EndBabelPreamble
11073 \end_layout
11074
11075 \begin_layout Standard
11076 The key to correct translation of the user visible text is the definition
11077  of the command 
11078 \begin_inset Flex CharStyle:Code
11079 status collapsed
11080
11081 \begin_layout Plain Layout
11082
11083 \backslash
11084 claimname
11085 \end_layout
11086
11087 \end_inset
11088
11089  in the language preamble.
11090  This command holds the name of the theorem that will appear in the output.
11091  The 
11092 \begin_inset Flex CharStyle:Code
11093 status collapsed
11094
11095 \begin_layout Plain Layout
11096 BabelPreamble
11097 \end_layout
11098
11099 \end_inset
11100
11101  then uses the commands offered by the babel package to redefine 
11102 \begin_inset Flex CharStyle:Code
11103 status collapsed
11104
11105 \begin_layout Plain Layout
11106
11107 \backslash
11108 claimname
11109 \end_layout
11110
11111 \end_inset
11112
11113  for each used language in multilanguage documents.
11114 \end_layout
11115
11116 \end_deeper
11117 \begin_layout Description
11118 \begin_inset Flex CharStyle:Code
11119 status collapsed
11120
11121 \begin_layout Plain Layout
11122 LatexName
11123 \end_layout
11124
11125 \end_inset
11126
11127  The name of the corresponding LaTeX stuff.
11128  Either the environment or command name.
11129 \end_layout
11130
11131 \begin_layout Description
11132 \begin_inset Flex CharStyle:Code
11133 status collapsed
11134
11135 \begin_layout Plain Layout
11136 LatexParam
11137 \end_layout
11138
11139 \end_inset
11140
11141  An optional parameter for the corresponding 
11142 \begin_inset Flex CharStyle:Code
11143 status collapsed
11144
11145 \begin_layout Plain Layout
11146 LatexName
11147 \end_layout
11148
11149 \end_inset
11150
11151  stuff.
11152  This parameter cannot be changed from within LyX.
11153 \end_layout
11154
11155 \begin_layout Description
11156 \begin_inset Flex CharStyle:Code
11157 status collapsed
11158
11159 \begin_layout Plain Layout
11160 LatexType
11161 \end_layout
11162
11163 \end_inset
11164
11165  
11166 \begin_inset CommandInset label
11167 LatexCommand label
11168 name "des:LatexType"
11169
11170 \end_inset
11171
11172 [
11173 \begin_inset Flex CharStyle:Code
11174 status collapsed
11175
11176 \begin_layout Plain Layout
11177
11178 \emph on
11179 Paragraph
11180 \emph default
11181 , Command, Environment, Item_Environment,
11182 \end_layout
11183
11184 \end_inset
11185
11186  
11187 \begin_inset Flex CharStyle:Code
11188 status collapsed
11189
11190 \begin_layout Plain Layout
11191 List_Environment, Bib_Environment
11192 \end_layout
11193
11194 \end_inset
11195
11196 ] How the layout should be translated into LaTeX.
11197 \begin_inset Foot
11198 status collapsed
11199
11200 \begin_layout Plain Layout
11201 \begin_inset Flex CharStyle:Code
11202 status collapsed
11203
11204 \begin_layout Plain Layout
11205 LatexType
11206 \end_layout
11207
11208 \end_inset
11209
11210  is perhaps a bit misleading, since these rules apply to SGML classes, too.
11211  Visit the SGML class files for specific examples.
11212 \end_layout
11213
11214 \end_inset
11215
11216
11217 \end_layout
11218
11219 \begin_deeper
11220 \begin_layout Itemize
11221 \begin_inset Flex CharStyle:Code
11222 status collapsed
11223
11224 \begin_layout Plain Layout
11225 Paragraph
11226 \end_layout
11227
11228 \end_inset
11229
11230  means nothing special.
11231  
11232 \end_layout
11233
11234 \begin_layout Itemize
11235 \begin_inset Flex CharStyle:Code
11236 status collapsed
11237
11238 \begin_layout Plain Layout
11239 Command
11240 \end_layout
11241
11242 \end_inset
11243
11244  means 
11245 \begin_inset Flex CharStyle:Code
11246 status collapsed
11247
11248 \begin_layout Plain Layout
11249
11250 \backslash
11251
11252 \emph on
11253 LatexName
11254 \emph default
11255 {\SpecialChar \ldots{}
11256 }
11257 \end_layout
11258
11259 \end_inset
11260
11261 .
11262 \end_layout
11263
11264 \begin_layout Itemize
11265 \begin_inset Flex CharStyle:Code
11266 status collapsed
11267
11268 \begin_layout Plain Layout
11269 Environment
11270 \end_layout
11271
11272 \end_inset
11273
11274  means 
11275 \begin_inset Flex CharStyle:Code
11276 status collapsed
11277
11278 \begin_layout Plain Layout
11279
11280 \backslash
11281 begin{
11282 \emph on
11283 LatexName
11284 \emph default
11285 }\SpecialChar \ldots{}
11286
11287 \backslash
11288 end{
11289 \emph on
11290 LatexName
11291 \emph default
11292 }
11293 \end_layout
11294
11295 \end_inset
11296
11297 .
11298  
11299 \end_layout
11300
11301 \begin_layout Itemize
11302 \begin_inset Flex CharStyle:Code
11303 status collapsed
11304
11305 \begin_layout Plain Layout
11306 Item_Environment
11307 \end_layout
11308
11309 \end_inset
11310
11311  is the same as 
11312 \begin_inset Flex CharStyle:Code
11313 status collapsed
11314
11315 \begin_layout Plain Layout
11316 Environment
11317 \end_layout
11318
11319 \end_inset
11320
11321 , except that an 
11322 \begin_inset Flex CharStyle:Code
11323 status collapsed
11324
11325 \begin_layout Plain Layout
11326
11327 \backslash
11328 item
11329 \end_layout
11330
11331 \end_inset
11332
11333  is generated for each paragraph of this environment.
11334  
11335 \end_layout
11336
11337 \begin_layout Itemize
11338 \begin_inset Flex CharStyle:Code
11339 status collapsed
11340
11341 \begin_layout Plain Layout
11342 List_Environment
11343 \end_layout
11344
11345 \end_inset
11346
11347  is the same as 
11348 \begin_inset Flex CharStyle:Code
11349 status collapsed
11350
11351 \begin_layout Plain Layout
11352 Item_Environment
11353 \end_layout
11354
11355 \end_inset
11356
11357 , except that 
11358 \begin_inset Flex CharStyle:Code
11359 status collapsed
11360
11361 \begin_layout Plain Layout
11362 LabelWidthString
11363 \end_layout
11364
11365 \end_inset
11366
11367  is passed as an argument to the environment.
11368  
11369 \begin_inset Flex CharStyle:Code
11370 status collapsed
11371
11372 \begin_layout Plain Layout
11373 LabelWidthString
11374 \end_layout
11375
11376 \end_inset
11377
11378  can be defined in the 
11379 \begin_inset Flex CharStyle:MenuItem
11380 status collapsed
11381
11382 \begin_layout Plain Layout
11383
11384 \bar under
11385 L
11386 \bar default
11387 ayout\SpecialChar \menuseparator
11388
11389 \bar under
11390 P
11391 \bar default
11392 aragraph
11393 \end_layout
11394
11395 \end_inset
11396
11397  dialog.
11398  
11399 \end_layout
11400
11401 \begin_layout Standard
11402 Putting the last few things together, the LaTeX output will be either: 
11403 \end_layout
11404
11405 \begin_layout LyX-Code
11406
11407 \backslash
11408 latexname[latexparam]{\SpecialChar \ldots{}
11409 }
11410 \end_layout
11411
11412 \begin_layout Standard
11413 or: 
11414 \end_layout
11415
11416 \begin_layout LyX-Code
11417
11418 \backslash
11419 begin{latexname}[latexparam] \SpecialChar \ldots{}
11420  
11421 \backslash
11422 end{latexname}.
11423 \end_layout
11424
11425 \begin_layout Standard
11426 depending upon the LaTeX type.
11427 \end_layout
11428
11429 \end_deeper
11430 \begin_layout Description
11431 \begin_inset Flex CharStyle:Code
11432 status collapsed
11433
11434 \begin_layout Plain Layout
11435 LeftMargin
11436 \end_layout
11437
11438 \end_inset
11439
11440  [
11441 \begin_inset Flex CharStyle:Code
11442 status collapsed
11443
11444 \begin_layout Plain Layout
11445 string=""
11446 \end_layout
11447
11448 \end_inset
11449
11450 ] If you put layouts into environments, the leftmargins are not simply added,
11451  but added with a factor 
11452 \begin_inset Formula $\frac{4}{depth+4}$
11453 \end_inset
11454
11455 .
11456  Note that this parameter is also used when the margin is defined as 
11457 \begin_inset Flex CharStyle:Code
11458 status collapsed
11459
11460 \begin_layout Plain Layout
11461 Manual
11462 \end_layout
11463
11464 \end_inset
11465
11466  or 
11467 \begin_inset Flex CharStyle:Code
11468 status collapsed
11469
11470 \begin_layout Plain Layout
11471 Dynamic
11472 \end_layout
11473
11474 \end_inset
11475
11476 .
11477  Then it is added to the manual or dynamic margin.
11478  
11479 \begin_inset Newline newline
11480 \end_inset
11481
11482 The argument is passed as a string.
11483  For example 
11484 \begin_inset Quotes eld
11485 \end_inset
11486
11487
11488 \begin_inset Flex CharStyle:Code
11489 status collapsed
11490
11491 \begin_layout Plain Layout
11492 MM
11493 \end_layout
11494
11495 \end_inset
11496
11497
11498 \begin_inset Quotes erd
11499 \end_inset
11500
11501  means that the paragraph is indented with the width of 
11502 \begin_inset Quotes eld
11503 \end_inset
11504
11505
11506 \begin_inset Flex CharStyle:Code
11507 status collapsed
11508
11509 \begin_layout Plain Layout
11510 MM
11511 \end_layout
11512
11513 \end_inset
11514
11515
11516 \begin_inset Quotes erd
11517 \end_inset
11518
11519  in the normal font.
11520  You can get a negative width by prefixing the string with 
11521 \begin_inset Quotes eld
11522 \end_inset
11523
11524
11525 \begin_inset Flex CharStyle:Code
11526 status collapsed
11527
11528 \begin_layout Plain Layout
11529 -
11530 \end_layout
11531
11532 \end_inset
11533
11534
11535 \begin_inset Quotes erd
11536 \end_inset
11537
11538 .
11539  This way was chosen so that the look is the same with each used screen
11540  font.
11541  
11542 \end_layout
11543
11544 \begin_layout Description
11545 \begin_inset Flex CharStyle:Code
11546 status collapsed
11547
11548 \begin_layout Plain Layout
11549 Margin
11550 \end_layout
11551
11552 \end_inset
11553
11554  [
11555 \begin_inset Flex CharStyle:Code
11556 status collapsed
11557
11558 \begin_layout Plain Layout
11559
11560 \emph on
11561 Static
11562 \emph default
11563 , Manual, Dynamic, First_Dynamic, Right_Address_Box
11564 \end_layout
11565
11566 \end_inset
11567
11568
11569 \begin_inset Newline newline
11570 \end_inset
11571
11572 The kind of margin that the layout has on the left side.
11573  
11574 \begin_inset Flex CharStyle:Code
11575 status collapsed
11576
11577 \begin_layout Plain Layout
11578 Static
11579 \end_layout
11580
11581 \end_inset
11582
11583  just means a fixed margin.
11584  
11585 \begin_inset Flex CharStyle:Code
11586 status collapsed
11587
11588 \begin_layout Plain Layout
11589 Manual
11590 \end_layout
11591
11592 \end_inset
11593
11594  means that the left margin depends on the string entered in the 
11595 \begin_inset Flex CharStyle:MenuItem
11596 status collapsed
11597
11598 \begin_layout Plain Layout
11599 Edit\SpecialChar \menuseparator
11600 Paragraph
11601 \begin_inset space ~
11602 \end_inset
11603
11604 Settings
11605 \end_layout
11606
11607 \end_inset
11608
11609  dialog.
11610  This is used to typeset nice lists without tabulators.
11611  
11612 \begin_inset Flex CharStyle:Code
11613 status collapsed
11614
11615 \begin_layout Plain Layout
11616 Dynamic
11617 \end_layout
11618
11619 \end_inset
11620
11621  means that the margin depends on the size of the label.
11622  This is used for automatic enumerated headlines.
11623  It is obvious that the headline 
11624 \begin_inset Quotes eld
11625 \end_inset
11626
11627 5.4.3.2.1 Very long headline
11628 \begin_inset Quotes erd
11629 \end_inset
11630
11631  must have a wider left margin (as wide as 
11632 \begin_inset Quotes eld
11633 \end_inset
11634
11635 5.4.3.2.1
11636 \begin_inset Quotes erd
11637 \end_inset
11638
11639  plus the space) than 
11640 \begin_inset Quotes eld
11641 \end_inset
11642
11643 3.2 Very long headline
11644 \begin_inset Quotes erd
11645 \end_inset
11646
11647 , even if standard 
11648 \begin_inset Quotes eld
11649 \end_inset
11650
11651 word processors
11652 \begin_inset Quotes erd
11653 \end_inset
11654
11655  are not able to do this.
11656  
11657 \begin_inset Flex CharStyle:Code
11658 status collapsed
11659
11660 \begin_layout Plain Layout
11661 First_Dynamic
11662 \end_layout
11663
11664 \end_inset
11665
11666  is similar, but only the very first row of the paragraph is dynamic, while
11667  the others are static; this is used, for example, for descriptions.
11668  
11669 \begin_inset Flex CharStyle:Code
11670 status collapsed
11671
11672 \begin_layout Plain Layout
11673 Right_Address_Box
11674 \end_layout
11675
11676 \end_inset
11677
11678  means the margin is chosen in a way that the longest row of this paragraph
11679  fits to the right margin.
11680  This is used to typeset an address on the right edge of the page.
11681 \end_layout
11682
11683 \begin_layout Description
11684 \begin_inset Flex CharStyle:Code
11685 status collapsed
11686
11687 \begin_layout Plain Layout
11688 NeedProtect
11689 \end_layout
11690
11691 \end_inset
11692
11693  [
11694 \begin_inset Flex CharStyle:Code
11695 status collapsed
11696
11697 \begin_layout Plain Layout
11698
11699 \emph on
11700 0
11701 \end_layout
11702
11703 \end_inset
11704
11705 ,
11706 \begin_inset Flex CharStyle:Code
11707 status collapsed
11708
11709 \begin_layout Plain Layout
11710 1
11711 \end_layout
11712
11713 \end_inset
11714
11715 ] Whether fragile commands in this layout should be 
11716 \begin_inset Flex CharStyle:Code
11717 status collapsed
11718
11719 \begin_layout Plain Layout
11720
11721 \backslash
11722 protect
11723 \end_layout
11724
11725 \end_inset
11726
11727 'ed.
11728  (Note: This is 
11729 \emph on
11730 not
11731 \emph default
11732  whether this command should itself be protected.)
11733 \end_layout
11734
11735 \begin_layout Description
11736 \begin_inset Flex CharStyle:Code
11737 status collapsed
11738
11739 \begin_layout Plain Layout
11740 Newline
11741 \end_layout
11742
11743 \end_inset
11744
11745  [
11746 \begin_inset Flex CharStyle:Code
11747 status collapsed
11748
11749 \begin_layout Plain Layout
11750 0
11751 \end_layout
11752
11753 \end_inset
11754
11755
11756 \begin_inset Flex CharStyle:Code
11757 status collapsed
11758
11759 \begin_layout Plain Layout
11760
11761 \emph on
11762 1
11763 \end_layout
11764
11765 \end_inset
11766
11767 ] Whether newlines are translated into LaTeX newlines (
11768 \begin_inset Flex CharStyle:Code
11769 status collapsed
11770
11771 \begin_layout Plain Layout
11772
11773 \backslash
11774
11775 \backslash
11776
11777 \end_layout
11778
11779 \end_inset
11780
11781 ) or not.
11782  The translation can be switched off to allow more comfortable LaTeX editing
11783  inside LyX.
11784 \end_layout
11785
11786 \begin_layout Description
11787 \begin_inset Flex CharStyle:Code
11788 status collapsed
11789
11790 \begin_layout Plain Layout
11791 NextNoIndent
11792 \end_layout
11793
11794 \end_inset
11795
11796  [
11797 \begin_inset Flex CharStyle:Code
11798 status collapsed
11799
11800 \begin_layout Plain Layout
11801 1
11802 \end_layout
11803
11804 \end_inset
11805
11806
11807 \begin_inset Flex CharStyle:Code
11808 status collapsed
11809
11810 \begin_layout Plain Layout
11811
11812 \emph on
11813 0
11814 \end_layout
11815
11816 \end_inset
11817
11818 ] Whether the following Paragraph is allowed to indent its very first row.
11819  
11820 \begin_inset Flex CharStyle:Code
11821 status collapsed
11822
11823 \begin_layout Plain Layout
11824 1
11825 \end_layout
11826
11827 \end_inset
11828
11829  means that it is not allowed to do so; 
11830 \begin_inset Flex CharStyle:Code
11831 status collapsed
11832
11833 \begin_layout Plain Layout
11834 0
11835 \end_layout
11836
11837 \end_inset
11838
11839  means it could do so if it wants to.
11840 \end_layout
11841
11842 \begin_layout Description
11843 \begin_inset Flex CharStyle:Code
11844 status collapsed
11845
11846 \begin_layout Plain Layout
11847 ObsoletedBy
11848 \end_layout
11849
11850 \end_inset
11851
11852  Name of a layout that has replaced this layout.
11853  This is used to rename a layout, while keeping backward compatibility.
11854 \end_layout
11855
11856 \begin_layout Description
11857 \begin_inset Flex CharStyle:Code
11858 status collapsed
11859
11860 \begin_layout Plain Layout
11861 OptionalArgs
11862 \end_layout
11863
11864 \end_inset
11865
11866  [
11867 \begin_inset Flex CharStyle:Code
11868 status collapsed
11869
11870 \begin_layout Plain Layout
11871 int=0
11872 \end_layout
11873
11874 \end_inset
11875
11876 ] The number of optional arguments that can be used with this layout.
11877  This is useful for things like section headings, and only makes sense with
11878  LaTeX.
11879 \end_layout
11880
11881 \begin_layout Description
11882 \begin_inset Flex CharStyle:Code
11883 status collapsed
11884
11885 \begin_layout Plain Layout
11886 ParIndent
11887 \end_layout
11888
11889 \end_inset
11890
11891  [
11892 \begin_inset Flex CharStyle:Code
11893 status collapsed
11894
11895 \begin_layout Plain Layout
11896 string=""
11897 \end_layout
11898
11899 \end_inset
11900
11901 ] The indent of the very first line of a paragraph.
11902  The 
11903 \begin_inset Flex CharStyle:Code
11904 status collapsed
11905
11906 \begin_layout Plain Layout
11907 Parindent
11908 \end_layout
11909
11910 \end_inset
11911
11912  will be fixed for a certain layout.
11913  The exception is Standard layout, since the indentation of a Standard layout
11914  paragraph can be prohibited with 
11915 \begin_inset Flex CharStyle:Code
11916 status collapsed
11917
11918 \begin_layout Plain Layout
11919 NextNoIndent
11920 \end_layout
11921
11922 \end_inset
11923
11924 .
11925  Also, Standard layout paragraphs inside environments use the 
11926 \begin_inset Flex CharStyle:Code
11927 status collapsed
11928
11929 \begin_layout Plain Layout
11930 Parindent
11931 \end_layout
11932
11933 \end_inset
11934
11935  of the environment, not their native one.
11936  For example, Standard paragraphs inside an enumeration are not indented.
11937 \end_layout
11938
11939 \begin_layout Description
11940 \begin_inset Flex CharStyle:Code
11941 status collapsed
11942
11943 \begin_layout Plain Layout
11944 Parsep
11945 \end_layout
11946
11947 \end_inset
11948
11949  [
11950 \begin_inset Flex CharStyle:Code
11951 status collapsed
11952
11953 \begin_layout Plain Layout
11954 float=0
11955 \end_layout
11956
11957 \end_inset
11958
11959 ] The vertical space between two paragraphs of this layout.
11960 \end_layout
11961
11962 \begin_layout Description
11963 \begin_inset Flex CharStyle:Code
11964 status collapsed
11965
11966 \begin_layout Plain Layout
11967 Parskip
11968 \end_layout
11969
11970 \end_inset
11971
11972  [
11973 \begin_inset Flex CharStyle:Code
11974 status collapsed
11975
11976 \begin_layout Plain Layout
11977 float=0
11978 \end_layout
11979
11980 \end_inset
11981
11982 ] LyX allows the user to choose either 
11983 \begin_inset Quotes eld
11984 \end_inset
11985
11986 indent
11987 \begin_inset Quotes erd
11988 \end_inset
11989
11990  or 
11991 \begin_inset Quotes eld
11992 \end_inset
11993
11994 skip
11995 \begin_inset Quotes erd
11996 \end_inset
11997
11998  to typeset a document.
11999  When 
12000 \begin_inset Quotes eld
12001 \end_inset
12002
12003 indent
12004 \begin_inset Quotes erd
12005 \end_inset
12006
12007  is chosen, this value is completely ignored.
12008  When 
12009 \begin_inset Quotes eld
12010 \end_inset
12011
12012 skip
12013 \begin_inset Quotes erd
12014 \end_inset
12015
12016  is chosen, the parindent of a LaTeXtype 
12017 \begin_inset Quotes eld
12018 \end_inset
12019
12020 Paragraph
12021 \begin_inset Quotes erd
12022 \end_inset
12023
12024  layout is ignored and all paragraphs are separated by this parskip argument.
12025  The vertical space is calculated with 
12026 \begin_inset Flex CharStyle:Code
12027 status collapsed
12028
12029 \begin_layout Plain Layout
12030 value
12031 \begin_inset space ~
12032 \end_inset
12033
12034 * DefaultHeight
12035 \end_layout
12036
12037 \end_inset
12038
12039  where 
12040 \begin_inset Flex CharStyle:Code
12041 status collapsed
12042
12043 \begin_layout Plain Layout
12044 DefaultHeight
12045 \end_layout
12046
12047 \end_inset
12048
12049  is the height of a row with the normal font.
12050  This way, the look stays the same with different screen fonts.
12051 \end_layout
12052
12053 \begin_layout Description
12054 \begin_inset Flex CharStyle:Code
12055 status collapsed
12056
12057 \begin_layout Plain Layout
12058 PassThru
12059 \end_layout
12060
12061 \end_inset
12062
12063  
12064 \begin_inset CommandInset label
12065 LatexCommand label
12066 name "des:PathThru"
12067
12068 \end_inset
12069
12070 [
12071 \begin_inset Flex CharStyle:Code
12072 status collapsed
12073
12074 \begin_layout Plain Layout
12075
12076 \emph on
12077 0
12078 \end_layout
12079
12080 \end_inset
12081
12082
12083 \begin_inset Flex CharStyle:Code
12084 status collapsed
12085
12086 \begin_layout Plain Layout
12087 1
12088 \end_layout
12089
12090 \end_inset
12091
12092 ] Whether the contents of this paragraph should be output in raw form, meaning
12093  without special translations that LaTeX would require.
12094 \end_layout
12095
12096 \begin_layout Description
12097 \begin_inset Flex CharStyle:Code
12098 status collapsed
12099
12100 \begin_layout Plain Layout
12101 Preamble
12102 \end_layout
12103
12104 \end_inset
12105
12106  
12107 \begin_inset CommandInset label
12108 LatexCommand label
12109 name "des:Preamble"
12110
12111 \end_inset
12112
12113 Information to be included in the LaTeX preamble when this style is used.
12114  Used to define macros, load packages, etc., required by this particular
12115  style.
12116  Must end with 
12117 \begin_inset Quotes eld
12118 \end_inset
12119
12120
12121 \begin_inset Flex CharStyle:Code
12122 status collapsed
12123
12124 \begin_layout Plain Layout
12125 EndPreamble
12126 \end_layout
12127
12128 \end_inset
12129
12130
12131 \begin_inset Quotes erd
12132 \end_inset
12133
12134 .
12135 \end_layout
12136
12137 \begin_layout Description
12138 \begin_inset Flex CharStyle:Code
12139 status collapsed
12140
12141 \begin_layout Plain Layout
12142 RefPrefix
12143 \end_layout
12144
12145 \end_inset
12146
12147  [
12148 \begin_inset Flex CharStyle:Code
12149 status collapsed
12150
12151 \begin_layout Plain Layout
12152 string
12153 \end_layout
12154
12155 \end_inset
12156
12157 ] The prefix to use when creating labels referring to paragraphs of this
12158  type.
12159  This allows the use of formatted references.
12160 \end_layout
12161
12162 \begin_layout Description
12163 \begin_inset Flex CharStyle:Code
12164 status collapsed
12165
12166 \begin_layout Plain Layout
12167 Requires 
12168 \end_layout
12169
12170 \end_inset
12171
12172  [
12173 \begin_inset Flex CharStyle:Code
12174 status collapsed
12175
12176 \begin_layout Plain Layout
12177 string
12178 \end_layout
12179
12180 \end_inset
12181
12182
12183 \begin_inset CommandInset label
12184 LatexCommand label
12185 name "des:Requires"
12186
12187 \end_inset
12188
12189 Whether the layout requires the feature 
12190 \begin_inset Flex CharStyle:Code
12191 status collapsed
12192
12193 \begin_layout Plain Layout
12194 string
12195 \end_layout
12196
12197 \end_inset
12198
12199 .
12200  See the description of 
12201 \begin_inset Flex CharStyle:Code
12202 status collapsed
12203
12204 \begin_layout Plain Layout
12205 Provides
12206 \end_layout
12207
12208 \end_inset
12209
12210  above (page 
12211 \begin_inset CommandInset ref
12212 LatexCommand pageref
12213 reference "des:FreeSpacing"
12214
12215 \end_inset
12216
12217 ) for information on `features'.
12218  
12219 \end_layout
12220
12221 \begin_layout Description
12222 \begin_inset Flex CharStyle:Code
12223 status collapsed
12224
12225 \begin_layout Plain Layout
12226 RightMargin
12227 \end_layout
12228
12229 \end_inset
12230
12231  [
12232 \begin_inset Flex CharStyle:Code
12233 status collapsed
12234
12235 \begin_layout Plain Layout
12236 string=""
12237 \end_layout
12238
12239 \end_inset
12240
12241 ] Similar to 
12242 \begin_inset Flex CharStyle:Code
12243 status collapsed
12244
12245 \begin_layout Plain Layout
12246 LeftMargin
12247 \end_layout
12248
12249 \end_inset
12250
12251 .
12252 \end_layout
12253
12254 \begin_layout Description
12255 \begin_inset Flex CharStyle:Code
12256 status collapsed
12257
12258 \begin_layout Plain Layout
12259 Spacing
12260 \end_layout
12261
12262 \end_inset
12263
12264  [
12265 \begin_inset Flex CharStyle:Code
12266 status collapsed
12267
12268 \begin_layout Plain Layout
12269
12270 \emph on
12271 single
12272 \emph default
12273 , onehalf, double, other
12274 \end_layout
12275
12276 \end_inset
12277
12278  
12279 \emph on
12280 value
12281 \emph default
12282 ] This defines what the default spacing should be in the layout.
12283  The arguments 
12284 \begin_inset Flex CharStyle:Code
12285 status collapsed
12286
12287 \begin_layout Plain Layout
12288 single
12289 \end_layout
12290
12291 \end_inset
12292
12293
12294 \begin_inset Flex CharStyle:Code
12295 status collapsed
12296
12297 \begin_layout Plain Layout
12298 onehalf
12299 \end_layout
12300
12301 \end_inset
12302
12303  and 
12304 \begin_inset Flex CharStyle:Code
12305 status collapsed
12306
12307 \begin_layout Plain Layout
12308 double
12309 \end_layout
12310
12311 \end_inset
12312
12313  correspond respectively to a multiplier value of 1, 1.25 and 1.667.
12314  If you specify the argument 
12315 \begin_inset Flex CharStyle:Code
12316 status collapsed
12317
12318 \begin_layout Plain Layout
12319 other
12320 \end_layout
12321
12322 \end_inset
12323
12324 , then you should also provide a numerical argument which will be the actual
12325  multiplier value.
12326  Note that, contrary to other parameters, 
12327 \begin_inset Flex CharStyle:Code
12328 status collapsed
12329
12330 \begin_layout Plain Layout
12331 Spacing
12332 \end_layout
12333
12334 \end_inset
12335
12336  implies the generation of specific LaTeX code, using the package 
12337 \family roman
12338
12339 \begin_inset Flex CharStyle:Code
12340 status collapsed
12341
12342 \begin_layout Plain Layout
12343 setspace.sty
12344 \end_layout
12345
12346 \end_inset
12347
12348 .
12349 \end_layout
12350
12351 \begin_layout Description
12352 \begin_inset Flex CharStyle:Code
12353 status collapsed
12354
12355 \begin_layout Plain Layout
12356 Spellcheck
12357 \end_layout
12358
12359 \end_inset
12360
12361  [
12362 \begin_inset Flex CharStyle:Code
12363 status collapsed
12364
12365 \begin_layout Plain Layout
12366 0
12367 \end_layout
12368
12369 \end_inset
12370
12371 ,
12372 \begin_inset Flex CharStyle:Code
12373 status collapsed
12374
12375 \begin_layout Plain Layout
12376
12377 \emph on
12378 1
12379 \end_layout
12380
12381 \end_inset
12382
12383 ] Spellcheck paragraphs of this style.
12384  Default is true.
12385 \end_layout
12386
12387 \begin_layout Description
12388 \begin_inset Flex CharStyle:Code
12389 status collapsed
12390
12391 \begin_layout Plain Layout
12392 TextFont
12393 \end_layout
12394
12395 \end_inset
12396
12397  The font used for the text body .
12398  See section 
12399 \begin_inset CommandInset ref
12400 LatexCommand ref
12401 reference "sub:Font-description"
12402
12403 \end_inset
12404
12405 .
12406 \end_layout
12407
12408 \begin_layout Description
12409 \begin_inset Flex CharStyle:Code
12410 status collapsed
12411
12412 \begin_layout Plain Layout
12413 TocLevel
12414 \end_layout
12415
12416 \end_inset
12417
12418
12419 \series medium
12420  
12421 \begin_inset Flex CharStyle:Code
12422 status collapsed
12423
12424 \begin_layout Plain Layout
12425
12426 \series medium
12427 [int]
12428 \end_layout
12429
12430 \end_inset
12431
12432
12433 \series default
12434  The level of the style in the table of contents.
12435  This is used for automatic numbering of section headings.
12436 \end_layout
12437
12438 \begin_layout Description
12439 \begin_inset Flex CharStyle:Code
12440 status collapsed
12441
12442 \begin_layout Plain Layout
12443 TopSep
12444 \end_layout
12445
12446 \end_inset
12447
12448  [
12449 \begin_inset Flex CharStyle:Code
12450 status collapsed
12451
12452 \begin_layout Plain Layout
12453 float=0
12454 \end_layout
12455
12456 \end_inset
12457
12458 ] The vertical space with which the very first of a chain of paragraphs
12459  with this layout is separated from the previous paragraph.
12460  If the previous paragraph has another layout, the separations are not simply
12461  added, but the maximum is taken.
12462 \end_layout
12463
12464 \begin_layout Subsection
12465 Floats
12466 \begin_inset CommandInset label
12467 LatexCommand label
12468 name "sub:Floats"
12469
12470 \end_inset
12471
12472
12473 \end_layout
12474
12475 \begin_layout Standard
12476 Since version 1.3.0 of LyX, it is has been both possible and necessary to
12477  define the floats (
12478 \begin_inset Flex CharStyle:MenuItem
12479 status collapsed
12480
12481 \begin_layout Plain Layout
12482 figure
12483 \end_layout
12484
12485 \end_inset
12486
12487
12488 \begin_inset Flex CharStyle:MenuItem
12489 status collapsed
12490
12491 \begin_layout Plain Layout
12492 table
12493 \end_layout
12494
12495 \end_inset
12496
12497 , \SpecialChar \ldots{}
12498 ) in the text class itself.
12499  Standard floats are included in the file 
12500 \begin_inset Flex CharStyle:Code
12501 status collapsed
12502
12503 \begin_layout Plain Layout
12504 stdfloats.inc
12505 \end_layout
12506
12507 \end_inset
12508
12509 , so you may have to do no more than add
12510 \end_layout
12511
12512 \begin_layout LyX-Code
12513 Input stdfloats.inc
12514 \end_layout
12515
12516 \begin_layout Standard
12517 to your layout file.
12518  If you want to implement a text class that proposes some other float types
12519  (like the AGU class bundled with LyX), the information below will hopefully
12520  help you:
12521 \end_layout
12522
12523 \begin_layout Description
12524 \begin_inset Flex CharStyle:Code
12525 status collapsed
12526
12527 \begin_layout Plain Layout
12528 Extension
12529 \end_layout
12530
12531 \end_inset
12532
12533  [
12534 \begin_inset Flex CharStyle:Code
12535 status collapsed
12536
12537 \begin_layout Plain Layout
12538 string
12539 \end_layout
12540
12541 \end_inset
12542
12543 =
12544 \begin_inset Quotes erd
12545 \end_inset
12546
12547
12548 \begin_inset Quotes erd
12549 \end_inset
12550
12551 ] The file name extension of an auxiliary file for the list of figures (or
12552  whatever).
12553  LaTeX writes the captions to this file.
12554 \end_layout
12555
12556 \begin_layout Description
12557 \begin_inset Flex CharStyle:Code
12558 status collapsed
12559
12560 \begin_layout Plain Layout
12561 GuiName
12562 \end_layout
12563
12564 \end_inset
12565
12566  [
12567 \begin_inset Flex CharStyle:Code
12568 status collapsed
12569
12570 \begin_layout Plain Layout
12571 string
12572 \end_layout
12573
12574 \end_inset
12575
12576 =
12577 \begin_inset Quotes erd
12578 \end_inset
12579
12580
12581 \begin_inset Quotes erd
12582 \end_inset
12583
12584 ] The string that will be used in the menus and also for the caption.
12585  This is translated to the current language if babel is used.
12586 \end_layout
12587
12588 \begin_layout Description
12589 \begin_inset Flex CharStyle:Code
12590 status collapsed
12591
12592 \begin_layout Plain Layout
12593 HTML*
12594 \end_layout
12595
12596 \end_inset
12597
12598  These are used for XHTML output.
12599  See 
12600 \begin_inset CommandInset ref
12601 LatexCommand ref
12602 reference "sec:Tags-for-XHTML"
12603
12604 \end_inset
12605
12606 .
12607 \end_layout
12608
12609 \begin_layout Description
12610 \begin_inset Flex CharStyle:Code
12611 status collapsed
12612
12613 \begin_layout Plain Layout
12614 ListCommand
12615 \end_layout
12616
12617 \end_inset
12618
12619  [
12620 \begin_inset Flex CharStyle:Code
12621 status collapsed
12622
12623 \begin_layout Plain Layout
12624 string
12625 \end_layout
12626
12627 \end_inset
12628
12629 =
12630 \begin_inset Quotes erd
12631 \end_inset
12632
12633
12634 \begin_inset Quotes erd
12635 \end_inset
12636
12637 ] The command used to generate a list of floats of this type; the leading
12638  `
12639 \backslash
12640 ' should be omitted.
12641  This 
12642 \emph on
12643 must
12644 \emph default
12645  be given if 
12646 \begin_inset Flex CharStyle:Code
12647 status collapsed
12648
12649 \begin_layout Plain Layout
12650 NeedsFloatPkg
12651 \end_layout
12652
12653 \end_inset
12654
12655  is false, since there is no standard way to generate this command.
12656  It is ignored if 
12657 \begin_inset Flex CharStyle:Code
12658 status collapsed
12659
12660 \begin_layout Plain Layout
12661 NeedsFloatPkg
12662 \end_layout
12663
12664 \end_inset
12665
12666  is true, since in that case there is a standard way.
12667 \end_layout
12668
12669 \begin_layout Description
12670 \begin_inset Flex CharStyle:Code
12671 status collapsed
12672
12673 \begin_layout Plain Layout
12674 ListName
12675 \end_layout
12676
12677 \end_inset
12678
12679  [
12680 \begin_inset Flex CharStyle:Code
12681 status collapsed
12682
12683 \begin_layout Plain Layout
12684 string
12685 \end_layout
12686
12687 \end_inset
12688
12689 =
12690 \begin_inset Quotes erd
12691 \end_inset
12692
12693
12694 \begin_inset Quotes erd
12695 \end_inset
12696
12697 ] A title for a list of floats of this kind (list of figures, tables, or
12698  whatever).
12699  It is used for the screen label within LyX; it is passed to LaTeX for use
12700  as the title there; and it is used as the title in XHTML output.
12701  It will be translated to the document language.
12702 \end_layout
12703
12704 \begin_layout Description
12705 \begin_inset Flex CharStyle:Code
12706 status collapsed
12707
12708 \begin_layout Plain Layout
12709 NeedsFloatPkg
12710 \end_layout
12711
12712 \end_inset
12713
12714  [
12715 \begin_inset Flex CharStyle:Code
12716 status open
12717
12718 \begin_layout Plain Layout
12719 0
12720 \end_layout
12721
12722 \end_inset
12723
12724
12725 \begin_inset Flex CharStyle:Code
12726 status collapsed
12727
12728 \begin_layout Plain Layout
12729
12730 \emph on
12731 1
12732 \end_layout
12733
12734 \end_inset
12735
12736 ] Indicates whether the float is already defined in the document class or
12737  if we instead need to load 
12738 \begin_inset Flex CharStyle:Code
12739 status collapsed
12740
12741 \begin_layout Plain Layout
12742 float.sty
12743 \end_layout
12744
12745 \end_inset
12746
12747  and use what it provides.
12748  The default is 
12749 \begin_inset Flex CharStyle:Code
12750 status collapsed
12751
12752 \begin_layout Plain Layout
12753 1
12754 \end_layout
12755
12756 \end_inset
12757
12758 , which means: use 
12759 \begin_inset Flex CharStyle:Code
12760 status collapsed
12761
12762 \begin_layout Plain Layout
12763 float.sty
12764 \end_layout
12765
12766 \end_inset
12767
12768 .
12769  It should be set to 
12770 \begin_inset Flex CharStyle:Code
12771 status collapsed
12772
12773 \begin_layout Plain Layout
12774 0
12775 \end_layout
12776
12777 \end_inset
12778
12779  if the float is already defined by the LaTeX document class.
12780 \end_layout
12781
12782 \begin_layout Description
12783 \begin_inset Flex CharStyle:Code
12784 status collapsed
12785
12786 \begin_layout Plain Layout
12787 NumberWithin
12788 \end_layout
12789
12790 \end_inset
12791
12792  [
12793 \begin_inset Flex CharStyle:Code
12794 status collapsed
12795
12796 \begin_layout Plain Layout
12797 string
12798 \end_layout
12799
12800 \end_inset
12801
12802 =
12803 \begin_inset Quotes erd
12804 \end_inset
12805
12806
12807 \begin_inset Quotes erd
12808 \end_inset
12809
12810 ] This (optional) argument determines whether floats of this class will
12811  be numbered within some sectional unit of the document.
12812  For example, if within is equal to 
12813 \begin_inset Flex CharStyle:Code
12814 status collapsed
12815
12816 \begin_layout Plain Layout
12817 chapter
12818 \end_layout
12819
12820 \end_inset
12821
12822 , the floats will be numbered within chapters.
12823  
12824 \end_layout
12825
12826 \begin_layout Description
12827 \begin_inset Flex CharStyle:Code
12828 status collapsed
12829
12830 \begin_layout Plain Layout
12831 Placement
12832 \end_layout
12833
12834 \end_inset
12835
12836  [
12837 \begin_inset Flex CharStyle:Code
12838 status collapsed
12839
12840 \begin_layout Plain Layout
12841 string
12842 \end_layout
12843
12844 \end_inset
12845
12846 =
12847 \begin_inset Quotes erd
12848 \end_inset
12849
12850
12851 \begin_inset Quotes erd
12852 \end_inset
12853
12854 ] The default placement for the given class of floats.
12855  The string should be as in standard LaTeX: 
12856 \begin_inset Flex CharStyle:Code
12857 status collapsed
12858
12859 \begin_layout Plain Layout
12860 t
12861 \end_layout
12862
12863 \end_inset
12864
12865
12866 \begin_inset Flex CharStyle:Code
12867 status collapsed
12868
12869 \begin_layout Plain Layout
12870 b
12871 \end_layout
12872
12873 \end_inset
12874
12875
12876 \begin_inset Flex CharStyle:Code
12877 status collapsed
12878
12879 \begin_layout Plain Layout
12880 p
12881 \end_layout
12882
12883 \end_inset
12884
12885  and 
12886 \begin_inset Flex CharStyle:Code
12887 status collapsed
12888
12889 \begin_layout Plain Layout
12890 h
12891 \end_layout
12892
12893 \end_inset
12894
12895  for top, bottom, page, and here, respectively.
12896 \begin_inset Foot
12897 status collapsed
12898
12899 \begin_layout Plain Layout
12900 Note that the order of these letters in the string is irrelevant, like in
12901  LaTeX.
12902 \end_layout
12903
12904 \end_inset
12905
12906  On top of that there is a new type, 
12907 \begin_inset Flex CharStyle:Code
12908 status collapsed
12909
12910 \begin_layout Plain Layout
12911 H
12912 \end_layout
12913
12914 \end_inset
12915
12916 , which does not really correspond to a float, since it means: put it 
12917 \begin_inset Quotes eld
12918 \end_inset
12919
12920 here
12921 \begin_inset Quotes erd
12922 \end_inset
12923
12924  and nowhere else.
12925  Note however that the 
12926 \begin_inset Flex CharStyle:Code
12927 status collapsed
12928
12929 \begin_layout Plain Layout
12930 H
12931 \end_layout
12932
12933 \end_inset
12934
12935  specifier is special and, because of implementation details, cannot be
12936  used in non-built in float types.
12937  If you do not understand what this means, just use 
12938 \begin_inset Quotes eld
12939 \end_inset
12940
12941
12942 \begin_inset Flex CharStyle:Code
12943 status collapsed
12944
12945 \begin_layout Plain Layout
12946 tbp
12947 \end_layout
12948
12949 \end_inset
12950
12951
12952 \begin_inset Quotes erd
12953 \end_inset
12954
12955 .
12956 \end_layout
12957
12958 \begin_layout Description
12959 \begin_inset Flex CharStyle:Code
12960 status collapsed
12961
12962 \begin_layout Plain Layout
12963 RefPrefix
12964 \end_layout
12965
12966 \end_inset
12967
12968  [
12969 \begin_inset Flex CharStyle:Code
12970 status collapsed
12971
12972 \begin_layout Plain Layout
12973 string
12974 \end_layout
12975
12976 \end_inset
12977
12978 ] The prefix to use when creating labels referring to floats of this type.
12979  This allows the use of formatted references.
12980 \end_layout
12981
12982 \begin_layout Description
12983 \begin_inset Flex CharStyle:Code
12984 status collapsed
12985
12986 \begin_layout Plain Layout
12987 Style
12988 \end_layout
12989
12990 \end_inset
12991
12992  [
12993 \begin_inset Flex CharStyle:Code
12994 status collapsed
12995
12996 \begin_layout Plain Layout
12997 string
12998 \end_layout
12999
13000 \end_inset
13001
13002 =
13003 \begin_inset Quotes erd
13004 \end_inset
13005
13006
13007 \begin_inset Quotes erd
13008 \end_inset
13009
13010 ] The style used when defining the float using 
13011 \begin_inset Flex CharStyle:Code
13012 status collapsed
13013
13014 \begin_layout Plain Layout
13015
13016 \backslash
13017 newfloat
13018 \end_layout
13019
13020 \end_inset
13021
13022 .
13023 \end_layout
13024
13025 \begin_layout Description
13026 \begin_inset Flex CharStyle:Code
13027 status collapsed
13028
13029 \begin_layout Plain Layout
13030 Type
13031 \end_layout
13032
13033 \end_inset
13034
13035  [
13036 \begin_inset Flex CharStyle:Code
13037 status collapsed
13038
13039 \begin_layout Plain Layout
13040 string
13041 \end_layout
13042
13043 \end_inset
13044
13045 =
13046 \begin_inset Quotes erd
13047 \end_inset
13048
13049
13050 \begin_inset Quotes erd
13051 \end_inset
13052
13053 ] The 
13054 \begin_inset Quotes eld
13055 \end_inset
13056
13057 type
13058 \begin_inset Quotes erd
13059 \end_inset
13060
13061  of the new class of floats, like program or algorithm.
13062  After the appropriate 
13063 \begin_inset Flex CharStyle:Code
13064 status collapsed
13065
13066 \begin_layout Plain Layout
13067
13068 \backslash
13069 newfloat
13070 \end_layout
13071
13072 \end_inset
13073
13074 , commands such as 
13075 \begin_inset Flex CharStyle:Code
13076 status collapsed
13077
13078 \begin_layout Plain Layout
13079
13080 \backslash
13081 begin{program}
13082 \end_layout
13083
13084 \end_inset
13085
13086  or 
13087 \begin_inset Flex CharStyle:Code
13088 status collapsed
13089
13090 \begin_layout Plain Layout
13091
13092 \backslash
13093 end{algorithm*}
13094 \end_layout
13095
13096 \end_inset
13097
13098  will be available.
13099 \end_layout
13100
13101 \begin_layout Standard
13102 Note that defining a float with type 
13103 \begin_inset Flex CharStyle:Code
13104 status collapsed
13105
13106 \begin_layout Plain Layout
13107
13108 \emph on
13109 type
13110 \end_layout
13111
13112 \end_inset
13113
13114  automatically defines the corresponding counter with name 
13115 \begin_inset Flex CharStyle:Code
13116 status collapsed
13117
13118 \begin_layout Plain Layout
13119
13120 \emph on
13121 type
13122 \end_layout
13123
13124 \end_inset
13125
13126 .
13127 \end_layout
13128
13129 \begin_layout Subsection
13130 Flex insets and InsetLayout
13131 \begin_inset CommandInset label
13132 LatexCommand label
13133 name "sub:Flex-insets-and"
13134
13135 \end_inset
13136
13137
13138 \end_layout
13139
13140 \begin_layout Standard
13141 LyX has supported character styles since version 1.4.0; as of version 1.6.0,
13142  these are called Flex insets.
13143  
13144 \end_layout
13145
13146 \begin_layout Standard
13147 Flex insets come in three different kinds: 
13148 \end_layout
13149
13150 \begin_layout Itemize
13151 character style (
13152 \begin_inset Flex CharStyle:Code
13153 status collapsed
13154
13155 \begin_layout Plain Layout
13156 CharStyle
13157 \end_layout
13158
13159 \end_inset
13160
13161 ): These define semantic markup corresponding to such LaTeX commands as
13162  
13163 \begin_inset Flex CharStyle:Code
13164 status collapsed
13165
13166 \begin_layout Plain Layout
13167
13168 \backslash
13169 noun
13170 \end_layout
13171
13172 \end_inset
13173
13174  and 
13175 \begin_inset Flex CharStyle:Code
13176 status collapsed
13177
13178 \begin_layout Plain Layout
13179
13180 \backslash
13181 code
13182 \end_layout
13183
13184 \end_inset
13185
13186 .
13187 \end_layout
13188
13189 \begin_layout Itemize
13190 user custom (
13191 \begin_inset Flex CharStyle:Code
13192 status collapsed
13193
13194 \begin_layout Plain Layout
13195 Custom
13196 \end_layout
13197
13198 \end_inset
13199
13200 ): These can be used to define custom collapsible insets, similar to TeX
13201  code, footnote, and the like.
13202  An obvious example is an endnote inset, which is defined in the 
13203 \begin_inset Flex CharStyle:Code
13204 status collapsed
13205
13206 \begin_layout Plain Layout
13207 endnote
13208 \end_layout
13209
13210 \end_inset
13211
13212  module.
13213 \end_layout
13214
13215 \begin_layout Itemize
13216 XML elements (
13217 \begin_inset Flex CharStyle:Code
13218 status collapsed
13219
13220 \begin_layout Plain Layout
13221 Element
13222 \end_layout
13223
13224 \end_inset
13225
13226 ): For use with DocBook classes.
13227 \end_layout
13228
13229 \begin_layout Standard
13230 Flex insets are defined using the 
13231 \begin_inset Flex CharStyle:Code
13232 status collapsed
13233
13234 \begin_layout Plain Layout
13235 InsetLayout
13236 \end_layout
13237
13238 \end_inset
13239
13240  tag, which shall be explained in a moment.
13241 \end_layout
13242
13243 \begin_layout Standard
13244 The 
13245 \begin_inset Flex CharStyle:Code
13246 status collapsed
13247
13248 \begin_layout Plain Layout
13249 InsetLayout
13250 \end_layout
13251
13252 \end_inset
13253
13254  tag also serves another function: It can be used to customize the general
13255  layout of many different types of insets.
13256  Currently, 
13257 \begin_inset Flex CharStyle:Code
13258 status collapsed
13259
13260 \begin_layout Plain Layout
13261 InsetLayout
13262 \end_layout
13263
13264 \end_inset
13265
13266  can be used to customize the layout parameters for footnotes, marginal
13267  notes, note insets, TeX code (ERT) insets, branches, listings, indexes,
13268  boxes, tables, algorithms, URLs, and optional arguments, as well as to
13269  define Flex insets.
13270 \end_layout
13271
13272 \begin_layout Standard
13273 The 
13274 \begin_inset Flex CharStyle:Code
13275 status collapsed
13276
13277 \begin_layout Plain Layout
13278 InsetLayout
13279 \end_layout
13280
13281 \end_inset
13282
13283  definition must begin with a line of the form:
13284 \end_layout
13285
13286 \begin_layout LyX-Code
13287 InsetLayout <Type>
13288 \end_layout
13289
13290 \begin_layout Standard
13291 Here 
13292 \begin_inset Flex CharStyle:Code
13293 status collapsed
13294
13295 \begin_layout Plain Layout
13296 <Type>
13297 \end_layout
13298
13299 \end_inset
13300
13301  indicates the inset whose layout is being defined, and here there are two
13302  cases.
13303 \end_layout
13304
13305 \begin_layout Enumerate
13306 The layout for a pre-existing inset is being modified.
13307  In this case, can be 
13308 \begin_inset Flex CharStyle:Code
13309 status collapsed
13310
13311 \begin_layout Plain Layout
13312 <Type>
13313 \end_layout
13314
13315 \end_inset
13316
13317  any one of the following: 
13318 \begin_inset Flex CharStyle:Code
13319 status collapsed
13320
13321 \begin_layout Plain Layout
13322 Algorithm
13323 \end_layout
13324
13325 \end_inset
13326
13327
13328 \begin_inset Flex CharStyle:Code
13329 status collapsed
13330
13331 \begin_layout Plain Layout
13332 Branch
13333 \end_layout
13334
13335 \end_inset
13336
13337
13338 \begin_inset Flex CharStyle:Code
13339 status collapsed
13340
13341 \begin_layout Plain Layout
13342 Box
13343 \end_layout
13344
13345 \end_inset
13346
13347
13348 \begin_inset Flex CharStyle:Code
13349 status collapsed
13350
13351 \begin_layout Plain Layout
13352 Box:shaded
13353 \end_layout
13354
13355 \end_inset
13356
13357
13358 \begin_inset Flex CharStyle:Code
13359 status collapsed
13360
13361 \begin_layout Plain Layout
13362 ERT
13363 \end_layout
13364
13365 \end_inset
13366
13367
13368 \begin_inset Flex CharStyle:Code
13369 status collapsed
13370
13371 \begin_layout Plain Layout
13372 Figure
13373 \end_layout
13374
13375 \end_inset
13376
13377
13378 \begin_inset Flex CharStyle:Code
13379 status collapsed
13380
13381 \begin_layout Plain Layout
13382 Foot
13383 \end_layout
13384
13385 \end_inset
13386
13387
13388 \begin_inset Flex CharStyle:Code
13389 status collapsed
13390
13391 \begin_layout Plain Layout
13392 Index
13393 \end_layout
13394
13395 \end_inset
13396
13397
13398 \begin_inset Flex CharStyle:Code
13399 status collapsed
13400
13401 \begin_layout Plain Layout
13402 Info
13403 \end_layout
13404
13405 \end_inset
13406
13407
13408 \begin_inset Flex CharStyle:Code
13409 status collapsed
13410
13411 \begin_layout Plain Layout
13412 Info:menu
13413 \end_layout
13414
13415 \end_inset
13416
13417
13418 \begin_inset Flex CharStyle:Code
13419 status collapsed
13420
13421 \begin_layout Plain Layout
13422 Info:shortcut
13423 \end_layout
13424
13425 \end_inset
13426
13427
13428 \begin_inset Flex CharStyle:Code
13429 status collapsed
13430
13431 \begin_layout Plain Layout
13432 Info:shortcuts
13433 \end_layout
13434
13435 \end_inset
13436
13437
13438 \begin_inset Flex CharStyle:Code
13439 status collapsed
13440
13441 \begin_layout Plain Layout
13442 Listings
13443 \end_layout
13444
13445 \end_inset
13446
13447
13448 \begin_inset Flex CharStyle:Code
13449 status collapsed
13450
13451 \begin_layout Plain Layout
13452 Marginal
13453 \end_layout
13454
13455 \end_inset
13456
13457
13458 \begin_inset Flex CharStyle:Code
13459 status collapsed
13460
13461 \begin_layout Plain Layout
13462 Note:Comment
13463 \end_layout
13464
13465 \end_inset
13466
13467
13468 \begin_inset Flex CharStyle:Code
13469 status collapsed
13470
13471 \begin_layout Plain Layout
13472 Note:Note
13473 \end_layout
13474
13475 \end_inset
13476
13477
13478 \begin_inset Flex CharStyle:Code
13479 status collapsed
13480
13481 \begin_layout Plain Layout
13482 Note:GreyedOut
13483 \end_layout
13484
13485 \end_inset
13486
13487
13488 \begin_inset Flex CharStyle:Code
13489 status collapsed
13490
13491 \begin_layout Plain Layout
13492 OptArg
13493 \end_layout
13494
13495 \end_inset
13496
13497
13498 \begin_inset Flex CharStyle:Code
13499 status collapsed
13500
13501 \begin_layout Plain Layout
13502 Table
13503 \end_layout
13504
13505 \end_inset
13506
13507 , or 
13508 \begin_inset Flex CharStyle:Code
13509 status collapsed
13510
13511 \begin_layout Plain Layout
13512 URL
13513 \end_layout
13514
13515 \end_inset
13516
13517 .
13518 \end_layout
13519
13520 \begin_layout Enumerate
13521 The layout for a Flex inset is being defined.
13522  In this case, 
13523 \begin_inset Flex CharStyle:Code
13524 status collapsed
13525
13526 \begin_layout Plain Layout
13527 <Type>
13528 \end_layout
13529
13530 \end_inset
13531
13532  can be any valid identifier not used by a pre-existing inset.
13533  Note that the definition of a flex inset 
13534 \emph on
13535 must 
13536 \emph default
13537 also include a 
13538 \begin_inset Flex CharStyle:Code
13539 status collapsed
13540
13541 \begin_layout Plain Layout
13542 LyXType
13543 \end_layout
13544
13545 \end_inset
13546
13547  entry, declaring which type of inset this is.
13548 \end_layout
13549
13550 \begin_layout Standard
13551 The 
13552 \begin_inset Flex CharStyle:Code
13553 status collapsed
13554
13555 \begin_layout Plain Layout
13556 InsetLayout
13557 \end_layout
13558
13559 \end_inset
13560
13561  definition can contain the following entries:
13562 \end_layout
13563
13564 \begin_layout Description
13565 \begin_inset Flex CharStyle:Code
13566 status collapsed
13567
13568 \begin_layout Plain Layout
13569 BgColor
13570 \end_layout
13571
13572 \end_inset
13573
13574  The color for the inset's background.
13575  The valid colors are defined in 
13576 \begin_inset Flex CharStyle:Code
13577 status collapsed
13578
13579 \begin_layout Plain Layout
13580 src/ColorCode.h
13581 \end_layout
13582
13583 \end_inset
13584
13585 .
13586 \end_layout
13587
13588 \begin_layout Description
13589 \begin_inset Flex CharStyle:Code
13590 status collapsed
13591
13592 \begin_layout Plain Layout
13593 ContentAsLabel
13594 \end_layout
13595
13596 \end_inset
13597
13598  [
13599 \begin_inset Flex CharStyle:Code
13600 status collapsed
13601
13602 \begin_layout Plain Layout
13603
13604 \emph on
13605 0
13606 \end_layout
13607
13608 \end_inset
13609
13610 ,
13611 \begin_inset Flex CharStyle:Code
13612 status collapsed
13613
13614 \begin_layout Plain Layout
13615 1
13616 \end_layout
13617
13618 \end_inset
13619
13620 ] Whether to use the content of the inset as the label, when the inset is
13621  closed.
13622  Default is false.
13623 \end_layout
13624
13625 \begin_layout Description
13626 \begin_inset Flex CharStyle:Code
13627 status collapsed
13628
13629 \begin_layout Plain Layout
13630 CopyStyle
13631 \end_layout
13632
13633 \end_inset
13634
13635  As with paragraph styles (see page 
13636 \begin_inset CommandInset ref
13637 LatexCommand ref
13638 reference "des:CopyStyle"
13639
13640 \end_inset
13641
13642 ).
13643 \end_layout
13644
13645 \begin_layout Description
13646 \begin_inset Flex CharStyle:Code
13647 status collapsed
13648
13649 \begin_layout Plain Layout
13650 CustomPars
13651 \end_layout
13652
13653 \end_inset
13654
13655  [
13656 \begin_inset Flex CharStyle:Code
13657 status collapsed
13658
13659 \begin_layout Plain Layout
13660
13661 \emph on
13662 0
13663 \end_layout
13664
13665 \end_inset
13666
13667 ,
13668 \begin_inset Flex CharStyle:Code
13669 status collapsed
13670
13671 \begin_layout Plain Layout
13672 1
13673 \end_layout
13674
13675 \end_inset
13676
13677 ] Indicates whether the user may employ the Paragraph Settings dialog to
13678  customize the paragraph.
13679 \end_layout
13680
13681 \begin_layout Description
13682 \begin_inset Flex CharStyle:Code
13683 status collapsed
13684
13685 \begin_layout Plain Layout
13686 Decoration
13687 \end_layout
13688
13689 \end_inset
13690
13691  can be 
13692 \begin_inset Flex CharStyle:Code
13693 status collapsed
13694
13695 \begin_layout Plain Layout
13696 Classic
13697 \end_layout
13698
13699 \end_inset
13700
13701
13702 \begin_inset Flex CharStyle:Code
13703 status collapsed
13704
13705 \begin_layout Plain Layout
13706 Minimalistic
13707 \end_layout
13708
13709 \end_inset
13710
13711 , or 
13712 \begin_inset Flex CharStyle:Code
13713 status collapsed
13714
13715 \begin_layout Plain Layout
13716 Conglomerate
13717 \end_layout
13718
13719 \end_inset
13720
13721 , describing the rendering style used for the inset's frame and buttons.
13722  Footnotes generally use 
13723 \begin_inset Flex CharStyle:Code
13724 status collapsed
13725
13726 \begin_layout Plain Layout
13727 Classic
13728 \end_layout
13729
13730 \end_inset
13731
13732 , ERT insets generally 
13733 \begin_inset Flex CharStyle:Code
13734 status collapsed
13735
13736 \begin_layout Plain Layout
13737 Minimalistic
13738 \end_layout
13739
13740 \end_inset
13741
13742 , and character styles 
13743 \begin_inset Flex CharStyle:Code
13744 status collapsed
13745
13746 \begin_layout Plain Layout
13747 Conglomerate
13748 \end_layout
13749
13750 \end_inset
13751
13752 .
13753 \end_layout
13754
13755 \begin_layout Description
13756 \begin_inset Flex CharStyle:Code
13757 status collapsed
13758
13759 \begin_layout Plain Layout
13760 End
13761 \end_layout
13762
13763 \end_inset
13764
13765  Required at the end of the InsetLayout declarations.
13766 \end_layout
13767
13768 \begin_layout Description
13769 \begin_inset Flex CharStyle:Code
13770 status collapsed
13771
13772 \begin_layout Plain Layout
13773 Font
13774 \end_layout
13775
13776 \end_inset
13777
13778  The font used for both the text body 
13779 \emph on
13780 and
13781 \emph default
13782  the label.
13783  See section
13784 \begin_inset space ~
13785 \end_inset
13786
13787
13788 \begin_inset CommandInset ref
13789 LatexCommand ref
13790 reference "sub:Font-description"
13791
13792 \end_inset
13793
13794 .
13795  Note that defining this font automatically defines the 
13796 \begin_inset Flex CharStyle:Code
13797 status collapsed
13798
13799 \begin_layout Plain Layout
13800 LabelFont
13801 \end_layout
13802
13803 \end_inset
13804
13805  to the same value, so define this first and define 
13806 \begin_inset Flex CharStyle:Code
13807 status collapsed
13808
13809 \begin_layout Plain Layout
13810 LabelFont
13811 \end_layout
13812
13813 \end_inset
13814
13815  later if you want them to be different.
13816 \end_layout
13817
13818 \begin_layout Description
13819 \begin_inset Flex CharStyle:Code
13820 status collapsed
13821
13822 \begin_layout Plain Layout
13823 ForceLTR
13824 \end_layout
13825
13826 \end_inset
13827
13828  Force the 
13829 \begin_inset Quotes eld
13830 \end_inset
13831
13832 latex
13833 \begin_inset Quotes erd
13834 \end_inset
13835
13836  language, leading to Left-to-Right (latin) output, e.
13837 \begin_inset space \thinspace{}
13838 \end_inset
13839
13840 g.
13841 \begin_inset space \space{}
13842 \end_inset
13843
13844 in TeX code or URL.
13845  A kludge.
13846 \end_layout
13847
13848 \begin_layout Description
13849 \begin_inset Flex CharStyle:Code
13850 status collapsed
13851
13852 \begin_layout Plain Layout
13853 ForcePlain
13854 \end_layout
13855
13856 \end_inset
13857
13858  [
13859 \begin_inset Flex CharStyle:Code
13860 status collapsed
13861
13862 \begin_layout Plain Layout
13863
13864 \emph on
13865 0
13866 \end_layout
13867
13868 \end_inset
13869
13870 ,
13871 \begin_inset Flex CharStyle:Code
13872 status collapsed
13873
13874 \begin_layout Plain Layout
13875 1
13876 \end_layout
13877
13878 \end_inset
13879
13880 ] Indicates whether the PlainLayout should be used or, instead, the user
13881  can change the paragraph style used in the inset.
13882  Default is false.
13883 \end_layout
13884
13885 \begin_layout Description
13886 \begin_inset Flex CharStyle:Code
13887 status collapsed
13888
13889 \begin_layout Plain Layout
13890 FreeSpacing
13891 \end_layout
13892
13893 \end_inset
13894
13895  As with paragraph styles (see page 
13896 \begin_inset CommandInset ref
13897 LatexCommand pageref
13898 reference "des:FreeSpacing"
13899
13900 \end_inset
13901
13902 ).
13903  Default is false.
13904 \end_layout
13905
13906 \begin_layout Description
13907 \begin_inset Flex CharStyle:Code
13908 status collapsed
13909
13910 \begin_layout Plain Layout
13911 HTML*
13912 \end_layout
13913
13914 \end_inset
13915
13916  These tags control XHTML output.
13917  See 
13918 \end_layout
13919
13920 \begin_layout Description
13921 \begin_inset Flex CharStyle:Code
13922 status collapsed
13923
13924 \begin_layout Plain Layout
13925 InToc
13926 \end_layout
13927
13928 \end_inset
13929
13930  [
13931 \begin_inset Flex CharStyle:Code
13932 status collapsed
13933
13934 \begin_layout Plain Layout
13935
13936 \emph on
13937 0
13938 \end_layout
13939
13940 \end_inset
13941
13942 ,
13943 \begin_inset Flex CharStyle:Code
13944 status collapsed
13945
13946 \begin_layout Plain Layout
13947 1
13948 \end_layout
13949
13950 \end_inset
13951
13952 ] Whether to include the contents of this inset in the strings generated
13953  for the `Outline' pane.
13954  One would not, for example, want the content of a footnote in a section
13955  header to be included in the TOC displayed in the outline, but one would
13956  normally want the content of a character style displayed.
13957  Default is false: not to include.
13958 \end_layout
13959
13960 \begin_layout Description
13961 \begin_inset Flex CharStyle:Code
13962 status collapsed
13963
13964 \begin_layout Plain Layout
13965 KeepEmpty
13966 \end_layout
13967
13968 \end_inset
13969
13970  As with paragraph styles (see page 
13971 \begin_inset CommandInset ref
13972 LatexCommand pageref
13973 reference "des:KeepEmpty"
13974
13975 \end_inset
13976
13977 ).
13978  Default is false.
13979 \end_layout
13980
13981 \begin_layout Description
13982 \begin_inset Flex CharStyle:Code
13983 status collapsed
13984
13985 \begin_layout Plain Layout
13986 LabelFont
13987 \end_layout
13988
13989 \end_inset
13990
13991  The font used for the label.
13992  See section
13993 \begin_inset space ~
13994 \end_inset
13995
13996
13997 \begin_inset CommandInset ref
13998 LatexCommand ref
13999 reference "sub:Font-description"
14000
14001 \end_inset
14002
14003 .
14004  Note that this definition can never appear before 
14005 \begin_inset Flex CharStyle:Code
14006 status collapsed
14007
14008 \begin_layout Plain Layout
14009 Font
14010 \end_layout
14011
14012 \end_inset
14013
14014 , lest it be ineffective.
14015 \end_layout
14016
14017 \begin_layout Description
14018 \begin_inset Flex CharStyle:Code
14019 status collapsed
14020
14021 \begin_layout Plain Layout
14022 LabelString
14023 \end_layout
14024
14025 \end_inset
14026
14027  What will be displayed on the button or elsewhere as the inset label.
14028  Some inset types (TeX code and Branch) modify this label on the fly.
14029 \end_layout
14030
14031 \begin_layout Description
14032 \begin_inset Flex CharStyle:Code
14033 status collapsed
14034
14035 \begin_layout Plain Layout
14036 LatexName
14037 \end_layout
14038
14039 \end_inset
14040
14041  The name of the corresponding LaTeX stuff.
14042  Either the environment or command name.
14043 \end_layout
14044
14045 \begin_layout Description
14046 \begin_inset Flex CharStyle:Code
14047 status collapsed
14048
14049 \begin_layout Plain Layout
14050 LatexParam
14051 \end_layout
14052
14053 \end_inset
14054
14055  The optional parameter for the corresponding 
14056 \begin_inset Flex CharStyle:Code
14057 status collapsed
14058
14059 \begin_layout Plain Layout
14060 LatexName
14061 \end_layout
14062
14063 \end_inset
14064
14065  stuff, including possible bracket pairs like 
14066 \begin_inset Flex CharStyle:Code
14067 status collapsed
14068
14069 \begin_layout Plain Layout
14070 []
14071 \end_layout
14072
14073 \end_inset
14074
14075 .
14076  This parameter cannot be changed from within LyX.
14077 \end_layout
14078
14079 \begin_layout Description
14080 \begin_inset Flex CharStyle:Code
14081 status collapsed
14082
14083 \begin_layout Plain Layout
14084 LatexType
14085 \end_layout
14086
14087 \end_inset
14088
14089  As with paragraph styles (see page 
14090 \begin_inset CommandInset ref
14091 LatexCommand pageref
14092 reference "des:LatexType"
14093
14094 \end_inset
14095
14096 ).
14097 \end_layout
14098
14099 \begin_layout Description
14100 \begin_inset Flex CharStyle:Code
14101 status collapsed
14102
14103 \begin_layout Plain Layout
14104 LyxType
14105 \end_layout
14106
14107 \end_inset
14108
14109  Can be 
14110 \begin_inset Flex CharStyle:Code
14111 status collapsed
14112
14113 \begin_layout Plain Layout
14114 charstyle
14115 \end_layout
14116
14117 \end_inset
14118
14119
14120 \begin_inset Flex CharStyle:Code
14121 status collapsed
14122
14123 \begin_layout Plain Layout
14124 custom
14125 \end_layout
14126
14127 \end_inset
14128
14129
14130 \begin_inset Flex CharStyle:Code
14131 status collapsed
14132
14133 \begin_layout Plain Layout
14134 element
14135 \end_layout
14136
14137 \end_inset
14138
14139 , or 
14140 \begin_inset Flex CharStyle:Code
14141 status collapsed
14142
14143 \begin_layout Plain Layout
14144 end
14145 \end_layout
14146
14147 \end_inset
14148
14149  (indicating a dummy definition ending definitions of charstyles, etc).
14150  This entry is required in and is only meaningful for Flex insets.
14151  Among other things, it determines on which menu this inset will appear.
14152  Setting 
14153 \begin_inset Flex CharStyle:Code
14154 status collapsed
14155
14156 \begin_layout Plain Layout
14157 LyXType
14158 \end_layout
14159
14160 \end_inset
14161
14162  to 
14163 \begin_inset Flex CharStyle:Code
14164 status collapsed
14165
14166 \begin_layout Plain Layout
14167 charstyle
14168 \end_layout
14169
14170 \end_inset
14171
14172  will set 
14173 \begin_inset Flex CharStyle:Code
14174 status collapsed
14175
14176 \begin_layout Plain Layout
14177 MultiPar
14178 \end_layout
14179
14180 \end_inset
14181
14182  to false.
14183  
14184 \begin_inset Flex CharStyle:Code
14185 status collapsed
14186
14187 \begin_layout Plain Layout
14188 MultiPar
14189 \end_layout
14190
14191 \end_inset
14192
14193  can be set to true for charstyle insets, if you wish, by setting it 
14194 \emph on
14195 after
14196 \emph default
14197  you set the 
14198 \begin_inset Flex CharStyle:Code
14199 status collapsed
14200
14201 \begin_layout Plain Layout
14202 LyXType
14203 \end_layout
14204
14205 \end_inset
14206
14207 .
14208 \end_layout
14209
14210 \begin_layout Description
14211 \begin_inset Flex CharStyle:Code
14212 status collapsed
14213
14214 \begin_layout Plain Layout
14215 MultiPar
14216 \end_layout
14217
14218 \end_inset
14219
14220  [
14221 \begin_inset Flex CharStyle:Code
14222 status collapsed
14223
14224 \begin_layout Plain Layout
14225
14226 \emph on
14227 0
14228 \end_layout
14229
14230 \end_inset
14231
14232 ,
14233 \begin_inset Flex CharStyle:Code
14234 status collapsed
14235
14236 \begin_layout Plain Layout
14237 1
14238 \end_layout
14239
14240 \end_inset
14241
14242 ] Whether multiple paragraphs are permitted in this inset.
14243  This will also set 
14244 \begin_inset Flex CharStyle:Code
14245 status collapsed
14246
14247 \begin_layout Plain Layout
14248 CustomPars
14249 \end_layout
14250
14251 \end_inset
14252
14253  to the same value and 
14254 \begin_inset Flex CharStyle:Code
14255 status collapsed
14256
14257 \begin_layout Plain Layout
14258 ForcePlain
14259 \end_layout
14260
14261 \end_inset
14262
14263  to the opposite value.
14264  These can be reset to other values, if they are used 
14265 \emph on
14266 after
14267 \emph default
14268  
14269 \begin_inset Flex CharStyle:Code
14270 status collapsed
14271
14272 \begin_layout Plain Layout
14273 MultiPar
14274 \end_layout
14275
14276 \end_inset
14277
14278 .
14279  Default is true.
14280 \end_layout
14281
14282 \begin_layout Description
14283 \begin_inset Flex CharStyle:Code
14284 status collapsed
14285
14286 \begin_layout Plain Layout
14287 NeedProtect
14288 \end_layout
14289
14290 \end_inset
14291
14292  [
14293 \begin_inset Flex CharStyle:Code
14294 status collapsed
14295
14296 \begin_layout Plain Layout
14297
14298 \emph on
14299 0
14300 \end_layout
14301
14302 \end_inset
14303
14304 ,
14305 \begin_inset Flex CharStyle:Code
14306 status collapsed
14307
14308 \begin_layout Plain Layout
14309 1
14310 \end_layout
14311
14312 \end_inset
14313
14314 ] Whether fragile commands in this layout should be 
14315 \begin_inset Flex CharStyle:Code
14316 status collapsed
14317
14318 \begin_layout Plain Layout
14319
14320 \backslash
14321 protect
14322 \end_layout
14323
14324 \end_inset
14325
14326 'ed.
14327  (Note: This is 
14328 \emph on
14329 not
14330 \emph default
14331  whether the command should itself be protected.) Default is false.
14332 \end_layout
14333
14334 \begin_layout Description
14335 \begin_inset Flex CharStyle:Code
14336 status collapsed
14337
14338 \begin_layout Plain Layout
14339 PassThru
14340 \end_layout
14341
14342 \end_inset
14343
14344  [
14345 \begin_inset Flex CharStyle:Code
14346 status collapsed
14347
14348 \begin_layout Plain Layout
14349
14350 \emph on
14351 0
14352 \end_layout
14353
14354 \end_inset
14355
14356 ,
14357 \begin_inset Flex CharStyle:Code
14358 status collapsed
14359
14360 \begin_layout Plain Layout
14361 1
14362 \end_layout
14363
14364 \end_inset
14365
14366 ] As with paragraph styles (see page 
14367 \begin_inset CommandInset ref
14368 LatexCommand pageref
14369 reference "des:PathThru"
14370
14371 \end_inset
14372
14373 ).
14374  Default is false.
14375 \end_layout
14376
14377 \begin_layout Description
14378 \begin_inset Flex CharStyle:Code
14379 status collapsed
14380
14381 \begin_layout Plain Layout
14382 Preamble
14383 \end_layout
14384
14385 \end_inset
14386
14387  As with paragraph styles (see page 
14388 \begin_inset CommandInset ref
14389 LatexCommand pageref
14390 reference "des:Preamble"
14391
14392 \end_inset
14393
14394 ).
14395 \end_layout
14396
14397 \begin_layout Description
14398 \begin_inset Flex CharStyle:Code
14399 status collapsed
14400
14401 \begin_layout Plain Layout
14402 RefPrefix
14403 \end_layout
14404
14405 \end_inset
14406
14407  [
14408 \begin_inset Flex CharStyle:Code
14409 status collapsed
14410
14411 \begin_layout Plain Layout
14412 string
14413 \end_layout
14414
14415 \end_inset
14416
14417 ] The prefix to use when creating labels referring to insets of this type.
14418  This allows the use of formatted references.
14419 \end_layout
14420
14421 \begin_layout Description
14422 \begin_inset Flex CharStyle:Code
14423 status collapsed
14424
14425 \begin_layout Plain Layout
14426 Requires
14427 \end_layout
14428
14429 \end_inset
14430
14431  [
14432 \begin_inset Flex CharStyle:Code
14433 status collapsed
14434
14435 \begin_layout Plain Layout
14436 string
14437 \end_layout
14438
14439 \end_inset
14440
14441 ] As with paragraph styles (see page 
14442 \begin_inset CommandInset ref
14443 LatexCommand pageref
14444 reference "des:Requires"
14445
14446 \end_inset
14447
14448 ).
14449 \end_layout
14450
14451 \begin_layout Description
14452 \begin_inset Flex CharStyle:Code
14453 status collapsed
14454
14455 \begin_layout Plain Layout
14456 Spellcheck
14457 \end_layout
14458
14459 \end_inset
14460
14461  [
14462 \begin_inset Flex CharStyle:Code
14463 status collapsed
14464
14465 \begin_layout Plain Layout
14466 0
14467 \end_layout
14468
14469 \end_inset
14470
14471 ,
14472 \begin_inset Flex CharStyle:Code
14473 status collapsed
14474
14475 \begin_layout Plain Layout
14476
14477 \emph on
14478 1
14479 \end_layout
14480
14481 \end_inset
14482
14483 ] Spellcheck the contents of this inset.
14484  Default is true.
14485 \end_layout
14486
14487 \begin_layout Subsection
14488 Counters
14489 \begin_inset CommandInset label
14490 LatexCommand label
14491 name "sub:Counters"
14492
14493 \end_inset
14494
14495
14496 \end_layout
14497
14498 \begin_layout Standard
14499 Since version 1.3.0 of LyX, it is both possible and necessary to define the
14500  counters (
14501 \begin_inset Flex CharStyle:MenuItem
14502 status collapsed
14503
14504 \begin_layout Plain Layout
14505 chapter
14506 \end_layout
14507
14508 \end_inset
14509
14510
14511 \begin_inset Flex CharStyle:MenuItem
14512 status collapsed
14513
14514 \begin_layout Plain Layout
14515 figure
14516 \end_layout
14517
14518 \end_inset
14519
14520 , \SpecialChar \ldots{}
14521 ) in the text class itself.
14522  The standard counters are defined in the file 
14523 \begin_inset Flex CharStyle:Code
14524 status collapsed
14525
14526 \begin_layout Plain Layout
14527 stdcounters.inc
14528 \end_layout
14529
14530 \end_inset
14531
14532 , so you may have to do no more than add
14533 \end_layout
14534
14535 \begin_layout LyX-Code
14536 Input stdcounters.inc
14537 \end_layout
14538
14539 \begin_layout Standard
14540 to your layout file to get them to work.
14541  But if you want to define custom counters, then you can do so.
14542  The counter declaration must begin with:
14543 \end_layout
14544
14545 \begin_layout LyX-Code
14546 Counter CounterName
14547 \end_layout
14548
14549 \begin_layout Standard
14550 where of course `
14551 \begin_inset Flex CharStyle:Code
14552 status collapsed
14553
14554 \begin_layout Plain Layout
14555 CounterName
14556 \end_layout
14557
14558 \end_inset
14559
14560 ' is replaced by the name of the counter.
14561  And it must end with 
14562 \begin_inset Quotes eld
14563 \end_inset
14564
14565
14566 \begin_inset Flex CharStyle:Code
14567 status collapsed
14568
14569 \begin_layout Plain Layout
14570 End
14571 \end_layout
14572
14573 \end_inset
14574
14575
14576 \begin_inset Quotes erd
14577 \end_inset
14578
14579 .
14580  The following parameters can also be used:
14581 \end_layout
14582
14583 \begin_layout Description
14584 \begin_inset Flex CharStyle:Code
14585 status collapsed
14586
14587 \begin_layout Plain Layout
14588 LabelString
14589 \end_layout
14590
14591 \end_inset
14592
14593  [
14594 \begin_inset Flex CharStyle:Code
14595 status collapsed
14596
14597 \begin_layout Plain Layout
14598 string
14599 \end_layout
14600
14601 \end_inset
14602
14603 =
14604 \begin_inset Quotes erd
14605 \end_inset
14606
14607
14608 \begin_inset Quotes erd
14609 \end_inset
14610
14611 ] When defined, this string defines how the counter is displayed.
14612  Setting this value sets 
14613 \begin_inset Flex CharStyle:Code
14614 status collapsed
14615
14616 \begin_layout Plain Layout
14617 LabelStringAppendix
14618 \end_layout
14619
14620 \end_inset
14621
14622  to the same value.
14623  The following special constructs can be used in the string:
14624 \end_layout
14625
14626 \begin_deeper
14627 \begin_layout Itemize
14628 \begin_inset Flex CharStyle:Code
14629 status collapsed
14630
14631 \begin_layout Plain Layout
14632
14633 \backslash
14634 thecounter
14635 \end_layout
14636
14637 \end_inset
14638
14639  will be replaced by the expansion of the 
14640 \begin_inset Flex CharStyle:Code
14641 status collapsed
14642
14643 \begin_layout Plain Layout
14644 LabelString
14645 \end_layout
14646
14647 \end_inset
14648
14649  (or 
14650 \begin_inset Flex CharStyle:Code
14651 status collapsed
14652
14653 \begin_layout Plain Layout
14654 LabelStringAppendix
14655 \end_layout
14656
14657 \end_inset
14658
14659 ) of the counter 
14660 \begin_inset Flex CharStyle:Code
14661 status collapsed
14662
14663 \begin_layout Plain Layout
14664 counter
14665 \end_layout
14666
14667 \end_inset
14668
14669 .
14670  
14671 \end_layout
14672
14673 \begin_layout Itemize
14674 counter values can be expressed using LaTeX-like macros 
14675 \begin_inset Flex CharStyle:Code
14676 status collapsed
14677
14678 \begin_layout Plain Layout
14679
14680 \backslash
14681
14682 \emph on
14683 numbertype
14684 \emph default
14685 {
14686 \emph on
14687 counter
14688 \emph default
14689 }
14690 \end_layout
14691
14692 \end_inset
14693
14694 , where 
14695 \begin_inset Flex CharStyle:Code
14696 status collapsed
14697
14698 \begin_layout Plain Layout
14699
14700 \emph on
14701 numbertype
14702 \end_layout
14703
14704 \end_inset
14705
14706  can be:
14707 \begin_inset Foot
14708 status collapsed
14709
14710 \begin_layout Plain Layout
14711
14712 \family roman
14713 \series medium
14714 \shape up
14715 \size normal
14716 \emph off
14717 \bar no
14718 \noun off
14719 \color none
14720 Actually, the situation is a bit more complicated: any
14721 \family default
14722 \series default
14723 \shape default
14724 \emph default
14725 \bar default
14726  
14727 \size default
14728 \emph on
14729 \noun default
14730 \color inherit
14731 numbertype
14732 \family roman
14733 \series medium
14734 \shape up
14735 \size normal
14736 \emph off
14737 \bar no
14738 \noun off
14739  other than those described below will produce arabic numerals.
14740  It would not be surprising to see this change in the future.
14741 \end_layout
14742
14743 \end_inset
14744
14745  
14746 \begin_inset Flex CharStyle:Code
14747 status collapsed
14748
14749 \begin_layout Plain Layout
14750 arabic
14751 \end_layout
14752
14753 \end_inset
14754
14755 : 1, 2, 3,\SpecialChar \ldots{}
14756
14757 \begin_inset Flex CharStyle:Code
14758 status collapsed
14759
14760 \begin_layout Plain Layout
14761 alph
14762 \end_layout
14763
14764 \end_inset
14765
14766  for lower-case letters: a, b, c, \SpecialChar \ldots{}
14767
14768 \begin_inset Flex CharStyle:Code
14769 status collapsed
14770
14771 \begin_layout Plain Layout
14772 Alph
14773 \end_layout
14774
14775 \end_inset
14776
14777  for upper-case letters: A, B, C, \SpecialChar \ldots{}
14778
14779 \begin_inset Flex CharStyle:Code
14780 status collapsed
14781
14782 \begin_layout Plain Layout
14783 roman
14784 \end_layout
14785
14786 \end_inset
14787
14788  for lower-case roman numerals: i, ii, iii, \SpecialChar \ldots{}
14789
14790 \begin_inset Flex CharStyle:Code
14791 status collapsed
14792
14793 \begin_layout Plain Layout
14794 Roman
14795 \end_layout
14796
14797 \end_inset
14798
14799  for upper-case roman numerals: I, II, III\SpecialChar \ldots{}
14800
14801 \begin_inset Flex CharStyle:Code
14802 status collapsed
14803
14804 \begin_layout Plain Layout
14805 hebrew
14806 \end_layout
14807
14808 \end_inset
14809
14810  for hebrew numerals.
14811 \end_layout
14812
14813 \end_deeper
14814 \begin_layout Standard
14815 If LabelString is not defined, a default value is constructed as follows:
14816  if the counter has a master counter 
14817 \begin_inset Flex CharStyle:Code
14818 status collapsed
14819
14820 \begin_layout Plain Layout
14821 master
14822 \end_layout
14823
14824 \end_inset
14825
14826  (defined via 
14827 \begin_inset Flex CharStyle:Code
14828 status collapsed
14829
14830 \begin_layout Plain Layout
14831 Within
14832 \end_layout
14833
14834 \end_inset
14835
14836 ), the string 
14837 \begin_inset Flex CharStyle:Code
14838 status collapsed
14839
14840 \begin_layout Plain Layout
14841
14842 \backslash
14843 themaster.
14844 \backslash
14845 arabic{counter}
14846 \end_layout
14847
14848 \end_inset
14849
14850  is used; otherwise the string 
14851 \begin_inset Flex CharStyle:Code
14852 status collapsed
14853
14854 \begin_layout Plain Layout
14855
14856 \backslash
14857 arabic{counter}
14858 \end_layout
14859
14860 \end_inset
14861
14862  is used.
14863 \end_layout
14864
14865 \begin_layout Description
14866 \begin_inset Flex CharStyle:Code
14867 status collapsed
14868
14869 \begin_layout Plain Layout
14870 LabelStringAppendix
14871 \end_layout
14872
14873 \end_inset
14874
14875  [
14876 \begin_inset Flex CharStyle:Code
14877 status collapsed
14878
14879 \begin_layout Plain Layout
14880 string
14881 \end_layout
14882
14883 \end_inset
14884
14885 =
14886 \begin_inset Quotes erd
14887 \end_inset
14888
14889
14890 \begin_inset Quotes erd
14891 \end_inset
14892
14893 ] Same as 
14894 \begin_inset Flex CharStyle:Code
14895 status collapsed
14896
14897 \begin_layout Plain Layout
14898 LabelString
14899 \end_layout
14900
14901 \end_inset
14902
14903 , but for use in the Appendix.
14904 \end_layout
14905
14906 \begin_layout Description
14907 \begin_inset Flex CharStyle:Code
14908 status collapsed
14909
14910 \begin_layout Plain Layout
14911 PrettyFormat
14912 \end_layout
14913
14914 \end_inset
14915
14916  [
14917 \begin_inset Flex CharStyle:Code
14918 status collapsed
14919
14920 \begin_layout Plain Layout
14921 string
14922 \end_layout
14923
14924 \end_inset
14925
14926 =
14927 \begin_inset Quotes erd
14928 \end_inset
14929
14930
14931 \begin_inset Quotes erd
14932 \end_inset
14933
14934 ] A format for use with formatted references to this counter.
14935  For example, one might want to have references to section numbers appear
14936  as 
14937 \begin_inset Quotes eld
14938 \end_inset
14939
14940 Section 2.4
14941 \begin_inset Quotes erd
14942 \end_inset
14943
14944 .
14945  The string should contain 
14946 \begin_inset Quotes eld
14947 \end_inset
14948
14949 ##
14950 \begin_inset Quotes erd
14951 \end_inset
14952
14953 .
14954  This will be replaced by the counter number itself.
14955  So, for sections, it would be: Section ##.
14956 \end_layout
14957
14958 \begin_layout Description
14959 \begin_inset Flex CharStyle:Code
14960 status collapsed
14961
14962 \begin_layout Plain Layout
14963 Within
14964 \end_layout
14965
14966 \end_inset
14967
14968  [
14969 \begin_inset Flex CharStyle:Code
14970 status collapsed
14971
14972 \begin_layout Plain Layout
14973 string
14974 \end_layout
14975
14976 \end_inset
14977
14978 =
14979 \begin_inset Quotes erd
14980 \end_inset
14981
14982
14983 \begin_inset Quotes erd
14984 \end_inset
14985
14986 ] If this is set to the name of another counter, the present counter will
14987  be reset every time the other one is increased.
14988  For example, 
14989 \begin_inset Flex CharStyle:Code
14990 status collapsed
14991
14992 \begin_layout Plain Layout
14993 subsection
14994 \end_layout
14995
14996 \end_inset
14997
14998  is numbered inside 
14999 \begin_inset Flex CharStyle:Code
15000 status collapsed
15001
15002 \begin_layout Plain Layout
15003 section
15004 \end_layout
15005
15006 \end_inset
15007
15008 .
15009 \end_layout
15010
15011 \begin_layout Subsection
15012 Font description
15013 \begin_inset CommandInset label
15014 LatexCommand label
15015 name "sub:Font-description"
15016
15017 \end_inset
15018
15019
15020 \end_layout
15021
15022 \begin_layout Standard
15023 A font description looks like this:
15024 \end_layout
15025
15026 \begin_layout LyX-Code
15027 Font 
15028 \family roman
15029 \emph on
15030 or
15031 \family default
15032 \emph default
15033  LabelFont
15034 \end_layout
15035
15036 \begin_layout LyX-Code
15037  ...
15038 \end_layout
15039
15040 \begin_layout LyX-Code
15041 EndFont
15042 \end_layout
15043
15044 \begin_layout Standard
15045 The following commands are available:
15046 \end_layout
15047
15048 \begin_layout Description
15049 \begin_inset Flex CharStyle:Code
15050 status collapsed
15051
15052 \begin_layout Plain Layout
15053 Color
15054 \end_layout
15055
15056 \end_inset
15057
15058  [
15059 \begin_inset Flex CharStyle:Code
15060 status collapsed
15061
15062 \begin_layout Plain Layout
15063
15064 \emph on
15065 none
15066 \end_layout
15067
15068 \end_inset
15069
15070
15071 \begin_inset Flex CharStyle:Code
15072 status collapsed
15073
15074 \begin_layout Plain Layout
15075 black
15076 \end_layout
15077
15078 \end_inset
15079
15080
15081 \begin_inset Flex CharStyle:Code
15082 status collapsed
15083
15084 \begin_layout Plain Layout
15085 white
15086 \end_layout
15087
15088 \end_inset
15089
15090
15091 \begin_inset Flex CharStyle:Code
15092 status collapsed
15093
15094 \begin_layout Plain Layout
15095 red
15096 \end_layout
15097
15098 \end_inset
15099
15100
15101 \begin_inset Flex CharStyle:Code
15102 status collapsed
15103
15104 \begin_layout Plain Layout
15105 green
15106 \end_layout
15107
15108 \end_inset
15109
15110
15111 \begin_inset Flex CharStyle:Code
15112 status collapsed
15113
15114 \begin_layout Plain Layout
15115 blue
15116 \end_layout
15117
15118 \end_inset
15119
15120
15121 \begin_inset Flex CharStyle:Code
15122 status collapsed
15123
15124 \begin_layout Plain Layout
15125 cyan
15126 \end_layout
15127
15128 \end_inset
15129
15130
15131 \begin_inset Flex CharStyle:Code
15132 status collapsed
15133
15134 \begin_layout Plain Layout
15135 magenta
15136 \end_layout
15137
15138 \end_inset
15139
15140
15141 \begin_inset Flex CharStyle:Code
15142 status collapsed
15143
15144 \begin_layout Plain Layout
15145 yellow
15146 \end_layout
15147
15148 \end_inset
15149
15150 ]
15151 \end_layout
15152
15153 \begin_layout Description
15154 \begin_inset Flex CharStyle:Code
15155 status collapsed
15156
15157 \begin_layout Plain Layout
15158 Family
15159 \end_layout
15160
15161 \end_inset
15162
15163  [
15164 \begin_inset Flex CharStyle:Code
15165 status collapsed
15166
15167 \begin_layout Plain Layout
15168
15169 \emph on
15170 Roman
15171 \end_layout
15172
15173 \end_inset
15174
15175
15176 \begin_inset Flex CharStyle:Code
15177 status collapsed
15178
15179 \begin_layout Plain Layout
15180 Sans
15181 \end_layout
15182
15183 \end_inset
15184
15185
15186 \begin_inset Flex CharStyle:Code
15187 status collapsed
15188
15189 \begin_layout Plain Layout
15190 Typewriter
15191 \end_layout
15192
15193 \end_inset
15194
15195
15196 \end_layout
15197
15198 \begin_layout Description
15199 \begin_inset Flex CharStyle:Code
15200 status collapsed
15201
15202 \begin_layout Plain Layout
15203 Misc
15204 \end_layout
15205
15206 \end_inset
15207
15208  [
15209 \begin_inset Flex CharStyle:Code
15210 status collapsed
15211
15212 \begin_layout Plain Layout
15213 string
15214 \end_layout
15215
15216 \end_inset
15217
15218 ] Valid arguments are: 
15219 \begin_inset Flex CharStyle:Code
15220 status collapsed
15221
15222 \begin_layout Plain Layout
15223 emph
15224 \end_layout
15225
15226 \end_inset
15227
15228
15229 \begin_inset Flex CharStyle:Code
15230 status collapsed
15231
15232 \begin_layout Plain Layout
15233 noun
15234 \end_layout
15235
15236 \end_inset
15237
15238
15239 \begin_inset Flex CharStyle:Code
15240 status collapsed
15241
15242 \begin_layout Plain Layout
15243 underbar
15244 \end_layout
15245
15246 \end_inset
15247
15248
15249 \begin_inset Flex CharStyle:Code
15250 status collapsed
15251
15252 \begin_layout Plain Layout
15253 no_emph
15254 \end_layout
15255
15256 \end_inset
15257
15258
15259 \begin_inset Flex CharStyle:Code
15260 status collapsed
15261
15262 \begin_layout Plain Layout
15263 no_noun
15264 \end_layout
15265
15266 \end_inset
15267
15268  and 
15269 \begin_inset Flex CharStyle:Code
15270 status collapsed
15271
15272 \begin_layout Plain Layout
15273 no_bar
15274 \end_layout
15275
15276 \end_inset
15277
15278 .
15279  Each of these turns on or off the corresponding attribute.
15280  For example, 
15281 \begin_inset Flex CharStyle:Code
15282 status collapsed
15283
15284 \begin_layout Plain Layout
15285 emph
15286 \end_layout
15287
15288 \end_inset
15289
15290  turns on emphasis, and 
15291 \begin_inset Flex CharStyle:Code
15292 status collapsed
15293
15294 \begin_layout Plain Layout
15295 no_emph
15296 \end_layout
15297
15298 \end_inset
15299
15300  turns it off.
15301  
15302 \begin_inset Newline newline
15303 \end_inset
15304
15305 If the latter seems puzzling, remember that the font settings for the present
15306  context are generally inherited from the surrounding context.
15307  So 
15308 \begin_inset Flex CharStyle:Code
15309 status collapsed
15310
15311 \begin_layout Plain Layout
15312 no_emph
15313 \end_layout
15314
15315 \end_inset
15316
15317  would turn off the emphasis that was anyway in effect, say, in a theorem
15318  environment.
15319 \end_layout
15320
15321 \begin_layout Description
15322 \begin_inset Flex CharStyle:Code
15323 status collapsed
15324
15325 \begin_layout Plain Layout
15326 Series
15327 \end_layout
15328
15329 \end_inset
15330
15331  [
15332 \begin_inset Flex CharStyle:Code
15333 status collapsed
15334
15335 \begin_layout Plain Layout
15336
15337 \emph on
15338 Medium
15339 \end_layout
15340
15341 \end_inset
15342
15343
15344 \begin_inset Flex CharStyle:Code
15345 status collapsed
15346
15347 \begin_layout Plain Layout
15348 Bold
15349 \end_layout
15350
15351 \end_inset
15352
15353
15354 \end_layout
15355
15356 \begin_layout Description
15357 \begin_inset Flex CharStyle:Code
15358 status collapsed
15359
15360 \begin_layout Plain Layout
15361 Shape
15362 \end_layout
15363
15364 \end_inset
15365
15366  [
15367 \begin_inset Flex CharStyle:Code
15368 status collapsed
15369
15370 \begin_layout Plain Layout
15371
15372 \emph on
15373 Up
15374 \end_layout
15375
15376 \end_inset
15377
15378
15379 \begin_inset Flex CharStyle:Code
15380 status collapsed
15381
15382 \begin_layout Plain Layout
15383 Italic
15384 \end_layout
15385
15386 \end_inset
15387
15388
15389 \begin_inset Flex CharStyle:Code
15390 status collapsed
15391
15392 \begin_layout Plain Layout
15393 SmallCaps
15394 \end_layout
15395
15396 \end_inset
15397
15398
15399 \begin_inset Flex CharStyle:Code
15400 status collapsed
15401
15402 \begin_layout Plain Layout
15403 Slanted
15404 \end_layout
15405
15406 \end_inset
15407
15408
15409 \end_layout
15410
15411 \begin_layout Description
15412 \begin_inset Flex CharStyle:Code
15413 status collapsed
15414
15415 \begin_layout Plain Layout
15416 Size
15417 \end_layout
15418
15419 \end_inset
15420
15421  [
15422 \begin_inset Flex CharStyle:Code
15423 status collapsed
15424
15425 \begin_layout Plain Layout
15426 tiny
15427 \end_layout
15428
15429 \end_inset
15430
15431
15432 \begin_inset Flex CharStyle:Code
15433 status collapsed
15434
15435 \begin_layout Plain Layout
15436 small
15437 \end_layout
15438
15439 \end_inset
15440
15441
15442 \begin_inset Flex CharStyle:Code
15443 status collapsed
15444
15445 \begin_layout Plain Layout
15446
15447 \emph on
15448 normal
15449 \end_layout
15450
15451 \end_inset
15452
15453
15454 \begin_inset Flex CharStyle:Code
15455 status collapsed
15456
15457 \begin_layout Plain Layout
15458 large
15459 \end_layout
15460
15461 \end_inset
15462
15463
15464 \begin_inset Flex CharStyle:Code
15465 status collapsed
15466
15467 \begin_layout Plain Layout
15468 larger
15469 \end_layout
15470
15471 \end_inset
15472
15473
15474 \begin_inset Flex CharStyle:Code
15475 status collapsed
15476
15477 \begin_layout Plain Layout
15478 largest
15479 \end_layout
15480
15481 \end_inset
15482
15483
15484 \begin_inset Flex CharStyle:Code
15485 status collapsed
15486
15487 \begin_layout Plain Layout
15488 huge
15489 \end_layout
15490
15491 \end_inset
15492
15493
15494 \begin_inset Flex CharStyle:Code
15495 status collapsed
15496
15497 \begin_layout Plain Layout
15498 giant
15499 \end_layout
15500
15501 \end_inset
15502
15503 ]
15504 \end_layout
15505
15506 \begin_layout Subsection
15507 Citation format description
15508 \end_layout
15509
15510 \begin_layout Standard
15511 The 
15512 \begin_inset Flex CharStyle:Code
15513 status collapsed
15514
15515 \begin_layout Plain Layout
15516 CiteFormat
15517 \end_layout
15518
15519 \end_inset
15520
15521  blocks are used to describe how bibliographic information should be displayed,
15522  both within LyX itself (in the citation dialog and in tooltips, for example)
15523  and in XHTML output.
15524  Such a block might look like this:
15525 \end_layout
15526
15527 \begin_layout LyX-Code
15528 CiteFormat
15529 \end_layout
15530
15531 \begin_layout LyX-Code
15532  article ...
15533 \end_layout
15534
15535 \begin_layout LyX-Code
15536  book ...
15537 \end_layout
15538
15539 \begin_layout LyX-Code
15540 End
15541 \end_layout
15542
15543 \begin_layout Standard
15544 The individual lines define how the bibliographic information associated
15545  with an article or book, respectively, is to be displayed, and such a definitio
15546 n can be given for any `entry type' that might be present in a BibTeX file.
15547  LyX defines a default format in the source code that will be used if no
15548  specific definition has been given.
15549  LyX predefines several formats in the file 
15550 \begin_inset Flex CharStyle:Code
15551 status collapsed
15552
15553 \begin_layout Plain Layout
15554 stdciteformats.inc
15555 \end_layout
15556
15557 \end_inset
15558
15559 , which is included in most of LyX's document classes.
15560 \end_layout
15561
15562 \begin_layout Standard
15563 The definitions use a simple language that allows BibTeX keys to be replaced
15564  with their values.
15565  Keys should be enclosed in % signs, e.g.: 
15566 \begin_inset Flex CharStyle:Code
15567 status collapsed
15568
15569 \begin_layout Plain Layout
15570 %author%
15571 \end_layout
15572
15573 \end_inset
15574
15575 .
15576  So a simple definition might look like this:
15577 \end_layout
15578
15579 \begin_layout LyX-Code
15580 misc %author%, 
15581 \begin_inset Quotes eld
15582 \end_inset
15583
15584 %title
15585 \begin_inset Quotes erd
15586 \end_inset
15587
15588 .
15589 \end_layout
15590
15591 \begin_layout Standard
15592 This would print the author, followed by a comma, followed by the title,
15593  in quotes, followed by a period.
15594 \end_layout
15595
15596 \begin_layout Standard
15597 Of course, sometimes you may want to print a key only if it exists.
15598  This can be done by using a conditional construction, such as: 
15599 \begin_inset Flex CharStyle:Code
15600 status collapsed
15601
15602 \begin_layout Plain Layout
15603 {%volume%[[vol.
15604 \begin_inset space ~
15605 \end_inset
15606
15607 %volume%]]}
15608 \end_layout
15609
15610 \end_inset
15611
15612 .
15613  This says: If the 
15614 \begin_inset Flex CharStyle:Code
15615 status collapsed
15616
15617 \begin_layout Plain Layout
15618 volume
15619 \end_layout
15620
15621 \end_inset
15622
15623  key exists, then print 
15624 \begin_inset Quotes eld
15625 \end_inset
15626
15627 vol.
15628 \begin_inset space ~
15629 \end_inset
15630
15631
15632 \begin_inset Quotes erd
15633 \end_inset
15634
15635  followed by the volume key.
15636  It is also possible to have an else clause in the conditional, such as:
15637  
15638 \begin_inset Flex CharStyle:Code
15639 status collapsed
15640
15641 \begin_layout Plain Layout
15642 {%author%[[%author%]][[%editor%, ed.]]}
15643 \end_layout
15644
15645 \end_inset
15646
15647 .
15648  Here, the 
15649 \begin_inset Flex CharStyle:Code
15650 status collapsed
15651
15652 \begin_layout Plain Layout
15653 author
15654 \end_layout
15655
15656 \end_inset
15657
15658  key is printed if it exists; otherwise, the editor key is printed, followed
15659  by 
15660 \begin_inset Quotes eld
15661 \end_inset
15662
15663 ,
15664 \begin_inset space ~
15665 \end_inset
15666
15667 ed.
15668 \begin_inset Quotes erd
15669 \end_inset
15670
15671  Note that the key is again enclosed in % signs; the entire conditional
15672  is enclosed in braces; and the if and else clauses are enclosed in double
15673  brackets, 
15674 \begin_inset Quotes eld
15675 \end_inset
15676
15677 [[
15678 \begin_inset Quotes eld
15679 \end_inset
15680
15681  and 
15682 \begin_inset Quotes eld
15683 \end_inset
15684
15685 ]]
15686 \begin_inset Quotes erd
15687 \end_inset
15688
15689 .
15690  There must be no space between any of these.
15691 \end_layout
15692
15693 \begin_layout Standard
15694 There is one other piece of syntax available in definitions, which looks
15695  like this: 
15696 \begin_inset Flex CharStyle:Code
15697 status collapsed
15698
15699 \begin_layout Plain Layout
15700 {!<i>!}
15701 \end_layout
15702
15703 \end_inset
15704
15705 .
15706  This defines a piece of formatting information that is to be used when
15707  creating 
15708 \begin_inset Quotes eld
15709 \end_inset
15710
15711 rich text
15712 \begin_inset Quotes erd
15713 \end_inset
15714
15715 .
15716  Obviously, we do not want to output HTML tags when writing plain text,
15717  so they should be wrapped in 
15718 \begin_inset Quotes eld
15719 \end_inset
15720
15721 {!
15722 \begin_inset Quotes erd
15723 \end_inset
15724
15725  and 
15726 \begin_inset Quotes eld
15727 \end_inset
15728
15729 !}
15730 \begin_inset Quotes erd
15731 \end_inset
15732
15733 .
15734 \end_layout
15735
15736 \begin_layout Standard
15737 Two special sorts of definitions are also possible in a 
15738 \begin_inset Flex CharStyle:Code
15739 status collapsed
15740
15741 \begin_layout Plain Layout
15742 CiteFormat
15743 \end_layout
15744
15745 \end_inset
15746
15747  block.
15748  An example of the first would be:
15749 \end_layout
15750
15751 \begin_layout LyX-Code
15752 !quotetitle 
15753 \begin_inset Quotes eld
15754 \end_inset
15755
15756 %title%
15757 \begin_inset Quotes erd
15758 \end_inset
15759
15760
15761 \end_layout
15762
15763 \begin_layout Standard
15764 This is an abbreviation, or macro, and it can be used by treating it as
15765  if it were a key: 
15766 \begin_inset Flex CharStyle:Code
15767 status collapsed
15768
15769 \begin_layout Plain Layout
15770 %!quotetitle%
15771 \end_layout
15772
15773 \end_inset
15774
15775 .
15776  LyX will treat 
15777 \begin_inset Flex CharStyle:Code
15778 status collapsed
15779
15780 \begin_layout Plain Layout
15781 %!quotetitle%
15782 \end_layout
15783
15784 \end_inset
15785
15786  exactly as it would treat its definition.
15787  So, let us issue the obvious 
15788 \emph on
15789 warning
15790 \emph default
15791 .
15792  Do not do this:
15793 \end_layout
15794
15795 \begin_layout LyX-Code
15796 !funfun %funfun%
15797 \end_layout
15798
15799 \begin_layout Standard
15800 or anything like it.
15801  LyX shouldn't go into an infinite loop, but it may go into a long one before
15802  it gives up.
15803 \end_layout
15804
15805 \begin_layout Standard
15806 The second sort of special definition might look like this:
15807 \end_layout
15808
15809 \begin_layout LyX-Code
15810 _pptext pp.
15811 \end_layout
15812
15813 \begin_layout Standard
15814 This defines a translatable piece of text, which allows relevant parts of
15815  the bibliography to be translated.
15816  It can be included in a definition by treating it as a key: 
15817 \begin_inset Flex CharStyle:Code
15818 status collapsed
15819
15820 \begin_layout Plain Layout
15821 %_pptext%
15822 \end_layout
15823
15824 \end_inset
15825
15826 .
15827  Several of these are predefined in 
15828 \begin_inset Flex CharStyle:Code
15829 status collapsed
15830
15831 \begin_layout Plain Layout
15832 stdciteformats.inc
15833 \end_layout
15834
15835 \end_inset
15836
15837 .
15838  Note that these are not macros, in the sense just defined.
15839  They will not be expanded.
15840 \end_layout
15841
15842 \begin_layout Standard
15843 So here then is an example that use all these features:
15844 \end_layout
15845
15846 \begin_layout LyX-Code
15847 !authoredit {%author%[[%author%, ]][[{%editor%[[%editor%, %_edtext%, ]]}]]}
15848 \end_layout
15849
15850 \begin_layout Standard
15851 The defines a macro that prints the author, followed by a comma, if the
15852  
15853 \begin_inset Flex CharStyle:Code
15854 status collapsed
15855
15856 \begin_layout Plain Layout
15857 author
15858 \end_layout
15859
15860 \end_inset
15861
15862  key is defined, or else prints the name of the editor, followed by the
15863  
15864 \begin_inset Flex CharStyle:Code
15865 status collapsed
15866
15867 \begin_layout Plain Layout
15868 _edtext
15869 \end_layout
15870
15871 \end_inset
15872
15873  or its translation (it is by default 
15874 \begin_inset Quotes eld
15875 \end_inset
15876
15877 ed.
15878 \begin_inset Quotes erd
15879 \end_inset
15880
15881 ), if the 
15882 \begin_inset Flex CharStyle:Code
15883 status collapsed
15884
15885 \begin_layout Plain Layout
15886 editor
15887 \end_layout
15888
15889 \end_inset
15890
15891  key is defined.
15892  Note that this is in fact defined in 
15893 \begin_inset Flex CharStyle:Code
15894 status collapsed
15895
15896 \begin_layout Plain Layout
15897 stdciteformats.inc
15898 \end_layout
15899
15900 \end_inset
15901
15902 , so you can use it in your own definitions, or re-definitions, if you load
15903  that file first.
15904 \end_layout
15905
15906 \begin_layout Section
15907 \begin_inset CommandInset label
15908 LatexCommand label
15909 name "sec:Tags-for-XHTML"
15910
15911 \end_inset
15912
15913 Tags for XHTML output
15914 \end_layout
15915
15916 \begin_layout Standard
15917 As with LaTeX or DocBook, the format of LyX's XHTML output is also controlled
15918  by layout information.
15919  In general, LyX provides sensible defaults and, as mentioned earlier, it
15920  will even construct default CSS style rules from the other layout tags.
15921  For example, LyX will attempt to use the information provided in the 
15922 \begin_inset Flex CharStyle:Code
15923 status collapsed
15924
15925 \begin_layout Plain Layout
15926 Font
15927 \end_layout
15928
15929 \end_inset
15930
15931  declaration for the Chapter style to write CSS that will appropriately
15932  format chapter headings.
15933 \end_layout
15934
15935 \begin_layout Standard
15936 In many cases, then, you may not have to do anything at all to get acceptable
15937  XHTML output for your own environments, custom insets, and so forth.
15938  But in some cases you will, and so LyX provides a number of layout tags
15939  that can be used to customize the XHTML and CSS that are generated.
15940 \end_layout
15941
15942 \begin_layout Standard
15943 Note that there are two tags, 
15944 \begin_inset Flex CharStyle:Code
15945 status collapsed
15946
15947 \begin_layout Plain Layout
15948 HTMLPreamble
15949 \end_layout
15950
15951 \end_inset
15952
15953  and 
15954 \begin_inset Flex CharStyle:Code
15955 status collapsed
15956
15957 \begin_layout Plain Layout
15958 AddToHTMLPreamble
15959 \end_layout
15960
15961 \end_inset
15962
15963  that may appear outside style and inset declarations.
15964  See 
15965 \begin_inset CommandInset ref
15966 LatexCommand prettyref
15967 reference "sub:General-text-class"
15968
15969 \end_inset
15970
15971  for details on these.
15972 \end_layout
15973
15974 \begin_layout Subsection
15975 \begin_inset CommandInset label
15976 LatexCommand label
15977 name "sub:Paragraph-Style-XHTML"
15978
15979 \end_inset
15980
15981 Paragraph styles
15982 \end_layout
15983
15984 \begin_layout Standard
15985 The sort of XHTML LyX outputs for a paragraph depends upon whether we are
15986  dealing with a normal paragraph, a command, or an environment, where this
15987  is itself determined by the contents of the corresponding 
15988 \begin_inset Flex CharStyle:Code
15989 status collapsed
15990
15991 \begin_layout Plain Layout
15992 LaTeXType
15993 \end_layout
15994
15995 \end_inset
15996
15997  tag.
15998  
15999 \end_layout
16000
16001 \begin_layout Standard
16002 For a command or normal paragraph, the output XHTML has the following form:
16003 \end_layout
16004
16005 \begin_layout LyX-Code
16006 <tag attr=
16007 \begin_inset Quotes erd
16008 \end_inset
16009
16010 value
16011 \begin_inset Quotes erd
16012 \end_inset
16013
16014 >
16015 \end_layout
16016
16017 \begin_layout LyX-Code
16018 <labeltag attr=
16019 \begin_inset Quotes erd
16020 \end_inset
16021
16022 value
16023 \begin_inset Quotes erd
16024 \end_inset
16025
16026 >Label</labeltag>
16027 \end_layout
16028
16029 \begin_layout LyX-Code
16030 Contents of the paragraph.
16031 \end_layout
16032
16033 \begin_layout LyX-Code
16034 </tag>
16035 \end_layout
16036
16037 \begin_layout Standard
16038 The label tags are of course omitted if the paragraph does not have a label.
16039 \end_layout
16040
16041 \begin_layout Standard
16042 For an environment that is not some sort of list, the XHTML takes this form:
16043 \end_layout
16044
16045 \begin_layout LyX-Code
16046 <tag attr=
16047 \begin_inset Quotes erd
16048 \end_inset
16049
16050 value
16051 \begin_inset Quotes erd
16052 \end_inset
16053
16054 >
16055 \end_layout
16056
16057 \begin_layout LyX-Code
16058 <itemtag attr=
16059 \begin_inset Quotes erd
16060 \end_inset
16061
16062 value
16063 \begin_inset Quotes erd
16064 \end_inset
16065
16066 ><labeltag attr=
16067 \begin_inset Quotes erd
16068 \end_inset
16069
16070 value
16071 \begin_inset Quotes erd
16072 \end_inset
16073
16074 >Environment Label</labeltag>First paragraph.</itemtag>
16075 \end_layout
16076
16077 \begin_layout LyX-Code
16078 <itemtag>Second paragraph.</itemtag>
16079 \end_layout
16080
16081 \begin_layout LyX-Code
16082 </tag>
16083 \end_layout
16084
16085 \begin_layout Standard
16086 Note that the label is output only for the first paragraph, as it should
16087  be for a theorem, for example.
16088  
16089 \end_layout
16090
16091 \begin_layout Standard
16092 For a list, we have one of these forms:
16093 \end_layout
16094
16095 \begin_layout LyX-Code
16096 <tag attr=
16097 \begin_inset Quotes erd
16098 \end_inset
16099
16100 value
16101 \begin_inset Quotes erd
16102 \end_inset
16103
16104 >
16105 \end_layout
16106
16107 \begin_layout LyX-Code
16108 <itemtag attr=
16109 \begin_inset Quotes erd
16110 \end_inset
16111
16112 value
16113 \begin_inset Quotes erd
16114 \end_inset
16115
16116 ><labeltag attr=
16117 \begin_inset Quotes erd
16118 \end_inset
16119
16120 value
16121 \begin_inset Quotes erd
16122 \end_inset
16123
16124 >List Label</labeltag>First item.</itemtag>
16125 \end_layout
16126
16127 \begin_layout LyX-Code
16128 <itemtag attr=
16129 \begin_inset Quotes erd
16130 \end_inset
16131
16132 value
16133 \begin_inset Quotes erd
16134 \end_inset
16135
16136 ><labeltag attr=
16137 \begin_inset Quotes erd
16138 \end_inset
16139
16140 value
16141 \begin_inset Quotes erd
16142 \end_inset
16143
16144 >List Label</labeltag>Second item.</itemtag>
16145 \end_layout
16146
16147 \begin_layout LyX-Code
16148 </tag>
16149 \end_layout
16150
16151 \begin_layout LyX-Code
16152
16153 \end_layout
16154
16155 \begin_layout LyX-Code
16156 <tag attr=
16157 \begin_inset Quotes erd
16158 \end_inset
16159
16160 value
16161 \begin_inset Quotes erd
16162 \end_inset
16163
16164 >
16165 \end_layout
16166
16167 \begin_layout LyX-Code
16168 <labeltag attr=
16169 \begin_inset Quotes erd
16170 \end_inset
16171
16172 value
16173 \begin_inset Quotes erd
16174 \end_inset
16175
16176 >List Label</labeltag><itemtag attr=
16177 \begin_inset Quotes erd
16178 \end_inset
16179
16180 value
16181 \begin_inset Quotes erd
16182 \end_inset
16183
16184 >First item.</itemtag>
16185 \end_layout
16186
16187 \begin_layout LyX-Code
16188 <labeltag attr=
16189 \begin_inset Quotes erd
16190 \end_inset
16191
16192 value
16193 \begin_inset Quotes erd
16194 \end_inset
16195
16196 >List Label</labeltag><itemtag attr=
16197 \begin_inset Quotes erd
16198 \end_inset
16199
16200 value
16201 \begin_inset Quotes erd
16202 \end_inset
16203
16204 >Second item.</itemtag>
16205 \end_layout
16206
16207 \begin_layout LyX-Code
16208 </tag>
16209 \end_layout
16210
16211 \begin_layout Standard
16212 Note the different orders of 
16213 \begin_inset Flex CharStyle:Code
16214 status collapsed
16215
16216 \begin_layout Plain Layout
16217 labeltag
16218 \end_layout
16219
16220 \end_inset
16221
16222  and 
16223 \begin_inset Flex CharStyle:Code
16224 status collapsed
16225
16226 \begin_layout Plain Layout
16227 itemtag
16228 \end_layout
16229
16230 \end_inset
16231
16232 .
16233  Which order we get depends upon the setting of 
16234 \begin_inset Flex CharStyle:Code
16235 status collapsed
16236
16237 \begin_layout Plain Layout
16238 HTMLLabelFirst
16239 \end_layout
16240
16241 \end_inset
16242
16243 : If 
16244 \begin_inset Flex CharStyle:Code
16245 status collapsed
16246
16247 \begin_layout Plain Layout
16248 HTMLLabelFirst
16249 \end_layout
16250
16251 \end_inset
16252
16253  is false (the default), you get the first of these, with the label within
16254  the item; if true, you get the second, with the label outside the item.
16255 \end_layout
16256
16257 \begin_layout Standard
16258 The specific tags and attributes output for each paragraph type can be controlle
16259 d by means of the layout tags we are about to describe.
16260  As mentioned earlier, however, LyX uses sensible defaults for many of these,
16261  so you often may not need to do very much to get good XHTML output.
16262  Think of the available tags as there so you can tweak things to your liking.
16263 \end_layout
16264
16265 \begin_layout Description
16266 \begin_inset Flex CharStyle:Code
16267 status collapsed
16268
16269 \begin_layout Plain Layout
16270 HTMLAttr
16271 \end_layout
16272
16273 \end_inset
16274
16275  [
16276 \begin_inset Flex CharStyle:Code
16277 status collapsed
16278
16279 \begin_layout Plain Layout
16280 string
16281 \end_layout
16282
16283 \end_inset
16284
16285 ] Specifies attribute information to be output with the main tag.
16286  For example, 
16287 \begin_inset Quotes eld
16288 \end_inset
16289
16290
16291 \begin_inset Flex CharStyle:Code
16292 status collapsed
16293
16294 \begin_layout Plain Layout
16295 class=`mydiv'
16296 \end_layout
16297
16298 \end_inset
16299
16300
16301 \begin_inset Quotes erd
16302 \end_inset
16303
16304 .
16305  By default, LyX will output 
16306 \begin_inset Quotes eld
16307 \end_inset
16308
16309
16310 \begin_inset Flex CharStyle:Code
16311 status collapsed
16312
16313 \begin_layout Plain Layout
16314 class=`layoutname'
16315 \end_layout
16316
16317 \end_inset
16318
16319
16320 \begin_inset Quotes erd
16321 \end_inset
16322
16323 , where 
16324 \begin_inset Flex CharStyle:Code
16325 status collapsed
16326
16327 \begin_layout Plain Layout
16328 layoutname
16329 \end_layout
16330
16331 \end_inset
16332
16333  is the LyX name of the layout, made lowercase, for example: chapter.
16334 \end_layout
16335
16336 \begin_layout Description
16337 \begin_inset Flex CharStyle:Code
16338 status collapsed
16339
16340 \begin_layout Plain Layout
16341 HTMLForceCSS
16342 \end_layout
16343
16344 \end_inset
16345
16346  [
16347 \begin_inset Flex CharStyle:Code
16348 status collapsed
16349
16350 \begin_layout Plain Layout
16351
16352 \emph on
16353 0
16354 \emph default
16355 ,1
16356 \end_layout
16357
16358 \end_inset
16359
16360 ] Whether to output the default CSS information LyX generates for this layout,
16361  even if additional information is explicitly provided via 
16362 \begin_inset Flex CharStyle:Code
16363 status collapsed
16364
16365 \begin_layout Plain Layout
16366 HTMLStyle
16367 \end_layout
16368
16369 \end_inset
16370
16371 .
16372  Setting this to 
16373 \begin_inset Flex CharStyle:Code
16374 status collapsed
16375
16376 \begin_layout Plain Layout
16377 1
16378 \end_layout
16379
16380 \end_inset
16381
16382  allows you to alter or augment the generated CSS, rather than to override
16383  it completely.
16384  Default is 
16385 \begin_inset Flex CharStyle:Code
16386 status collapsed
16387
16388 \begin_layout Plain Layout
16389 0
16390 \end_layout
16391
16392 \end_inset
16393
16394 .
16395 \end_layout
16396
16397 \begin_layout Description
16398 \begin_inset Flex CharStyle:Code
16399 status collapsed
16400
16401 \begin_layout Plain Layout
16402 HTMLItem
16403 \end_layout
16404
16405 \end_inset
16406
16407  [
16408 \begin_inset Flex CharStyle:Code
16409 status collapsed
16410
16411 \begin_layout Plain Layout
16412 string
16413 \end_layout
16414
16415 \end_inset
16416
16417 ] The tag to be used for individual paragraphs of environments, replacing
16418  
16419 \begin_inset Flex CharStyle:Code
16420 status collapsed
16421
16422 \begin_layout Plain Layout
16423 itemtag
16424 \end_layout
16425
16426 \end_inset
16427
16428  in the examples above.
16429  Defaults to 
16430 \begin_inset Flex CharStyle:Code
16431 status collapsed
16432
16433 \begin_layout Plain Layout
16434 div
16435 \end_layout
16436
16437 \end_inset
16438
16439 .
16440 \end_layout
16441
16442 \begin_layout Description
16443 \begin_inset Flex CharStyle:Code
16444 status collapsed
16445
16446 \begin_layout Plain Layout
16447 HTMLItemAttr
16448 \end_layout
16449
16450 \end_inset
16451
16452  [
16453 \begin_inset Flex CharStyle:Code
16454 status collapsed
16455
16456 \begin_layout Plain Layout
16457 string
16458 \end_layout
16459
16460 \end_inset
16461
16462 ] Attributes for the item tag.
16463  Defaults to 
16464 \begin_inset Quotes eld
16465 \end_inset
16466
16467
16468 \begin_inset Flex CharStyle:Code
16469 status collapsed
16470
16471 \begin_layout Plain Layout
16472 class=`layoutname_item'
16473 \end_layout
16474
16475 \end_inset
16476
16477
16478 \begin_inset Quotes erd
16479 \end_inset
16480
16481 .
16482 \end_layout
16483
16484 \begin_layout Description
16485 \begin_inset Flex CharStyle:Code
16486 status collapsed
16487
16488 \begin_layout Plain Layout
16489 HTMLLabel
16490 \end_layout
16491
16492 \end_inset
16493
16494  [
16495 \begin_inset Flex CharStyle:Code
16496 status collapsed
16497
16498 \begin_layout Plain Layout
16499 string
16500 \end_layout
16501
16502 \end_inset
16503
16504 ] The tag to be used for paragraph and item labels, replacing 
16505 \begin_inset Flex CharStyle:Code
16506 status collapsed
16507
16508 \begin_layout Plain Layout
16509 labeltag
16510 \end_layout
16511
16512 \end_inset
16513
16514  in the examples above.
16515  Defaults to 
16516 \begin_inset Flex CharStyle:Code
16517 status collapsed
16518
16519 \begin_layout Plain Layout
16520 span
16521 \end_layout
16522
16523 \end_inset
16524
16525 .
16526 \end_layout
16527
16528 \begin_layout Description
16529 \begin_inset Flex CharStyle:Code
16530 status collapsed
16531
16532 \begin_layout Plain Layout
16533 HTMLLabelAttr
16534 \end_layout
16535
16536 \end_inset
16537
16538  [
16539 \begin_inset Flex CharStyle:Code
16540 status collapsed
16541
16542 \begin_layout Plain Layout
16543 string
16544 \end_layout
16545
16546 \end_inset
16547
16548 ] Attributes for the label tag.
16549  Defaults to 
16550 \begin_inset Quotes eld
16551 \end_inset
16552
16553
16554 \begin_inset Flex CharStyle:Code
16555 status collapsed
16556
16557 \begin_layout Plain Layout
16558 class=`layoutname_label'
16559 \end_layout
16560
16561 \end_inset
16562
16563
16564 \begin_inset Quotes erd
16565 \end_inset
16566
16567 .
16568 \end_layout
16569
16570 \begin_layout Description
16571 \begin_inset Flex CharStyle:Code
16572 status collapsed
16573
16574 \begin_layout Plain Layout
16575 HTMLLabelFirst
16576 \end_layout
16577
16578 \end_inset
16579
16580  [
16581 \begin_inset Flex CharStyle:Code
16582 status collapsed
16583
16584 \begin_layout Plain Layout
16585
16586 \emph on
16587 0
16588 \emph default
16589 ,1
16590 \end_layout
16591
16592 \end_inset
16593
16594 ] Meaningful only for list-like environments, this tag controls whether
16595  the label tag is output before or inside the item tag.
16596  This is used, for example, in the description environment, where we want
16597  `
16598 \begin_inset Flex CharStyle:Code
16599 status collapsed
16600
16601 \begin_layout Plain Layout
16602 <dt>\SpecialChar \ldots{}
16603 </dt><dd>\SpecialChar \ldots{}
16604 </dd>
16605 \end_layout
16606
16607 \end_inset
16608
16609 .
16610  Default is 
16611 \begin_inset Flex CharStyle:Code
16612 status collapsed
16613
16614 \begin_layout Plain Layout
16615 0
16616 \end_layout
16617
16618 \end_inset
16619
16620 : The label tag is output inside the item tag.
16621 \end_layout
16622
16623 \begin_layout Description
16624 \begin_inset Flex CharStyle:Code
16625 status collapsed
16626
16627 \begin_layout Plain Layout
16628 HTMLPreamble
16629 \end_layout
16630
16631 \end_inset
16632
16633  Information to be output in the 
16634 \begin_inset Flex CharStyle:Code
16635 status collapsed
16636
16637 \begin_layout Plain Layout
16638 <head>
16639 \end_layout
16640
16641 \end_inset
16642
16643  section when this style is used.
16644  This might, for example, be used to include a 
16645 \begin_inset Flex CharStyle:Code
16646 status collapsed
16647
16648 \begin_layout Plain Layout
16649 <script>
16650 \end_layout
16651
16652 \end_inset
16653
16654  block defining an 
16655 \begin_inset Flex CharStyle:Code
16656 status collapsed
16657
16658 \begin_layout Plain Layout
16659 onclick
16660 \end_layout
16661
16662 \end_inset
16663
16664  handler.
16665 \end_layout
16666
16667 \begin_layout Description
16668 \begin_inset Flex CharStyle:Code
16669 status collapsed
16670
16671 \begin_layout Plain Layout
16672 HTMLStyle
16673 \end_layout
16674
16675 \end_inset
16676
16677  CSS style information to be included when this style is used.
16678  Note that this will automatically be wrapped in a layout-generated 
16679 \begin_inset Flex CharStyle:Code
16680 status collapsed
16681
16682 \begin_layout Plain Layout
16683 <style>
16684 \end_layout
16685
16686 \end_inset
16687
16688  block, so only the CSS itself need be included.
16689 \end_layout
16690
16691 \begin_layout Description
16692 \begin_inset Flex CharStyle:Code
16693 status collapsed
16694
16695 \begin_layout Plain Layout
16696 HTMLTag
16697 \end_layout
16698
16699 \end_inset
16700
16701  [
16702 \begin_inset Flex CharStyle:Code
16703 status collapsed
16704
16705 \begin_layout Plain Layout
16706 string
16707 \end_layout
16708
16709 \end_inset
16710
16711 ] The tag to be used for the main label, replacing 
16712 \begin_inset Flex CharStyle:Code
16713 status collapsed
16714
16715 \begin_layout Plain Layout
16716 tag
16717 \end_layout
16718
16719 \end_inset
16720
16721  in the examples above.
16722  Defaults to 
16723 \begin_inset Flex CharStyle:Code
16724 status collapsed
16725
16726 \begin_layout Plain Layout
16727 div
16728 \end_layout
16729
16730 \end_inset
16731
16732 .
16733 \end_layout
16734
16735 \begin_layout Description
16736 \begin_inset Flex CharStyle:Code
16737 status collapsed
16738
16739 \begin_layout Plain Layout
16740 HTMLTitle
16741 \end_layout
16742
16743 \end_inset
16744
16745  [
16746 \begin_inset Flex CharStyle:Code
16747 status collapsed
16748
16749 \begin_layout Plain Layout
16750
16751 \emph on
16752 0
16753 \emph default
16754 ,1
16755 \end_layout
16756
16757 \end_inset
16758
16759 ] Marks this style as the one to be used to generate the 
16760 \begin_inset Flex CharStyle:Code
16761 status collapsed
16762
16763 \begin_layout Plain Layout
16764 <title>
16765 \end_layout
16766
16767 \end_inset
16768
16769  tag for the XHTML file.
16770  By default, it is false.
16771  The 
16772 \begin_inset Flex CharStyle:Code
16773 status collapsed
16774
16775 \begin_layout Plain Layout
16776 stdtitle.inc
16777 \end_layout
16778
16779 \end_inset
16780
16781  file sets it to true for the 
16782 \begin_inset Flex CharStyle:Code
16783 status collapsed
16784
16785 \begin_layout Plain Layout
16786 title
16787 \end_layout
16788
16789 \end_inset
16790
16791  environment.
16792  
16793 \end_layout
16794
16795 \begin_layout Subsection
16796 InsetLayout XHTML
16797 \end_layout
16798
16799 \begin_layout Standard
16800 The XHTML output of insets can also be controlled by information in layout
16801  files.
16802 \begin_inset Foot
16803 status collapsed
16804
16805 \begin_layout Plain Layout
16806 At present, this is true only for 
16807 \begin_inset Quotes eld
16808 \end_inset
16809
16810 text
16811 \begin_inset Quotes erd
16812 \end_inset
16813
16814  insets (insets you can type into) and is not true for 
16815 \begin_inset Quotes eld
16816 \end_inset
16817
16818 command
16819 \begin_inset Quotes erd
16820 \end_inset
16821
16822  insets (insets that are associated with dialog boxes).
16823 \end_layout
16824
16825 \end_inset
16826
16827  Here, too, LyX tries to provide sensible defaults, and it constructs default
16828  CSS style rules.
16829  But everything can be customized.
16830 \end_layout
16831
16832 \begin_layout Standard
16833 The XHTML LyX outputs for an inset has the following form:
16834 \end_layout
16835
16836 \begin_layout LyX-Code
16837 <tag attr=
16838 \begin_inset Quotes erd
16839 \end_inset
16840
16841 value
16842 \begin_inset Quotes erd
16843 \end_inset
16844
16845 >
16846 \end_layout
16847
16848 \begin_layout LyX-Code
16849 <labeltag>Label</labeltag>
16850 \end_layout
16851
16852 \begin_layout LyX-Code
16853 <innertag attr=
16854 \begin_inset Quotes erd
16855 \end_inset
16856
16857 value
16858 \begin_inset Quotes erd
16859 \end_inset
16860
16861 >Contents of the inset.</innertag>
16862 \end_layout
16863
16864 \begin_layout LyX-Code
16865 </tag>
16866 \end_layout
16867
16868 \begin_layout Standard
16869 If the inset permits multiple paragraphs---that is, if 
16870 \begin_inset Flex CharStyle:Code
16871 status collapsed
16872
16873 \begin_layout Plain Layout
16874 MultiPar
16875 \end_layout
16876
16877 \end_inset
16878
16879  is true---then the contents of the inset will itself be output as paragraphs
16880  formatted according to the styles used for those paragraphs (standard,
16881  quote, and the like).
16882  The label tag is of course omitted if the paragraph does not have a label
16883  and, at present, is always 
16884 \begin_inset Flex CharStyle:Code
16885 status collapsed
16886
16887 \begin_layout Plain Layout
16888 span
16889 \end_layout
16890
16891 \end_inset
16892
16893 .
16894  The inner tag is optional and, by default, does not appear.
16895 \end_layout
16896
16897 \begin_layout Standard
16898 The specific tags and attributes output for each inset can be controlled
16899  by means of the following layout tags.
16900 \end_layout
16901
16902 \begin_layout Description
16903 \begin_inset Flex CharStyle:Code
16904 status collapsed
16905
16906 \begin_layout Plain Layout
16907 HTMLAttr
16908 \end_layout
16909
16910 \end_inset
16911
16912  [
16913 \begin_inset Flex CharStyle:Code
16914 status collapsed
16915
16916 \begin_layout Plain Layout
16917 string
16918 \end_layout
16919
16920 \end_inset
16921
16922 ] Specifies attribute information to be output with the main tag.
16923  For example, 
16924 \begin_inset Quotes eld
16925 \end_inset
16926
16927
16928 \begin_inset Flex CharStyle:Code
16929 status collapsed
16930
16931 \begin_layout Plain Layout
16932 class=`myinset' onclick=`\SpecialChar \ldots{}
16933 '
16934 \end_layout
16935
16936 \end_inset
16937
16938
16939 \begin_inset Quotes erd
16940 \end_inset
16941
16942 .
16943  By default, LyX will output 
16944 \begin_inset Quotes eld
16945 \end_inset
16946
16947
16948 \begin_inset Flex CharStyle:Code
16949 status collapsed
16950
16951 \begin_layout Plain Layout
16952 class=`insetname'
16953 \end_layout
16954
16955 \end_inset
16956
16957
16958 \begin_inset Quotes erd
16959 \end_inset
16960
16961 , where 
16962 \begin_inset Flex CharStyle:Code
16963 status collapsed
16964
16965 \begin_layout Plain Layout
16966 insetname
16967 \end_layout
16968
16969 \end_inset
16970
16971  is the LyX name of the inset, made lowercase and with non-alphanumeric
16972  characters converted to underscores, for example: footnote.
16973 \end_layout
16974
16975 \begin_layout Description
16976 \begin_inset Flex CharStyle:Code
16977 status collapsed
16978
16979 \begin_layout Plain Layout
16980 HTMLForceCSS
16981 \end_layout
16982
16983 \end_inset
16984
16985  [
16986 \begin_inset Flex CharStyle:Code
16987 status collapsed
16988
16989 \begin_layout Plain Layout
16990
16991 \emph on
16992 0
16993 \emph default
16994 ,1
16995 \end_layout
16996
16997 \end_inset
16998
16999 ] Whether to output the default CSS information LyX generates for this layout,
17000  even if additional information is explicitly provided via 
17001 \begin_inset Flex CharStyle:Code
17002 status collapsed
17003
17004 \begin_layout Plain Layout
17005 HTMLStyle
17006 \end_layout
17007
17008 \end_inset
17009
17010 .
17011  Setting this to 
17012 \begin_inset Flex CharStyle:Code
17013 status collapsed
17014
17015 \begin_layout Plain Layout
17016 1
17017 \end_layout
17018
17019 \end_inset
17020
17021  allows you to alter or augment the generated CSS, rather than to override
17022  it completely.
17023  Default is 0.
17024 \end_layout
17025
17026 \begin_layout Description
17027 \begin_inset Flex CharStyle:Code
17028 status collapsed
17029
17030 \begin_layout Plain Layout
17031 HTMLInnerAttr
17032 \end_layout
17033
17034 \end_inset
17035
17036  [
17037 \begin_inset Flex CharStyle:Code
17038 status collapsed
17039
17040 \begin_layout Plain Layout
17041 string
17042 \end_layout
17043
17044 \end_inset
17045
17046 ] Attributes for the inner tag.
17047  Defaults to 
17048 \begin_inset Quotes eld
17049 \end_inset
17050
17051
17052 \begin_inset Flex CharStyle:Code
17053 status collapsed
17054
17055 \begin_layout Plain Layout
17056 class=`insetname_inner'
17057 \end_layout
17058
17059 \end_inset
17060
17061
17062 \begin_inset Quotes erd
17063 \end_inset
17064
17065 .
17066 \end_layout
17067
17068 \begin_layout Description
17069 \begin_inset Flex CharStyle:Code
17070 status collapsed
17071
17072 \begin_layout Plain Layout
17073 HTMLInnerTag
17074 \end_layout
17075
17076 \end_inset
17077
17078  [
17079 \begin_inset Flex CharStyle:Code
17080 status collapsed
17081
17082 \begin_layout Plain Layout
17083 string
17084 \end_layout
17085
17086 \end_inset
17087
17088 ] The inner tag, replacing 
17089 \begin_inset Flex CharStyle:Code
17090 status collapsed
17091
17092 \begin_layout Plain Layout
17093 innertag
17094 \end_layout
17095
17096 \end_inset
17097
17098  in the examples above.
17099  By default, there is none.
17100 \end_layout
17101
17102 \begin_layout Description
17103 \begin_inset Flex CharStyle:Code
17104 status collapsed
17105
17106 \begin_layout Plain Layout
17107 HTMLIsBlock
17108 \end_layout
17109
17110 \end_inset
17111
17112  [
17113 \begin_inset Flex CharStyle:Code
17114 status collapsed
17115
17116 \begin_layout Plain Layout
17117 0,
17118 \emph on
17119 1
17120 \end_layout
17121
17122 \end_inset
17123
17124 ] Whether this inset represents a standalone block of text (such as a footnote)
17125  or instead represents material that is included in the surrounding text
17126  (such as a branch).
17127  Defaults to 1.
17128 \end_layout
17129
17130 \begin_layout Description
17131 \begin_inset Flex CharStyle:Code
17132 status collapsed
17133
17134 \begin_layout Plain Layout
17135 HTMLLabel
17136 \end_layout
17137
17138 \end_inset
17139
17140  [
17141 \begin_inset Flex CharStyle:Code
17142 status collapsed
17143
17144 \begin_layout Plain Layout
17145 string
17146 \end_layout
17147
17148 \end_inset
17149
17150 ] A label for this inset, possibly including a reference to a counter.
17151  For example, for footnote, it might be: 
17152 \begin_inset Flex CharStyle:Code
17153 status collapsed
17154
17155 \begin_layout Plain Layout
17156
17157 \backslash
17158 arabic{footnote}
17159 \end_layout
17160
17161 \end_inset
17162
17163 .
17164  This is optional, and there is no default.
17165 \end_layout
17166
17167 \begin_layout Description
17168 \begin_inset Flex CharStyle:Code
17169 status collapsed
17170
17171 \begin_layout Plain Layout
17172 HTMLPreamble
17173 \end_layout
17174
17175 \end_inset
17176
17177  Information to be output in the 
17178 \begin_inset Flex CharStyle:Code
17179 status collapsed
17180
17181 \begin_layout Plain Layout
17182 <head>
17183 \end_layout
17184
17185 \end_inset
17186
17187  section when this style is used.
17188  This might, for example, be used to include a 
17189 \begin_inset Flex CharStyle:Code
17190 status collapsed
17191
17192 \begin_layout Plain Layout
17193 <script>
17194 \end_layout
17195
17196 \end_inset
17197
17198  block defining an 
17199 \begin_inset Flex CharStyle:Code
17200 status collapsed
17201
17202 \begin_layout Plain Layout
17203 onclick
17204 \end_layout
17205
17206 \end_inset
17207
17208  handler.
17209 \end_layout
17210
17211 \begin_layout Description
17212 \begin_inset Flex CharStyle:Code
17213 status collapsed
17214
17215 \begin_layout Plain Layout
17216 HTMLStyle
17217 \end_layout
17218
17219 \end_inset
17220
17221  CSS style information to be included when this style is used.
17222  Note that this will automatically be wrapped in a layout-generated 
17223 \begin_inset Flex CharStyle:Code
17224 status collapsed
17225
17226 \begin_layout Plain Layout
17227 <style>
17228 \end_layout
17229
17230 \end_inset
17231
17232  block, so only the CSS itself need be included.
17233 \end_layout
17234
17235 \begin_layout Description
17236 \begin_inset Flex CharStyle:Code
17237 status collapsed
17238
17239 \begin_layout Plain Layout
17240 HTMLTag
17241 \end_layout
17242
17243 \end_inset
17244
17245  [
17246 \begin_inset Flex CharStyle:Code
17247 status collapsed
17248
17249 \begin_layout Plain Layout
17250 string
17251 \end_layout
17252
17253 \end_inset
17254
17255 ] The tag to be used for the main label, replacing 
17256 \begin_inset Flex CharStyle:Code
17257 status collapsed
17258
17259 \begin_layout Plain Layout
17260 tag
17261 \end_layout
17262
17263 \end_inset
17264
17265  in the examples above.
17266  The default depends upon the setting of 
17267 \begin_inset Flex CharStyle:Code
17268 status collapsed
17269
17270 \begin_layout Plain Layout
17271 MultiPar
17272 \end_layout
17273
17274 \end_inset
17275
17276 : If 
17277 \begin_inset Flex CharStyle:Code
17278 status collapsed
17279
17280 \begin_layout Plain Layout
17281 MultiPar
17282 \end_layout
17283
17284 \end_inset
17285
17286  is true, the default is 
17287 \begin_inset Flex CharStyle:Code
17288 status collapsed
17289
17290 \begin_layout Plain Layout
17291 div
17292 \end_layout
17293
17294 \end_inset
17295
17296 ; if it is false, the default is 
17297 \begin_inset Flex CharStyle:Code
17298 status collapsed
17299
17300 \begin_layout Plain Layout
17301 span
17302 \end_layout
17303
17304 \end_inset
17305
17306 .
17307 \end_layout
17308
17309 \begin_layout Subsection
17310 Float XHTML
17311 \end_layout
17312
17313 \begin_layout Standard
17314 The XHTML output for floats too can be controlled by layout information.
17315  The output has the following form:
17316 \end_layout
17317
17318 \begin_layout LyX-Code
17319 <tag attr=
17320 \begin_inset Quotes erd
17321 \end_inset
17322
17323 value
17324 \begin_inset Quotes erd
17325 \end_inset
17326
17327 >
17328 \end_layout
17329
17330 \begin_layout LyX-Code
17331 Contents of the float.
17332 \end_layout
17333
17334 \begin_layout LyX-Code
17335 </tag>
17336 \end_layout
17337
17338 \begin_layout Standard
17339 The caption, if there is one, is a separate inset and will be output as
17340  such.
17341  Its appearance can be controlled via the InsetLayout for caption insets.
17342  
17343 \end_layout
17344
17345 \begin_layout Description
17346 \begin_inset Flex CharStyle:Code
17347 status collapsed
17348
17349 \begin_layout Plain Layout
17350 HTMLAttr
17351 \end_layout
17352
17353 \end_inset
17354
17355  [
17356 \begin_inset Flex CharStyle:Code
17357 status collapsed
17358
17359 \begin_layout Plain Layout
17360 string
17361 \end_layout
17362
17363 \end_inset
17364
17365 ] Specifies attribute information to be output with the main tag.
17366  For example, 
17367 \begin_inset Quotes eld
17368 \end_inset
17369
17370
17371 \begin_inset Flex CharStyle:Code
17372 status collapsed
17373
17374 \begin_layout Plain Layout
17375 class=`myfloat' onclick=`\SpecialChar \ldots{}
17376 '
17377 \end_layout
17378
17379 \end_inset
17380
17381
17382 \begin_inset Quotes erd
17383 \end_inset
17384
17385 .
17386  By default, LyX will output 
17387 \begin_inset Quotes eld
17388 \end_inset
17389
17390
17391 \begin_inset Flex CharStyle:Code
17392 status collapsed
17393
17394 \begin_layout Plain Layout
17395 class=`float float-floattype'
17396 \end_layout
17397
17398 \end_inset
17399
17400
17401 \begin_inset Quotes erd
17402 \end_inset
17403
17404 , where 
17405 \begin_inset Flex CharStyle:Code
17406 status collapsed
17407
17408 \begin_layout Plain Layout
17409 floattype
17410 \end_layout
17411
17412 \end_inset
17413
17414  is LyX's name for this type of float, as determined by the float delcaration
17415  (see 
17416 \begin_inset CommandInset ref
17417 LatexCommand ref
17418 reference "sub:Floats"
17419
17420 \end_inset
17421
17422 ), though made lowercase and with non-alphanumeric characters converted
17423  to underscores, for example: float-table.
17424 \end_layout
17425
17426 \begin_layout Description
17427 \begin_inset Flex CharStyle:Code
17428 status collapsed
17429
17430 \begin_layout Plain Layout
17431 HTMLStyle
17432 \end_layout
17433
17434 \end_inset
17435
17436  CSS style information to be included when this float is used.
17437  Note that this will automatically be wrapped in a layout-generated 
17438 \begin_inset Flex CharStyle:Code
17439 status collapsed
17440
17441 \begin_layout Plain Layout
17442 <style>
17443 \end_layout
17444
17445 \end_inset
17446
17447  block, so only the CSS itself need be included.
17448 \end_layout
17449
17450 \begin_layout Description
17451 \begin_inset Flex CharStyle:Code
17452 status collapsed
17453
17454 \begin_layout Plain Layout
17455 HTMLTag
17456 \end_layout
17457
17458 \end_inset
17459
17460  [
17461 \begin_inset Flex CharStyle:Code
17462 status collapsed
17463
17464 \begin_layout Plain Layout
17465 string
17466 \end_layout
17467
17468 \end_inset
17469
17470 ] The tag to be used for this float, replacing 
17471 \begin_inset Quotes eld
17472 \end_inset
17473
17474
17475 \begin_inset Flex CharStyle:Code
17476 status collapsed
17477
17478 \begin_layout Plain Layout
17479 tag
17480 \end_layout
17481
17482 \end_inset
17483
17484
17485 \begin_inset Quotes erd
17486 \end_inset
17487
17488  in the example above.
17489  The default is 
17490 \begin_inset Flex CharStyle:Code
17491 status collapsed
17492
17493 \begin_layout Plain Layout
17494 div
17495 \end_layout
17496
17497 \end_inset
17498
17499  and will rarely need changing.
17500 \end_layout
17501
17502 \begin_layout Subsection
17503 LyX-generated CSS
17504 \end_layout
17505
17506 \begin_layout Standard
17507 We have several times mentioned that LyX will generate default CSS style
17508  rules for both insets and paragraph styles, based upon the other layout
17509  information that is provided.
17510  In this section, we shall say a word about which layout information LyX
17511  uses and how.
17512 \end_layout
17513
17514 \begin_layout Standard
17515 At present, LyX auto-generates CSS only for font information, making use
17516  of the 
17517 \begin_inset Flex CharStyle:Code
17518 status collapsed
17519
17520 \begin_layout Plain Layout
17521 Family
17522 \end_layout
17523
17524 \end_inset
17525
17526
17527 \begin_inset Flex CharStyle:Code
17528 status collapsed
17529
17530 \begin_layout Plain Layout
17531 Series
17532 \end_layout
17533
17534 \end_inset
17535
17536
17537 \begin_inset Flex CharStyle:Code
17538 status collapsed
17539
17540 \begin_layout Plain Layout
17541 Shape
17542 \end_layout
17543
17544 \end_inset
17545
17546 , and 
17547 \begin_inset Flex CharStyle:Code
17548 status collapsed
17549
17550 \begin_layout Plain Layout
17551 Size
17552 \end_layout
17553
17554 \end_inset
17555
17556  specified in the 
17557 \begin_inset Flex CharStyle:Code
17558 status collapsed
17559
17560 \begin_layout Plain Layout
17561 Font
17562 \end_layout
17563
17564 \end_inset
17565
17566  declaration.
17567  (See 
17568 \begin_inset CommandInset ref
17569 LatexCommand ref
17570 reference "sub:Font-description"
17571
17572 \end_inset
17573
17574 .) The translation is mostly straightforward and obvious.
17575  For example, 
17576 \begin_inset Quotes eld
17577 \end_inset
17578
17579
17580 \begin_inset Flex CharStyle:Code
17581 status collapsed
17582
17583 \begin_layout Plain Layout
17584 Family Sans
17585 \end_layout
17586
17587 \end_inset
17588
17589
17590 \begin_inset Quotes erd
17591 \end_inset
17592
17593  becomes 
17594 \begin_inset Quotes eld
17595 \end_inset
17596
17597
17598 \begin_inset Flex CharStyle:Code
17599 status collapsed
17600
17601 \begin_layout Plain Layout
17602 font-family: sans-serif;
17603 \end_layout
17604
17605 \end_inset
17606
17607
17608 \begin_inset Quotes erd
17609 \end_inset
17610
17611 .
17612  The correspondence of LyX sizes and CSS sizes is a little less obvious
17613  but nonetheless intuitive.
17614  See the 
17615 \begin_inset Flex CharStyle:Code
17616 status collapsed
17617
17618 \begin_layout Plain Layout
17619 getSizeCSS()
17620 \end_layout
17621
17622 \end_inset
17623
17624  function in 
17625 \begin_inset Flex URL
17626 status collapsed
17627
17628 \begin_layout Plain Layout
17629
17630 src/FontInfo.cpp
17631 \end_layout
17632
17633 \end_inset
17634
17635  for the details.
17636  
17637 \end_layout
17638
17639 \begin_layout Chapter
17640 Including External Material
17641 \end_layout
17642
17643 \begin_layout Standard
17644 \begin_inset Box Shadowbox
17645 position "t"
17646 hor_pos "c"
17647 has_inner_box 1
17648 inner_pos "t"
17649 use_parbox 0
17650 width "100col%"
17651 special "none"
17652 height "1in"
17653 height_special "totalheight"
17654 status open
17655
17656 \begin_layout Plain Layout
17657 WARNING: This portion of the documentation has not been updated for some
17658  time.
17659  We certainly hope that it is still accurate, but there are no guarantees.
17660 \end_layout
17661
17662 \end_inset
17663
17664
17665 \end_layout
17666
17667 \begin_layout Standard
17668 The use of material from sources external to LyX is covered in detail in
17669  the 
17670 \emph on
17671 Embedded Objects
17672 \emph default
17673  manual.
17674  This part of the manual covers what needs to happen behind the scenes for
17675  new sorts of material to be included.
17676 \end_layout
17677
17678 \begin_layout Section
17679 How does it work?
17680 \end_layout
17681
17682 \begin_layout Standard
17683 The external material feature is based on the concept of a 
17684 \emph on
17685 template
17686 \emph default
17687 .
17688  A template is a specification of how LyX should interface with a certain
17689  kind of material.
17690  As bundled, LyX comes with predefined templates for Xfig figures, various
17691  raster format images, chess diagrams, and LilyPond music notation.
17692  You can check the actual list by using the menu 
17693 \begin_inset Flex CharStyle:MenuItem
17694 status collapsed
17695
17696 \begin_layout Plain Layout
17697 Insert\SpecialChar \menuseparator
17698 File\SpecialChar \menuseparator
17699 External Material
17700 \end_layout
17701
17702 \end_inset
17703
17704 .
17705  Furthermore, it is possible to roll your own template to support a specific
17706  kind of material.
17707  Later we'll describe in more detail what is involved, and hopefully you
17708  will submit all the templates you create so we can include them in a later
17709  LyX version.
17710 \end_layout
17711
17712 \begin_layout Standard
17713 Another basic idea of the external material feature is to distinguish between
17714  the original file that serves as a base for final material and the produced
17715  file that is included in your exported or printed document.
17716  For example, consider the case of a figure produced with 
17717 \begin_inset Flex CharStyle:Code
17718 status collapsed
17719
17720 \begin_layout Plain Layout
17721 Xfig
17722 \end_layout
17723
17724 \end_inset
17725
17726 .
17727  The Xfig application itself works on an original file with the 
17728 \begin_inset Flex CharStyle:Code
17729 status collapsed
17730
17731 \begin_layout Plain Layout
17732 .fig
17733 \end_layout
17734
17735 \end_inset
17736
17737  extension.
17738  Within Xfig, you create and change your figure, and when you are done,
17739  you save the 
17740 \begin_inset Flex CharStyle:Code
17741 status collapsed
17742
17743 \begin_layout Plain Layout
17744 fig
17745 \end_layout
17746
17747 \end_inset
17748
17749 -file.
17750  When you want to include the figure in your document, you invoke 
17751 \begin_inset Flex CharStyle:Code
17752 status collapsed
17753
17754 \begin_layout Plain Layout
17755 transfig
17756 \end_layout
17757
17758 \end_inset
17759
17760  in order to create a PostScript file that can readily be included in your
17761  LaTeX file.
17762  In this case, the 
17763 \begin_inset Flex CharStyle:Code
17764 status collapsed
17765
17766 \begin_layout Plain Layout
17767 .fig
17768 \end_layout
17769
17770 \end_inset
17771
17772  file is the original file, and the PostScript file is the produced file.
17773 \end_layout
17774
17775 \begin_layout Standard
17776 This distinction is important in order to allow updating of the material
17777  while you are in the process of writing the document.
17778  Furthermore, it provides us with the flexibility that is needed to support
17779  multiple export formats.
17780  For instance, in the case of a plain text file, it is not exactly an award-winn
17781 ing idea to include the figure as raw PostScript.
17782  Instead, you'd either prefer to just include a reference to the figure
17783  or try to invoke some graphics to ASCII converter to make the final result
17784  look similar to the real graphics.
17785  The external material management allows you to do this, because it is parametri
17786 zed on the different export formats that LyX supports.
17787 \end_layout
17788
17789 \begin_layout Standard
17790 Besides supporting the production of different products according to the
17791  exported format, it supports tight integration with editing and viewing
17792  applications.
17793  In the case of an Xfig figure, you are able to invoke Xfig on the original
17794  file with a single click from within the external material dialog in LyX,
17795  and also preview the produced PostScript file with Ghostview with another
17796  click.
17797  No more fiddling around with the command line and/or file browsers to locate
17798  and manipulate the original or produced files.
17799  In this way, you are finally able to take full advantage of the many different
17800  applications that are relevant to use when you write your documents, and
17801  ultimately be more productive.
17802 \end_layout
17803
17804 \begin_layout Section
17805 The external template configuration file
17806 \end_layout
17807
17808 \begin_layout Standard
17809 It is relatively easy to add custom external template definitions to LyX.
17810  However, be aware that doing this in an careless manner most probably 
17811 \emph on
17812 will
17813 \emph default
17814  introduce an easily exploitable security hole.
17815  So before you do this, please read the discussion about security in section
17816  
17817 \begin_inset CommandInset ref
17818 LatexCommand ref
17819 reference "sec:Security-discussion"
17820
17821 \end_inset
17822
17823 .
17824 \end_layout
17825
17826 \begin_layout Standard
17827 Having said that, we encourage you to submit any interesting templates that
17828  you create.
17829  
17830 \end_layout
17831
17832 \begin_layout Standard
17833 The external templates are defined in the 
17834 \begin_inset Flex CharStyle:Code
17835 status collapsed
17836
17837 \begin_layout Plain Layout
17838 LyXDir/lib/external_templates
17839 \end_layout
17840
17841 \end_inset
17842
17843  file.
17844  You can place your own version in 
17845 \begin_inset Flex CharStyle:Code
17846 status collapsed
17847
17848 \begin_layout Plain Layout
17849 UserDir/external_templates
17850 \end_layout
17851
17852 \end_inset
17853
17854 .
17855 \end_layout
17856
17857 \begin_layout Standard
17858 A typical template looks like this:
17859 \end_layout
17860
17861 \begin_layout LyX-Code
17862 Template XFig
17863 \end_layout
17864
17865 \begin_layout LyX-Code
17866 GuiName "XFig: $$AbsOrRelPathParent$$Basename"
17867 \end_layout
17868
17869 \begin_layout LyX-Code
17870 HelpText
17871 \end_layout
17872
17873 \begin_layout LyX-Code
17874 An XFig figure.
17875 \end_layout
17876
17877 \begin_layout LyX-Code
17878 HelpTextEnd
17879 \end_layout
17880
17881 \begin_layout LyX-Code
17882 InputFormat fig
17883 \end_layout
17884
17885 \begin_layout LyX-Code
17886 FileFilter "*.fig"
17887 \end_layout
17888
17889 \begin_layout LyX-Code
17890 AutomaticProduction true
17891 \end_layout
17892
17893 \begin_layout LyX-Code
17894 Transform Rotate
17895 \end_layout
17896
17897 \begin_layout LyX-Code
17898 Transform Resize
17899 \end_layout
17900
17901 \begin_layout LyX-Code
17902 Format LaTeX
17903 \end_layout
17904
17905 \begin_layout LyX-Code
17906 TransformCommand Rotate RotationLatexCommand
17907 \end_layout
17908
17909 \begin_layout LyX-Code
17910 TransformCommand Resize ResizeLatexCommand
17911 \end_layout
17912
17913 \begin_layout LyX-Code
17914 Product "$$RotateFront$$ResizeFront
17915 \end_layout
17916
17917 \begin_layout LyX-Code
17918          
17919 \backslash
17920
17921 \backslash
17922 input{$$AbsOrRelPathMaster$$Basename.pstex_t}
17923 \end_layout
17924
17925 \begin_layout LyX-Code
17926          $$ResizeBack$$RotateBack"
17927 \end_layout
17928
17929 \begin_layout LyX-Code
17930 UpdateFormat pstex
17931 \end_layout
17932
17933 \begin_layout LyX-Code
17934 UpdateResult "$$AbsPath$$Basename.pstex_t"
17935 \end_layout
17936
17937 \begin_layout LyX-Code
17938 Requirement "graphicx"
17939 \end_layout
17940
17941 \begin_layout LyX-Code
17942 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
17943 \end_layout
17944
17945 \begin_layout LyX-Code
17946 ReferencedFile latex "$$AbsPath$$Basename.eps"
17947 \end_layout
17948
17949 \begin_layout LyX-Code
17950 ReferencedFile dvi "$$AbsPath$$Basename.eps"
17951 \end_layout
17952
17953 \begin_layout LyX-Code
17954 FormatEnd
17955 \end_layout
17956
17957 \begin_layout LyX-Code
17958 Format PDFLaTeX
17959 \end_layout
17960
17961 \begin_layout LyX-Code
17962 TransformCommand Rotate RotationLatexCommand
17963 \end_layout
17964
17965 \begin_layout LyX-Code
17966 TransformCommand Resize ResizeLatexCommand
17967 \end_layout
17968
17969 \begin_layout LyX-Code
17970 Product "$$RotateFront$$ResizeFront
17971 \end_layout
17972
17973 \begin_layout LyX-Code
17974          
17975 \backslash
17976
17977 \backslash
17978 input{$$AbsOrRelPathMaster$$Basename.pdftex_t}
17979 \end_layout
17980
17981 \begin_layout LyX-Code
17982          $$ResizeBack$$RotateBack"
17983 \end_layout
17984
17985 \begin_layout LyX-Code
17986 UpdateFormat pdftex
17987 \end_layout
17988
17989 \begin_layout LyX-Code
17990 UpdateResult "$$AbsPath$$Basename.pdftex_t"
17991 \end_layout
17992
17993 \begin_layout LyX-Code
17994 Requirement "graphicx"
17995 \end_layout
17996
17997 \begin_layout LyX-Code
17998 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pdftex_t"
17999 \end_layout
18000
18001 \begin_layout LyX-Code
18002 ReferencedFile latex "$$AbsPath$$Basename.pdf"
18003 \end_layout
18004
18005 \begin_layout LyX-Code
18006 FormatEnd
18007 \end_layout
18008
18009 \begin_layout LyX-Code
18010 Format Ascii
18011 \end_layout
18012
18013 \begin_layout LyX-Code
18014 Product "$$Contents(
18015 \backslash
18016 "$$AbsPath$$Basename.asc
18017 \backslash
18018 ")"
18019 \end_layout
18020
18021 \begin_layout LyX-Code
18022 UpdateFormat asciixfig
18023 \end_layout
18024
18025 \begin_layout LyX-Code
18026 UpdateResult "$$AbsPath$$Basename.asc"
18027 \end_layout
18028
18029 \begin_layout LyX-Code
18030 FormatEnd
18031 \end_layout
18032
18033 \begin_layout LyX-Code
18034 Format DocBook
18035 \end_layout
18036
18037 \begin_layout LyX-Code
18038 Product "<graphic fileref=
18039 \backslash
18040 "$$AbsOrRelPathMaster$$Basename.eps
18041 \backslash
18042 ">
18043 \end_layout
18044
18045 \begin_layout LyX-Code
18046          </graphic>"
18047 \end_layout
18048
18049 \begin_layout LyX-Code
18050 UpdateFormat eps
18051 \end_layout
18052
18053 \begin_layout LyX-Code
18054 UpdateResult "$$AbsPath$$Basename.eps"
18055 \end_layout
18056
18057 \begin_layout LyX-Code
18058 ReferencedFile docbook "$$AbsPath$$Basename.eps"
18059 \end_layout
18060
18061 \begin_layout LyX-Code
18062 ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
18063 \end_layout
18064
18065 \begin_layout LyX-Code
18066 FormatEnd
18067 \end_layout
18068
18069 \begin_layout LyX-Code
18070 Product "[XFig: $$FName]"
18071 \end_layout
18072
18073 \begin_layout LyX-Code
18074 FormatEnd
18075 \end_layout
18076
18077 \begin_layout LyX-Code
18078 TemplateEnd
18079 \end_layout
18080
18081 \begin_layout Standard
18082 As you can see, the template is enclosed in 
18083 \begin_inset Flex CharStyle:Code
18084 status collapsed
18085
18086 \begin_layout Plain Layout
18087 Template
18088 \end_layout
18089
18090 \end_inset
18091
18092  \SpecialChar \ldots{}
18093  
18094 \begin_inset Flex CharStyle:Code
18095 status collapsed
18096
18097 \begin_layout Plain Layout
18098 TemplateEnd
18099 \end_layout
18100
18101 \end_inset
18102
18103 .
18104  It contains a header specifying some general settings and, for each supported
18105  primary document file format, a section 
18106 \begin_inset Flex CharStyle:Code
18107 status collapsed
18108
18109 \begin_layout Plain Layout
18110 Format
18111 \end_layout
18112
18113 \end_inset
18114
18115  \SpecialChar \ldots{}
18116  
18117 \begin_inset Flex CharStyle:Code
18118 status collapsed
18119
18120 \begin_layout Plain Layout
18121 FormatEnd
18122 \end_layout
18123
18124 \end_inset
18125
18126 .
18127 \end_layout
18128
18129 \begin_layout Subsection
18130 The template header
18131 \end_layout
18132
18133 \begin_layout Description
18134 \begin_inset Flex CharStyle:Code
18135 status collapsed
18136
18137 \begin_layout Plain Layout
18138 AutomaticProduction
18139 \begin_inset space ~
18140 \end_inset
18141
18142 true|false
18143 \end_layout
18144
18145 \end_inset
18146
18147  Whether the file represented by the template must be generated by LyX.
18148  This command must occur exactly once.
18149 \end_layout
18150
18151 \begin_layout Description
18152 \begin_inset Flex CharStyle:Code
18153 status collapsed
18154
18155 \begin_layout Plain Layout
18156 FileFilter
18157 \begin_inset space ~
18158 \end_inset
18159
18160 <pattern>
18161 \end_layout
18162
18163 \end_inset
18164
18165  A glob pattern that is used in the file dialog to filter out the desired
18166  files.
18167  If there is more than one possible file extension (e.
18168 \begin_inset space \thinspace{}
18169 \end_inset
18170
18171 g.
18172 \begin_inset space \space{}
18173 \end_inset
18174
18175 tgif has 
18176 \begin_inset Flex CharStyle:Code
18177 status collapsed
18178
18179 \begin_layout Plain Layout
18180 .obj
18181 \end_layout
18182
18183 \end_inset
18184
18185  and 
18186 \begin_inset Flex CharStyle:Code
18187 status collapsed
18188
18189 \begin_layout Plain Layout
18190 .tgo
18191 \end_layout
18192
18193 \end_inset
18194
18195 ), use something like 
18196 \begin_inset Flex CharStyle:Code
18197 status collapsed
18198
18199 \begin_layout Plain Layout
18200 "*.{obj,tgo}"
18201 \end_layout
18202
18203 \end_inset
18204
18205 .
18206  This command must occur exactly once.
18207 \end_layout
18208
18209 \begin_layout Description
18210 \begin_inset Flex CharStyle:Code
18211 status collapsed
18212
18213 \begin_layout Plain Layout
18214 GuiName
18215 \begin_inset space ~
18216 \end_inset
18217
18218 <guiname>
18219 \end_layout
18220
18221 \end_inset
18222
18223  The text that is displayed on the button.
18224  This command must occur exactly once.
18225 \end_layout
18226
18227 \begin_layout Description
18228 \begin_inset Flex CharStyle:Code
18229 status collapsed
18230
18231 \begin_layout Plain Layout
18232 HelpText
18233 \begin_inset space ~
18234 \end_inset
18235
18236 <text>
18237 \begin_inset space ~
18238 \end_inset
18239
18240 HelpTextEnd
18241 \end_layout
18242
18243 \end_inset
18244
18245  The help text that is used in the External dialog.
18246  Provide enough information to explain to the user just what the template
18247  can provide him with.
18248  This command must occur exactly once.
18249 \end_layout
18250
18251 \begin_layout Description
18252 \begin_inset Flex CharStyle:Code
18253 status collapsed
18254
18255 \begin_layout Plain Layout
18256 InputFormat
18257 \begin_inset space ~
18258 \end_inset
18259
18260 <format>
18261 \end_layout
18262
18263 \end_inset
18264
18265  The file format of the original file.
18266  This must be the name of a format that is known to LyX (see section 
18267 \begin_inset CommandInset ref
18268 LatexCommand ref
18269 reference "sec:Formats"
18270
18271 \end_inset
18272
18273 ).
18274  Use 
18275 \begin_inset Quotes eld
18276 \end_inset
18277
18278
18279 \begin_inset Flex CharStyle:Code
18280 status collapsed
18281
18282 \begin_layout Plain Layout
18283 *
18284 \end_layout
18285
18286 \end_inset
18287
18288
18289 \begin_inset Quotes erd
18290 \end_inset
18291
18292  if the template can handle original files of more than one format.
18293  LyX will attempt to interrogate the file itself in order to deduce its
18294  format in this case.
18295  This command must occur exactly once.
18296 \end_layout
18297
18298 \begin_layout Description
18299 \begin_inset Flex CharStyle:Code
18300 status collapsed
18301
18302 \begin_layout Plain Layout
18303 Template
18304 \begin_inset space ~
18305 \end_inset
18306
18307 <id>
18308 \end_layout
18309
18310 \end_inset
18311
18312  A unique name for the template.
18313  It must not contain substitution macros (see below).
18314 \end_layout
18315
18316 \begin_layout Description
18317 \begin_inset Flex CharStyle:Code
18318 status collapsed
18319
18320 \begin_layout Plain Layout
18321 Transform
18322 \begin_inset space ~
18323 \end_inset
18324
18325 Rotate|Resize|Clip|Extra
18326 \end_layout
18327
18328 \end_inset
18329
18330  This command specifies which transformations are supported by this template.
18331  It may occur zero or more times.
18332  This command enables the corresponding tabs in the external dialog.
18333  Each 
18334 \begin_inset Flex CharStyle:Code
18335 status collapsed
18336
18337 \begin_layout Plain Layout
18338 Transform
18339 \end_layout
18340
18341 \end_inset
18342
18343  command must have either a corresponding 
18344 \begin_inset Flex CharStyle:Code
18345 status collapsed
18346
18347 \begin_layout Plain Layout
18348 TransformCommand
18349 \end_layout
18350
18351 \end_inset
18352
18353  or a 
18354 \begin_inset Flex CharStyle:Code
18355 status collapsed
18356
18357 \begin_layout Plain Layout
18358 TransformOption
18359 \end_layout
18360
18361 \end_inset
18362
18363  command in the 
18364 \begin_inset Flex CharStyle:Code
18365 status collapsed
18366
18367 \begin_layout Plain Layout
18368 Format
18369 \end_layout
18370
18371 \end_inset
18372
18373  section.
18374  Otherwise the transformation will not be supported by that format.
18375 \end_layout
18376
18377 \begin_layout Subsection
18378 The Format section
18379 \end_layout
18380
18381 \begin_layout Description
18382 \begin_inset Flex CharStyle:Code
18383 status collapsed
18384
18385 \begin_layout Plain Layout
18386 Format
18387 \begin_inset space ~
18388 \end_inset
18389
18390 LaTeX|PDFLaTeX|PlainText|DocBook
18391 \end_layout
18392
18393 \end_inset
18394
18395  The primary document file format that this format definition is for.
18396  Not every template has a sensible representation in all document file formats.
18397  Please define nevertheless a 
18398 \begin_inset Flex CharStyle:Code
18399 status collapsed
18400
18401 \begin_layout Plain Layout
18402 Format
18403 \end_layout
18404
18405 \end_inset
18406
18407  section for all formats.
18408  Use a dummy text when no representation is available.
18409  Then you can at least see a reference to the external material in the exported
18410  document.
18411 \end_layout
18412
18413 \begin_layout Description
18414 \begin_inset Flex CharStyle:Code
18415 status collapsed
18416
18417 \begin_layout Plain Layout
18418 Option
18419 \begin_inset space ~
18420 \end_inset
18421
18422 <name>
18423 \begin_inset space ~
18424 \end_inset
18425
18426 <value>
18427 \end_layout
18428
18429 \end_inset
18430
18431  This command defines an additional macro 
18432 \begin_inset Flex CharStyle:Code
18433 status collapsed
18434
18435 \begin_layout Plain Layout
18436 $$<name>
18437 \end_layout
18438
18439 \end_inset
18440
18441  for substitution in 
18442 \begin_inset Flex CharStyle:Code
18443 status collapsed
18444
18445 \begin_layout Plain Layout
18446 Product
18447 \end_layout
18448
18449 \end_inset
18450
18451 .
18452  
18453 \begin_inset Flex CharStyle:Code
18454 status collapsed
18455
18456 \begin_layout Plain Layout
18457 <value>
18458 \end_layout
18459
18460 \end_inset
18461
18462  itself may contain substitution macros.
18463  The advantage over using 
18464 \begin_inset Flex CharStyle:Code
18465 status collapsed
18466
18467 \begin_layout Plain Layout
18468 <value>
18469 \end_layout
18470
18471 \end_inset
18472
18473  directly in 
18474 \begin_inset Flex CharStyle:Code
18475 status collapsed
18476
18477 \begin_layout Plain Layout
18478 Product
18479 \end_layout
18480
18481 \end_inset
18482
18483  is that the substituted value of 
18484 \begin_inset Flex CharStyle:Code
18485 status collapsed
18486
18487 \begin_layout Plain Layout
18488 $$<name>
18489 \end_layout
18490
18491 \end_inset
18492
18493  is sanitized so that it is a valid optional argument in the document format.
18494  This command may occur zero or more times.
18495 \end_layout
18496
18497 \begin_layout Description
18498 \begin_inset Flex CharStyle:Code
18499 status collapsed
18500
18501 \begin_layout Plain Layout
18502 Product
18503 \begin_inset space ~
18504 \end_inset
18505
18506 <text>
18507 \end_layout
18508
18509 \end_inset
18510
18511  The text that is inserted in the exported document.
18512  This is actually the most important command and can be quite complex.
18513  This command must occur exactly once.
18514 \end_layout
18515
18516 \begin_layout Description
18517 \begin_inset Flex CharStyle:Code
18518 status collapsed
18519
18520 \begin_layout Plain Layout
18521 Preamble
18522 \begin_inset space ~
18523 \end_inset
18524
18525 <name>
18526 \end_layout
18527
18528 \end_inset
18529
18530  This command specifies a preamble snippet that will be included in the
18531  LaTeX preamble.
18532  It has to be defined using 
18533 \begin_inset Flex CharStyle:Code
18534 status collapsed
18535
18536 \begin_layout Plain Layout
18537 PreambleDef
18538 \end_layout
18539
18540 \end_inset
18541
18542  \SpecialChar \ldots{}
18543  
18544 \begin_inset Flex CharStyle:Code
18545 status collapsed
18546
18547 \begin_layout Plain Layout
18548 PreambleDefEnd
18549 \end_layout
18550
18551 \end_inset
18552
18553 .
18554  This command may occur zero or more times.
18555 \end_layout
18556
18557 \begin_layout Description
18558 \begin_inset Flex CharStyle:Code
18559 status collapsed
18560
18561 \begin_layout Plain Layout
18562 ReferencedFile
18563 \begin_inset space ~
18564 \end_inset
18565
18566 <format>
18567 \begin_inset space ~
18568 \end_inset
18569
18570 <filename>
18571 \end_layout
18572
18573 \end_inset
18574
18575  This command denotes files that are created by the conversion process and
18576  are needed for a particular export format.
18577  If the filename is relative, it is interpreted relative to the master document.
18578  This command may be given zero or more times.
18579 \end_layout
18580
18581 \begin_layout Description
18582 \begin_inset Flex CharStyle:Code
18583 status collapsed
18584
18585 \begin_layout Plain Layout
18586 Requirement
18587 \begin_inset space ~
18588 \end_inset
18589
18590 <package>
18591 \end_layout
18592
18593 \end_inset
18594
18595  The name of a required LaTeX package.
18596  The package is included via 
18597 \begin_inset Flex CharStyle:Code
18598 status collapsed
18599
18600 \begin_layout Plain Layout
18601
18602 \backslash
18603 usepackage{}
18604 \end_layout
18605
18606 \end_inset
18607
18608  in the LaTeX preamble.
18609  This command may occur zero or more times.
18610 \end_layout
18611
18612 \begin_layout Description
18613 \begin_inset Flex CharStyle:Code
18614 status collapsed
18615
18616 \begin_layout Plain Layout
18617 TransformCommand
18618 \begin_inset space ~
18619 \end_inset
18620
18621 Rotate
18622 \begin_inset space ~
18623 \end_inset
18624
18625 RotationLatexCommand
18626 \end_layout
18627
18628 \end_inset
18629
18630  This command specifies that the built in LaTeX command should be used for
18631  rotation.
18632  This command may occur once or not at all.
18633 \end_layout
18634
18635 \begin_layout Description
18636 \begin_inset Flex CharStyle:Code
18637 status collapsed
18638
18639 \begin_layout Plain Layout
18640 TransformCommand
18641 \begin_inset space ~
18642 \end_inset
18643
18644 Resize
18645 \begin_inset space ~
18646 \end_inset
18647
18648 ResizeLatexCommand
18649 \end_layout
18650
18651 \end_inset
18652
18653  This command specifies that the built in LaTeX command should be used for
18654  resizing.
18655  This command may occur once or not at all.
18656 \end_layout
18657
18658 \begin_layout Description
18659 \begin_inset Flex CharStyle:Code
18660 status collapsed
18661
18662 \begin_layout Plain Layout
18663 TransformOption
18664 \begin_inset space ~
18665 \end_inset
18666
18667 Rotate
18668 \begin_inset space ~
18669 \end_inset
18670
18671 RotationLatexOption
18672 \end_layout
18673
18674 \end_inset
18675
18676  This command specifies that rotation is done via an optional argument.
18677  This command may occur once or not at all.
18678 \end_layout
18679
18680 \begin_layout Description
18681 \begin_inset Flex CharStyle:Code
18682 status collapsed
18683
18684 \begin_layout Plain Layout
18685 TransformOption
18686 \begin_inset space ~
18687 \end_inset
18688
18689 Resize
18690 \begin_inset space ~
18691 \end_inset
18692
18693 ResizeLatexOption
18694 \end_layout
18695
18696 \end_inset
18697
18698  This command specifies that resizing is done via an optional argument.
18699  This command may occur once or not at all.
18700 \end_layout
18701
18702 \begin_layout Description
18703 \begin_inset Flex CharStyle:Code
18704 status collapsed
18705
18706 \begin_layout Plain Layout
18707 TransformOption
18708 \begin_inset space ~
18709 \end_inset
18710
18711 Clip
18712 \begin_inset space ~
18713 \end_inset
18714
18715 ClipLatexOption
18716 \end_layout
18717
18718 \end_inset
18719
18720  This command specifies that clipping is done via an optional argument.
18721  This command may occur once or not at all.
18722 \end_layout
18723
18724 \begin_layout Description
18725 \begin_inset Flex CharStyle:Code
18726 status collapsed
18727
18728 \begin_layout Plain Layout
18729 TransformOption
18730 \begin_inset space ~
18731 \end_inset
18732
18733 Extra
18734 \begin_inset space ~
18735 \end_inset
18736
18737 ExtraLatexOption
18738 \end_layout
18739
18740 \end_inset
18741
18742  This command specifies that an extra optional argument is used.
18743  This command may occur once or not at all.
18744 \end_layout
18745
18746 \begin_layout Description
18747 \begin_inset Flex CharStyle:Code
18748 status collapsed
18749
18750 \begin_layout Plain Layout
18751 UpdateFormat
18752 \begin_inset space ~
18753 \end_inset
18754
18755 <format>
18756 \end_layout
18757
18758 \end_inset
18759
18760  The file format of the converted file.
18761  This must be the name of a format that is known to LyX (see the 
18762 \begin_inset Flex CharStyle:MenuItem
18763 status collapsed
18764
18765 \begin_layout Plain Layout
18766
18767 \bar under
18768 T
18769 \bar default
18770 ools\SpecialChar \menuseparator
18771
18772 \bar under
18773 P
18774 \bar default
18775 references:Conversion
18776 \end_layout
18777
18778 \end_inset
18779
18780  dialog).
18781  This command must occur exactly once.
18782 \end_layout
18783
18784 \begin_layout Description
18785 \begin_inset Flex CharStyle:Code
18786 status collapsed
18787
18788 \begin_layout Plain Layout
18789 UpdateResult
18790 \begin_inset space ~
18791 \end_inset
18792
18793 <filename>
18794 \end_layout
18795
18796 \end_inset
18797
18798  The file name of the converted file.
18799  The file name must be absolute.
18800  This command must occur exactly once.
18801 \end_layout
18802
18803 \begin_layout Subsection
18804 Preamble definitions
18805 \end_layout
18806
18807 \begin_layout Standard
18808 The external template configuration file may contain additional preamble
18809  definitions enclosed by 
18810 \begin_inset Flex CharStyle:Code
18811 status collapsed
18812
18813 \begin_layout Plain Layout
18814 PreambleDef
18815 \end_layout
18816
18817 \end_inset
18818
18819  \SpecialChar \ldots{}
18820  
18821 \begin_inset Flex CharStyle:Code
18822 status collapsed
18823
18824 \begin_layout Plain Layout
18825 PreambleDefEnd
18826 \end_layout
18827
18828 \end_inset
18829
18830 .
18831  They can be used by the templates in the 
18832 \begin_inset Flex CharStyle:Code
18833 status collapsed
18834
18835 \begin_layout Plain Layout
18836 Format
18837 \end_layout
18838
18839 \end_inset
18840
18841  section.
18842 \end_layout
18843
18844 \begin_layout Section
18845 The substitution mechanism
18846 \end_layout
18847
18848 \begin_layout Standard
18849 When the external material facility invokes an external program, it is done
18850  on the basis of a command defined in the template configuration file.
18851  These commands can contain various macros that are expanded before execution.
18852  Execution always take place in the directory of the containing document.
18853 \end_layout
18854
18855 \begin_layout Standard
18856 Also, whenever external material is to be displayed, the name will be produced
18857  by the substitution mechanism, and most other commands in the template
18858  definition support substitution as well.
18859 \end_layout
18860
18861 \begin_layout Standard
18862 The available macros are the following:
18863 \end_layout
18864
18865 \begin_layout Description
18866 \begin_inset Flex CharStyle:Code
18867 status collapsed
18868
18869 \begin_layout Plain Layout
18870 $$AbsOrRelPathMaster
18871 \end_layout
18872
18873 \end_inset
18874
18875  The file path, absolute or relative to the master LyX document.
18876 \end_layout
18877
18878 \begin_layout Description
18879 \begin_inset Flex CharStyle:Code
18880 status collapsed
18881
18882 \begin_layout Plain Layout
18883 $$AbsOrRelPathParent
18884 \end_layout
18885
18886 \end_inset
18887
18888  The file path, absolute or relative to the LyX document.
18889 \end_layout
18890
18891 \begin_layout Description
18892 \begin_inset Flex CharStyle:Code
18893 status collapsed
18894
18895 \begin_layout Plain Layout
18896 $$AbsPath
18897 \end_layout
18898
18899 \end_inset
18900
18901  The absolute file path.
18902 \end_layout
18903
18904 \begin_layout Description
18905 \begin_inset Flex CharStyle:Code
18906 status collapsed
18907
18908 \begin_layout Plain Layout
18909 $$Basename
18910 \end_layout
18911
18912 \end_inset
18913
18914  The filename without path and without the extension.
18915 \end_layout
18916
18917 \begin_layout Description
18918 \begin_inset Flex CharStyle:Code
18919 status collapsed
18920
18921 \begin_layout Plain Layout
18922 $$Contents(
18923 \begin_inset Quotes eld
18924 \end_inset
18925
18926 filename.ext
18927 \begin_inset Quotes erd
18928 \end_inset
18929
18930 )
18931 \end_layout
18932
18933 \end_inset
18934
18935  This macro will expand to the contents of the file with the name 
18936 \begin_inset Flex CharStyle:Code
18937 status collapsed
18938
18939 \begin_layout Plain Layout
18940 filename.ext
18941 \end_layout
18942
18943 \end_inset
18944
18945 .
18946 \end_layout
18947
18948 \begin_layout Description
18949 \begin_inset Flex CharStyle:Code
18950 status collapsed
18951
18952 \begin_layout Plain Layout
18953 $$Extension
18954 \end_layout
18955
18956 \end_inset
18957
18958  The file extension (including the dot).
18959 \end_layout
18960
18961 \begin_layout Description
18962 \begin_inset Flex CharStyle:Code
18963 status collapsed
18964
18965 \begin_layout Plain Layout
18966 $$FName
18967 \end_layout
18968
18969 \end_inset
18970
18971  The filename of the file specified in the external material dialog.
18972  This is either an absolute name, or it is relative to the LyX document.
18973 \end_layout
18974
18975 \begin_layout Description
18976 \begin_inset Flex CharStyle:Code
18977 status collapsed
18978
18979 \begin_layout Plain Layout
18980 $$FPath
18981 \end_layout
18982
18983 \end_inset
18984
18985  The path part of 
18986 \begin_inset Flex CharStyle:Code
18987 status collapsed
18988
18989 \begin_layout Plain Layout
18990 $$FName
18991 \end_layout
18992
18993 \end_inset
18994
18995  (absolute name or relative to the LyX document).
18996 \end_layout
18997
18998 \begin_layout Description
18999 \begin_inset Flex CharStyle:Code
19000 status collapsed
19001
19002 \begin_layout Plain Layout
19003 $$RelPathMaster
19004 \end_layout
19005
19006 \end_inset
19007
19008  The file path, relative to the master LyX document.
19009 \end_layout
19010
19011 \begin_layout Description
19012 \begin_inset Flex CharStyle:Code
19013 status collapsed
19014
19015 \begin_layout Plain Layout
19016 $$RelPathParent
19017 \end_layout
19018
19019 \end_inset
19020
19021  The file path, relative to the LyX document.
19022 \end_layout
19023
19024 \begin_layout Description
19025 \begin_inset Flex CharStyle:Code
19026 status collapsed
19027
19028 \begin_layout Plain Layout
19029 $$Sysdir
19030 \end_layout
19031
19032 \end_inset
19033
19034  This macro will expand to the absolute path of the system directory.
19035  This is typically used to point to the various helper scripts that are
19036  bundled with LyX.
19037 \end_layout
19038
19039 \begin_layout Description
19040 \begin_inset Flex CharStyle:Code
19041 status collapsed
19042
19043 \begin_layout Plain Layout
19044 $$Tempname
19045 \end_layout
19046
19047 \end_inset
19048
19049  A name and full path to a temporary file which will be automatically deleted
19050  whenever the containing document is closed, or the external material insertion
19051  deleted.
19052 \end_layout
19053
19054 \begin_layout Standard
19055 All path macros contain a trailing directory separator, so you can construct
19056  e.
19057 \begin_inset space \thinspace{}
19058 \end_inset
19059
19060 g.
19061 \begin_inset space \space{}
19062 \end_inset
19063
19064 the absolute filename with 
19065 \begin_inset Flex CharStyle:Code
19066 status collapsed
19067
19068 \begin_layout Plain Layout
19069 $$AbsPath$$Basename$$Extension
19070 \end_layout
19071
19072 \end_inset
19073
19074 .
19075 \end_layout
19076
19077 \begin_layout Standard
19078 The macros above are substituted in all commands unless otherwise noted.
19079  The command 
19080 \begin_inset Flex CharStyle:Code
19081 status collapsed
19082
19083 \begin_layout Plain Layout
19084 Product
19085 \end_layout
19086
19087 \end_inset
19088
19089  supports additionally the following substitutions if they are enabled by
19090  the 
19091 \begin_inset Flex CharStyle:Code
19092 status collapsed
19093
19094 \begin_layout Plain Layout
19095 Transform
19096 \end_layout
19097
19098 \end_inset
19099
19100  and 
19101 \begin_inset Flex CharStyle:Code
19102 status collapsed
19103
19104 \begin_layout Plain Layout
19105 TransformCommand
19106 \end_layout
19107
19108 \end_inset
19109
19110  commands:
19111 \end_layout
19112
19113 \begin_layout Description
19114 \begin_inset Flex CharStyle:Code
19115 status collapsed
19116
19117 \begin_layout Plain Layout
19118 $$ResizeFront
19119 \end_layout
19120
19121 \end_inset
19122
19123  The front part of the resize command.
19124 \end_layout
19125
19126 \begin_layout Description
19127 \begin_inset Flex CharStyle:Code
19128 status collapsed
19129
19130 \begin_layout Plain Layout
19131 $$ResizeBack
19132 \end_layout
19133
19134 \end_inset
19135
19136  The back part of the resize command.
19137 \end_layout
19138
19139 \begin_layout Description
19140 \begin_inset Flex CharStyle:Code
19141 status collapsed
19142
19143 \begin_layout Plain Layout
19144 $$RotateFront
19145 \end_layout
19146
19147 \end_inset
19148
19149  The front part of the rotation command.
19150 \end_layout
19151
19152 \begin_layout Description
19153 \begin_inset Flex CharStyle:Code
19154 status collapsed
19155
19156 \begin_layout Plain Layout
19157 $$RotateBack
19158 \end_layout
19159
19160 \end_inset
19161
19162  The back part of the rotation command.
19163 \end_layout
19164
19165 \begin_layout Standard
19166 The value string of the 
19167 \begin_inset Flex CharStyle:Code
19168 status collapsed
19169
19170 \begin_layout Plain Layout
19171 Option
19172 \end_layout
19173
19174 \end_inset
19175
19176  command supports additionally the following substitutions if they are enabled
19177  by the 
19178 \begin_inset Flex CharStyle:Code
19179 status collapsed
19180
19181 \begin_layout Plain Layout
19182 Transform
19183 \end_layout
19184
19185 \end_inset
19186
19187  and 
19188 \begin_inset Flex CharStyle:Code
19189 status collapsed
19190
19191 \begin_layout Plain Layout
19192 TransformOption
19193 \end_layout
19194
19195 \end_inset
19196
19197  commands:
19198 \end_layout
19199
19200 \begin_layout Description
19201 \begin_inset Flex CharStyle:Code
19202 status collapsed
19203
19204 \begin_layout Plain Layout
19205 $$Clip
19206 \end_layout
19207
19208 \end_inset
19209
19210  The clip option.
19211 \end_layout
19212
19213 \begin_layout Description
19214 \begin_inset Flex CharStyle:Code
19215 status collapsed
19216
19217 \begin_layout Plain Layout
19218 $$Extra
19219 \end_layout
19220
19221 \end_inset
19222
19223  The extra option.
19224 \end_layout
19225
19226 \begin_layout Description
19227 \begin_inset Flex CharStyle:Code
19228 status collapsed
19229
19230 \begin_layout Plain Layout
19231 $$Resize
19232 \end_layout
19233
19234 \end_inset
19235
19236  The resize option.
19237 \end_layout
19238
19239 \begin_layout Description
19240 \begin_inset Flex CharStyle:Code
19241 status collapsed
19242
19243 \begin_layout Plain Layout
19244 $$Rotate
19245 \end_layout
19246
19247 \end_inset
19248
19249  The rotation option.
19250 \end_layout
19251
19252 \begin_layout Standard
19253 You may ask why there are so many path macros.
19254  There are mainly two reasons:
19255 \end_layout
19256
19257 \begin_layout Enumerate
19258 Relative and absolute file names should remain relative or absolute, respectivel
19259 y.
19260  Users may have reasons to prefer either form.
19261  Relative names are useful for portable documents that should work on different
19262  machines, for example.
19263  Absolute names may be required by some programs.
19264 \end_layout
19265
19266 \begin_layout Enumerate
19267 LaTeX treats relative file names differently than LyX and other programs
19268  in nested included files.
19269  For LyX, a relative file name is always relative to the document that contains
19270  the file name.
19271  For LaTeX, it is always relative to the master document.
19272  These two definitions are identical if you have only one document, but
19273  differ if you have a master document that includes part documents.
19274  That means that relative filenames must be transformed when presented to
19275  LaTeX.
19276  Fortunately LyX does this automatically for you if you choose the right
19277  macros.
19278 \end_layout
19279
19280 \begin_layout Standard
19281 So which path macro should be used in new template definitions? The rule
19282  is not difficult:
19283 \end_layout
19284
19285 \begin_layout Itemize
19286 Use 
19287 \begin_inset Flex CharStyle:Code
19288 status collapsed
19289
19290 \begin_layout Plain Layout
19291 $$AbsPath
19292 \end_layout
19293
19294 \end_inset
19295
19296  if an absolute path is required.
19297 \end_layout
19298
19299 \begin_layout Itemize
19300 Use 
19301 \begin_inset Flex CharStyle:Code
19302 status collapsed
19303
19304 \begin_layout Plain Layout
19305 $$AbsOrRelPathMaster
19306 \end_layout
19307
19308 \end_inset
19309
19310  if the substituted string is some kind of LaTeX input.
19311 \end_layout
19312
19313 \begin_layout Itemize
19314 Else use 
19315 \begin_inset Flex CharStyle:Code
19316 status collapsed
19317
19318 \begin_layout Plain Layout
19319 $$AbsOrRelPathParent
19320 \end_layout
19321
19322 \end_inset
19323
19324  in order to preserve the user's choice.
19325 \end_layout
19326
19327 \begin_layout Standard
19328 There are special cases where this rule does not work and e.
19329 \begin_inset space \thinspace{}
19330 \end_inset
19331
19332 g.
19333 \begin_inset space \space{}
19334 \end_inset
19335
19336 relative names are needed, but normally it will work just fine.
19337  One example for such a case is the command 
19338 \begin_inset Flex CharStyle:Code
19339 status collapsed
19340
19341 \begin_layout Plain Layout
19342 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
19343 \end_layout
19344
19345 \end_inset
19346
19347  in the XFig template above: We can't use the absolute name because the
19348  copier for 
19349 \begin_inset Flex CharStyle:Code
19350 status collapsed
19351
19352 \begin_layout Plain Layout
19353 .pstex_t
19354 \end_layout
19355
19356 \end_inset
19357
19358  files needs the relative name in order to rewrite the file content.
19359 \end_layout
19360
19361 \begin_layout Section
19362 Security discussion
19363 \begin_inset CommandInset label
19364 LatexCommand label
19365 name "sec:Security-discussion"
19366
19367 \end_inset
19368
19369
19370 \end_layout
19371
19372 \begin_layout Standard
19373 The external material feature interfaces with a lot of external programs
19374  and does so automatically, so we have to consider the security implications
19375  of this.
19376  In particular, since you have the option of including your own filenames
19377  and/or parameter strings and those are expanded into a command, it seems
19378  that it would be possible to create a malicious document which executes
19379  arbitrary commands when a user views or prints the document.
19380  This is something we definitely want to avoid.
19381 \end_layout
19382
19383 \begin_layout Standard
19384 However, since the external program commands are specified in the template
19385  configuration file only, there are no security issues if LyX is properly
19386  configured with safe templates only.
19387  This is so because the external programs are invoked with the 
19388 \begin_inset Flex CharStyle:Code
19389 status collapsed
19390
19391 \begin_layout Plain Layout
19392 execvp
19393 \end_layout
19394
19395 \end_inset
19396
19397 -system call rather than the 
19398 \begin_inset Flex CharStyle:Code
19399 status collapsed
19400
19401 \begin_layout Plain Layout
19402 system
19403 \end_layout
19404
19405 \end_inset
19406
19407  system-call, so it's not possible to execute arbitrary commands from the
19408  filename or parameter section via the shell.
19409 \end_layout
19410
19411 \begin_layout Standard
19412 This also implies that you are restricted in what command strings you can
19413  use in the external material templates.
19414  In particular, pipes and redirection are not readily available.
19415  This has to be so if LyX should remain safe.
19416  If you want to use some of the shell features, you should write a safe
19417  script to do this in a controlled manner, and then invoke the script from
19418  the command string.
19419  
19420 \end_layout
19421
19422 \begin_layout Standard
19423 It is possible to design a template that interacts directly with the shell,
19424  but since this would allow a malicious user to execute arbitrary commands
19425  by writing clever filenames and/or parameters, we generally recommend that
19426  you only use safe scripts that work with the 
19427 \begin_inset Flex CharStyle:Code
19428 status collapsed
19429
19430 \begin_layout Plain Layout
19431 execvp
19432 \end_layout
19433
19434 \end_inset
19435
19436  system call in a controlled manner.
19437  Of course, for use in a controlled environment, it can be tempting to just
19438  fall back to use ordinary shell scripts.
19439  If you do so, be aware that you 
19440 \emph on
19441 will
19442 \emph default
19443  provide an easily exploitable security hole in your system.
19444  Of course it stands to reason that such unsafe templates will never be
19445  included in the standard LyX distribution, although we do encourage people
19446  to submit new templates in the open source tradition.
19447  But LyX as shipped from the official distribution channels will never have
19448  unsafe templates.
19449 \end_layout
19450
19451 \begin_layout Standard
19452 Including external material provides a lot of power, and you have to be
19453  careful not to introduce security hazards with this power.
19454  A subtle error in a single line in an innocent looking script can open
19455  the door to huge security problems.
19456  So if you do not fully understand the issues, we recommend that you consult
19457  a knowledgeable security professional or the LyX development team if you
19458  have any questions about whether a given template is safe or not.
19459  And do this before you use it in an uncontrolled environment.
19460 \end_layout
19461
19462 \end_body
19463 \end_document