1 #LyX 1.5.0svn created this file. For more info see http://www.lyx.org/
8 \IfFileExists{isolatin.def}
9 {\usepackage[isolatin]{inputenc}}
10 {\usepackage[latin1]{inputenc}}
13 \inputencoding default
16 \font_typewriter default
17 \font_default_family default
23 \paperfontsize default
31 \paperorientation portrait
34 \paragraph_separation indent
36 \quotes_language english
39 \paperpagestyle headings
40 \tracking_changes false
42 \author "Richard Heck"
43 \author "Jean-Marc Lasgouttes"
50 Customizing LyX: Features for the Advanced User
58 \begin_layout Standard
60 Principal maintainer of this file is
65 If you have comments or error corrections, please send them to the LyX
66 Documentation mailing list, <lyx-docs@lists.lyx.org>.
74 \begin_layout Standard
75 \begin_inset LatexCommand tableofcontents
86 \begin_layout Standard
87 This manual covers the customization features present in LyX.
88 In it, we discuss issues like keyboard shortcuts, screen previewing options,
89 printer options, sending commands to LyX via the LyX Server, internationalizati
90 on, installing new LaTeX classes and LyX layouts, etc.
91 We can't possibly hope to touch on everything you can change---our developers
92 add new features faster than we can document them---but we will explain
93 the most common customizations and hopefully point you in the right direction
94 for some of the more obscure ones.
98 LyX configuration files
101 \begin_layout Standard
102 \begin_inset LatexCommand label
107 This chapter aims to help you to find your way through the LyX configuration
109 Before continuing to read this chapter, you should find out where your
110 LyX library directory is by using
115 elp\SpecialChar \menuseparator
123 This directory is the place where LyX places its system-wide configuration
124 files, and we will simply name it
128 in the remainder of this document.
132 \begin_layout Section
140 \begin_layout Standard
145 and its sub-directories contain a number of files and that can be used
146 to customise LyX's behaviour.
147 You can change many of these files from within LyX itself through the
152 ools\SpecialChar \menuseparator
160 Most customization that you might want to do to LyX is possible through
162 However, many other inner aspects of LyX can be customized by modifying
168 They fall in different categories, described in the following subsections.
171 \begin_layout Subsection
172 Automatically generated files
175 \begin_layout Standard
176 These files are generated when you configure LyX.
177 They contain various default values that are guessed by inspection.
178 In general, it is not a good idea to modify them, since they might be overwritt
183 \labelwidthstring 00.00.0000
190 contains defaults for various commands.
194 \labelwidthstring 00.00.0000
201 contains the list of packages that have been recognized by LyX.
202 It is currently unused by the LyX program itself, but the information extracted
203 , and more, is made available with
208 elp\SpecialChar \menuseparator
220 \labelwidthstring 00.00.0000
227 is the list of text classes that have been found in your
231 directory, along with the associated LaTeX document class and their description.
235 \labelwidthstring 00.00.0000
240 is automatically generated during configuration from the file
247 \begin_layout Subsection
252 \labelwidthstring 00.00.0000
259 this directory contains files with the extension
263 that define the keybindings used in LyX (see section\InsetSpace ~
265 \begin_inset LatexCommand ref
266 reference "sec:bindings"
271 If there exists an internationalized version of the bind file named
275 , that will be used first.
276 See Chapter\InsetSpace ~
278 \begin_inset LatexCommand ref
279 reference "chap:i18n"
284 \begin_inset LatexCommand ref
285 reference "sec:bindings"
293 \labelwidthstring 00.00.0000
300 contains graphics files that can be included in documents.
305 \labelwidthstring 00.00.0000
312 contains LyX documentation files (including the one you are currently reading).
317 deserves special attention, as noted above.
318 If there exists an internationalized version of the help-document with
323 prepended to the name, that will be used first.
324 See Chapter\InsetSpace ~
326 \begin_inset LatexCommand ref
327 reference "chap:i18n"
335 \labelwidthstring 00.00.0000
342 contains example files that explain how to use some features.
343 In the file browser, press the
351 \labelwidthstring 00.00.0000
356 contains image files that are used by the
361 In addition, it also contains the individual icons used in the toolbar
362 and the banners that can be shown when LyX is launched.
366 \labelwidthstring 00.00.0000
373 contains keyboard keymapping files.
374 See Chapter\InsetSpace ~
376 \begin_inset LatexCommand ref
377 reference "sec:keymap"
385 \labelwidthstring 00.00.0000
392 contains the text class files described in Chapter\InsetSpace ~
394 \begin_inset LatexCommand ref
395 reference "chap:textclass"
403 \labelwidthstring 00.00.0000
408 contains some files that demonstrate the capabilities of the
410 External\InsetSpace ~
417 \labelwidthstring 00.00.0000
422 contains the standard LyX template files described in Chapter\InsetSpace ~
424 \begin_inset LatexCommand ref
425 reference "sec:templates"
433 \labelwidthstring 00.00.0000
438 contains some LaTeX cls files distributed with LyX.
442 \labelwidthstring 00.00.0000
447 contains files with the extension
451 that define the user interface to LyX.
452 That is, the files define which items appear in which menus and the items
453 appearing on the toolbar.
454 See Chapter\InsetSpace ~
456 \begin_inset LatexCommand ref
464 \begin_layout Subsection
465 Files you don't want to modify
468 \begin_layout Standard
469 These files are used internally by LyX and you generally do not need to
470 modify them unless you are a developer.
474 \labelwidthstring 00.00.0000
481 this file contains the list of LyX developers.
482 The contents are displayed with the menu entry
487 elp\SpecialChar \menuseparator
495 \labelwidthstring 00.00.0000
502 this is a LaTeX script used during the configuration process.
507 \labelwidthstring 00.00.0000
514 this is the script that is used to re-configure LyX.
515 It creates configuration files in the directory it was run from.
518 \begin_layout Subsection
519 Other files needing a line or two...
523 \labelwidthstring 00.00.0000
528 this contains tables describing how different character encodings can be
533 \labelwidthstring 00.00.0000
538 this file contains the templates available to the new
540 External\InsetSpace ~
547 \labelwidthstring 00.00.0000
552 this file contains a list of all the languages currently supported by LyX.
555 \begin_layout Section
556 Your local configuration directory
559 \begin_layout Standard
560 Even if you are using LyX as an unprivileged user, you might want to change
561 LyX configuration for your own use.
566 directory contains all your personal configuration files.
567 This is the directory described as
568 \begin_inset Quotes eld
572 \begin_inset Quotes erd
580 elp\SpecialChar \menuseparator
585 This directory is used as a mirror of
589 , which means that every file in
593 is a replacement for the corresponding file in
598 Any configuration file described in the above sections can be placed either
599 in the system-wide directory, in which case it will affect all users, or
600 in your local directory for your own use.
603 \begin_layout Standard
604 To make things clearer, let's provide a few examples:
607 \begin_layout Itemize
608 The preferences set in the
613 ools\SpecialChar \menuseparator
620 dialog are saved to a file
631 \begin_layout Itemize
632 When you reconfigure using
637 ools\SpecialChar \menuseparator
648 and the resulting files are written in your local configuration directory
649 (see section\InsetSpace ~
651 \begin_inset LatexCommand ref
652 reference "sec:autodetected"
656 to have a list of the
660 settings affected by this section).
661 This means that any additional text class file that you might have added
666 will be added to the list of classes in the
671 ayout\SpecialChar \menuseparator
681 \begin_layout Itemize
682 Similarly, if you have installed some LaTeX document classes in your home
683 directory, that LaTeX can find with your
687 path, they will show up in your list of text classes.
691 \begin_layout Standard
692 as long as LyX or yourself have a
696 file for it, of course.
704 \begin_layout Itemize
705 If you get some updated documentation from LyX ftp site and cannot install
706 it because you do not have sysadmin rights on your system, you can just
721 \begin_layout Section
722 Running LyX with multiple configurations
725 \begin_layout Standard
726 The configuration freedom of the local configuration directory may not suffice
727 if you want to have more than one configuration at your disposal.
728 For example, you may want to be use different key bindings or printer settings
730 You can achieve this by having several such directories.
731 You then specify which directory to use at run-time.
734 \begin_layout Standard
735 Invoking LyX with the command line switch
743 instructs the program to read the configuration from that directory, and
744 not from the default directory (you can determine the default directory
745 by running LyX without this switch as described above).
746 If this directory does not exist, LyX offers to create it for you, just
747 like it does for the default directory on the first time you run the program.
748 You can modify the configuration options in this additional
752 exactly as you would for the default directory.
753 These directories are completely independent (but read on).
754 Note that setting the environment variable
758 to some value has exactly the same effect
763 \begin_layout Standard
764 Having several configurations also requires more maintenance: if you want
765 to add a new layout to
769 which you want available from all your configurations, you must add it
770 to each directory separately.
771 You can avoid this with the following trick: after LyX creates the additional
772 directory, most of the subdirectories (see above) are empty.
773 If you want the new configuration to mirror an existing one, replace the
774 empty subdirectory with a symbolic link to the matching subdirectory in
775 the existing configuration.
782 subirectory, however, since it contains a file written by the configuration
783 script (also accessible through
788 ools\SpecialChar \menuseparator
794 \begin_inset LatexCommand ref
795 reference "sec:autodetected"
801 which is configuration-specific.
804 \begin_layout Chapter
815 \begin_layout Section
816 Using the dialog for the first time
819 \begin_layout Standard
824 file will contain only changes that you have made to the default behaviour,
825 some of which is hard-coded into LyX and some of which is contained in
828 LyXDir/lyxrc.defaults
831 Note that in both files lines beginning with a
832 \begin_inset Quotes eld
840 \begin_inset Quotes erd
843 are just comments and not interpreted.
844 However, only system administrators should edit
854 ools\SpecialChar \menuseparator
861 dialog to create and modify their own
868 \begin_layout Standard
874 ools\SpecialChar \menuseparator
881 dialog will be largely self-explanatory.
882 Almost all the commands have an associated comment, so you shouldn't have
883 too much trouble modifying it to taste.
884 Before we highlight a few of the more important commands below, however,
889 ing some of your changes (e.g., screen fonts) will have an instant effect.
891 changing the bind file) will not.
892 If nothing appears to have changed, just
896 the changes and restart LyX.
899 \begin_layout Section
903 \begin_layout Standard
904 The font used to display your documents on the LyX screen is very important,
905 since you'll be reading all your documents with this font.
906 Therefore it is important that the font is as readable and good-looking
908 The LyX team tried to provide the best possible default font for you, but
909 since practically all X11 systems are different, it's likely that the default
910 fonts will be sub-optimal on your system.
911 Fortunately, you can do something about this.
912 Before we explain how to do this, you should learn a bit more about fonts
913 so that you are better prepared for choosing your fonts, because it is
914 a trade-off that is specific to your preferences and the capabilities of
918 \begin_layout Standard
919 Notice that this section only deals with the fonts on the
923 inside the LyX window.
924 The fonts that appear on the
932 are independent from these fonts, and are determined by the document class.
937 to learn how to change the font of the printed version of your document.
940 \begin_layout Standard
941 Basically, screen fonts come in two different kinds: scalable outline fonts
942 and non-scalable bitmap fonts.
943 This distinction seems a bit arbitrary, since non-scalable fonts are actually
944 scalable in most modern font renderers.
945 The difference lies in the
949 of the scaling, and the
954 The most important decision is thus whether you should use non-scalable
955 bitmap fonts or scalable outline fonts.
958 \begin_layout Standard
959 The scalable fonts are built from
963 of the single glyphs (i.e.
964 characters) in the font.
965 This means that each glyph is defined using mathematical curves that are
966 well suited for scaling to any requested size.
967 This mathematical definition is interpreted by the font renderer and turned
968 into a small picture composed of pixels according to which size and glyph,
969 the programmer requests.
970 This means that scalable fonts will look pretty good in all sizes.
971 Well, almost all sizes.
972 Since scalable fonts are defined in an abstract way, it can be hard to
973 provide a good rendering at small sizes, where each pixel has to be very
974 carefully computed to provide a good image.
975 Technically it is possible to do this from the mathematical definition,
976 but in order to keep the rendering reasonably fast, tradeoffs have to be
977 made, and the result is that scalable fonts can be difficult to read at
981 \begin_layout Standard
982 Bitmap fonts on the other hand, are defined by bitmap graphics from the
983 start, so they will look good at all the sizes they are meant for.
984 However, they don't scale well, because in order to scale a glyph, each
985 pixel is enlarged into several pixels.
986 It is the same effect that happens if you try to enlarge a picture in
990 or any other picture manipulation program.
991 In order to relieve this effect, bitmap fonts are typically provided in
992 several fixed sizes typically from around 8 pixels high up to 34 pixels
993 or so high in steps according to what is believed to be useful.
994 The advantage of bitmap fonts is that no complicated computations are necessary
995 to display each glyph, so bitmap fonts are thus faster displayed than scalable
997 The disadvantage is that sizes that don't exists as fixed versions have
998 to be scaled by doubling pixels, and thus look bad.
1001 \begin_layout Standard
1002 The net result of all this, is that bitmap fonts are generally best for
1003 the small sizes, where they are available, while scalable fonts are generally
1004 best for large sizes.
1005 The logical conclusion would thus be to use bitmap fonts for the small
1006 sizes, and scalable fonts for the large sizes.
1007 Unfortunately, this is not a good idea, since bitmap fonts and scalable
1008 fonts are not designed to be used together, so the overall look of such
1009 a scheme would be bad.
1010 The best you can do is thus to try both schemes and decide for yourself
1014 \begin_layout Standard
1015 By default, LyX uses non-scalable bitmap fonts (when using the XForms frontend).
1020 is used, for sans serif fonts,
1028 is used as the monospaced/typewriter font.
1031 \begin_layout Standard
1032 In the following, we will describe what to do if the text does not look
1034 We'll start with the most important parameters: DPI and font zoom.
1037 \begin_layout Subsection
1038 DPI setting and Font Zoom
1041 \begin_layout Standard
1042 LyX automatically tries to scale the fonts to look as close as the paper
1043 output size as possible, except for the so-called font zoom factor.
1046 \begin_layout Standard
1047 In order for this to work on all systems, it relies on the screen DPI (dots
1048 per inch) setting to be correct.
1049 The DPI setting for your system is autodetected by LyX using the information
1050 the X server can provide.
1051 You can check what LyX autodetects the DPI setting to, by running LyX as
1059 \begin_layout Standard
1060 On many systems, X is not set up correctly, so you should check that it
1063 \begin_inset Quotes eld
1071 \begin_inset Quotes erd
1074 and write down what the DPI is for the resolution you use (this will be
1075 close to the value LyX detects).
1076 It is the number mentioned as
1077 \begin_inset Quotes eld
1081 \begin_inset Quotes erd
1085 Also write down the number of pixels you have in the width (the first number
1087 \begin_inset Quotes eld
1091 \begin_inset Quotes erd
1097 \begin_layout Standard
1098 Then get the good old ruler out of the closet, and measure the width of
1099 the visible screen-image on your monitor.
1100 Convert this measurement to inches if you used a centimeter ruler by dividing
1102 Now you can determine the correct DPI setting for your screen by dividing
1103 the number of pixels in the width by the width of the screen-image on the
1105 If this number is more than, say, 5 DPI from the detected value, you should
1106 either fix the X setup, or at least tell LyX that the DPI is different
1107 than the detected value.
1110 \begin_layout Standard
1111 If you can't fix the X setup (which of course is best since other programs
1112 than LyX will benefit from this as well), you can tell LyX the correct
1120 \begin_layout Standard
1121 If the text is too small or too big for your taste, you should fiddle with
1122 the font zoom setting.
1123 This setting is used to scale the point size of the text.
1124 If your DPI setting is correct, and the font zoom setting is set to 100,
1125 this means that LyX will try to display the text exactly the same size
1126 as it will appear on the paper-output.
1127 If you set the zoom factor to 200, the text will try to be 2 times as big
1129 Of course, this will only happen if LyX can find a font that has the appropriat
1130 e size, which you can't count on.
1131 Since LyX is a WYSIWYM system anyways, this limitation isn't much of an
1135 \begin_layout Standard
1136 The default font zoom setting is 150, since a monitor is typically wider
1137 than a piece of paper, but you should try to fiddle with it through the
1151 dialog to find a size that you like.
1152 When you've found a setting that seems to work nicely for you (tip: use
1160 button to keep the dialog open while you experiment), you can make this
1161 setting the default by using the
1171 \begin_layout Standard
1172 While it is often possible to find a suitable size for the text on the screen,
1173 this doesn't necessarily mean that the fonts are the best ones available
1175 In order to help you get the most out of your system, you can use the font
1176 definition commands to fine-tune the look of the text in greater detail
1180 \begin_layout Subsection
1181 Font definition commands
1184 \begin_layout Standard
1185 As mentioned, LyX uses non-scalable bitmap fonts by default with the XForms
1191 is used, for sans serif fonts,
1199 is used as the monospaced/typewriter font.
1202 \begin_layout Standard
1203 You can change all of these from within the
1208 The number of fonts that are available on different systems vary, but the
1213 should be available everywhere.
1214 Use that program to find candidate fonts.
1215 When you've found a font that you like, try to insert the first two elements
1217 \begin_inset Quotes eld
1221 \begin_inset Quotes erd
1225 \begin_inset Quotes eld
1229 \begin_inset Quotes erd
1236 ) in the appropriate field in the
1248 LyX will then reformat your document using the new font, and if you like
1249 the font, you should
1257 One place to start for a new font is to see if the scalable font
1258 \begin_inset Quotes eld
1262 \begin_inset Quotes erd
1266 Tip: You can see whether a font is a bitmap font or a scalable font by
1268 \begin_inset Quotes eld
1272 \begin_inset Quotes erd
1276 \begin_inset Quotes eld
1280 \begin_inset Quotes erd
1288 If the value 0 is available, the font is scalable.
1289 If the value 0 isn't available, the font is a bitmap font.
1292 \begin_layout Standard
1293 Before you go about scrapping a bitmap font because the larger sizes look
1295 \begin_inset Quotes eld
1299 \begin_inset Quotes erd
1302 , you should toggle the
1303 \begin_inset Quotes eld
1307 \begin_inset Quotes erd
1311 This is only useful if you use bitmap fonts, because only these don't scale
1313 If you define this flag, LyX will only use the fixed font sizes that are
1314 available, and this guarantees that all bitmap fonts look well.
1315 (You can see which individual font sizes are available with the
1324 .) However, the prize is that the difference between the size of the fonts
1325 on screen and the size of fonts on paper will be larger because LyX will
1326 have to be satisfied with the closest available size, and not try to scale
1328 Also, you can risk that some logically different sizes, such as
1336 , will be mapped to the same screen font, making it hard for you to see
1337 the difference on screen.
1338 We've decided not to use scalable fonts by default because of these artifacts,
1339 but since LyX is a WYSIWYM system, many people like to use the flag anyways,
1340 well-knowing that the font size on the screen can't be trusted.
1341 But remember that this flag only makes a difference when you use bitmap
1343 Scalable fonts won't be affected for reasons you should understand by now.
1346 \begin_layout Standard
1347 One final note regarding this flag: you should know that there is nothing
1348 wrong with using bitmap and scalable fonts at the same time for different
1350 For instance, it's common to use the scalable
1351 \begin_inset Quotes eld
1355 \begin_inset Quotes erd
1358 for the serif text together with a bitmap version of
1359 \begin_inset Quotes eld
1363 \begin_inset Quotes erd
1367 And you can safely select the
1368 \begin_inset Quotes eld
1372 \begin_inset Quotes erd
1375 button without worries: It will only apply to the Helvetica font.
1378 \begin_layout Standard
1379 Sometimes the artifacts introduced by use of the flag can be relieved by
1380 using the fine-detail screen font sizes which defines which point sizes
1381 the different logical font sizes correspond to.
1386 to see exactly what concrete fonts the logical sizes map to, and try adjusting
1387 the corresponding entries in the
1391 dialog until you've managed to hit the nail and get the fonts you want.
1392 This can be hard to do, because LyX uses the DPI setting and the font zoom
1393 settings to calculate which exact screen font size to ask the X server
1394 for, thus obfuscating the mapping.
1395 If you can't make it by trial-and-error, you can make the process more
1396 transparent if you set both the DPI setting and font zoom settings to 100---eve
1397 n when this is known to be wrong.
1398 This will of course make your scalable fonts look weird, so use with care.
1401 \begin_layout Subsection
1405 \begin_layout Standard
1406 By default, LyX will use fonts meant to write Western European text, including
1407 all kinds of English.
1408 This is defined through the so-called
1417 If you want to use LyX to write for instance Eastern European text, Cyrillic
1418 or any other language not covered by the ISO-8859-1 font encoding, you
1419 can define a different one with the encoding setting.
1420 This requires you to have special fonts installed.
1425 to see whether this is the case: check the
1426 \begin_inset Quotes eld
1430 \begin_inset Quotes erd
1434 \begin_inset Quotes eld
1438 \begin_inset Quotes erd
1441 fields for ISO-8859-X values different from ISO-8859-1, and search for
1442 one that contains the national characters of your language.
1443 If you find any, enter this encoding in the dialog.
1444 If not, go searching the Web for appropriate fonts.
1445 For the Qt frontend, it's recommended you use an iso646 font set.
1448 \begin_layout Standard
1449 When you've set LyX up to use a different font encoding, you should also
1450 consider changing the font used by dialog windows in LyX.
1457 dialog will not be understandable unless you tell LyX to use a different
1459 By default the menu font is set to
1461 -*-helvetica-medium-r
1463 , but often Helvetica is not available in the font encoding you need, so
1464 the dialog allows this to be changed.
1467 \begin_layout Standard
1468 As you can see, there are quite a few options that can be used to fine tune
1469 the look of your fonts.
1470 This should not scare you from fiddling with the settings, because after
1471 all, you will hopefully be using LyX for many hours in the future.
1472 And contrary to real WYSIWYG word processors where you are tied to using
1473 fonts that have to look good both on paper and on screen, LyX gives you
1474 the possibility of using fonts that are designed to look good on the screen
1475 while using a different set of fonts to look good on paper.
1478 \begin_layout Section
1480 \begin_inset LatexCommand label
1488 \begin_layout Standard
1489 Bindings are used to, well, bind a function to a key.
1490 Several prepackaged binding files are available: a CUA set of bindings
1491 (familiar as the typical set of PC and CDE set of keyboard shortcuts),
1492 an Emacs set of bindings, for those of us who follow the One True Way and
1493 refuse to lower our standards,
1497 \begin_layout Standard
1498 I'm kidding here, of course!
1503 as well as specialty bindings (broadway and hollywood) and other languages
1504 (French, German, etc.).
1507 \begin_layout Standard
1508 If, however, you'd like to customise the keybindings to your own exacting
1509 tastes, then copy the best-fit file in
1518 Don't forget to load this new file into LyX using the
1523 (For the moment you'll have to restart LyX for these changes to take effect.)
1526 \begin_layout Standard
1527 LyX supports internationalization of the user interface (see Chapter\InsetSpace ~
1529 \begin_inset LatexCommand ref
1530 reference "chap:i18n"
1539 is set, with the environment variable
1543 , LyX will try to use bindfiles by prepending
1548 For example, you can put a translated copy of some standard bind file in
1553 directory, and LyX will use it automatically.
1556 \begin_layout Standard
1561 files is straightforward:
1564 \begin_layout Standard
1569 bind <key combination> <lyx-function>
1572 \begin_layout Standard
1573 Both key combination and lyx-function (including any arguments) must be
1574 enclosed in "double quotes".
1575 All the LyX functions are listed in the
1582 \begin_layout Section
1584 \begin_inset LatexCommand label
1592 \begin_layout Standard
1593 The appearance of both the menu and toolbar may both be changed using the
1608 For the moment, only one file exists,
1612 , but feel free to experiment.
1613 Just copy the file to the
1617 directory and play! Note that, for the moment, you'll have to restart LyX
1618 for these changes to take effect.
1621 \begin_layout Standard
1626 files is straightforward: have a look at
1639 entries must be ended with an explicit
1664 s and in the case of the
1665 \begin_inset Quotes eld
1669 \begin_inset Quotes erd
1677 One small word of warning.
1682 s may be inserted in a
1690 , but they are defined as
1701 \begin_layout Section
1702 \begin_inset LatexCommand label
1703 name "sec:converters-etc"
1707 Converters, Formats, and Copiers
1710 \begin_layout Standard
1711 LyX has a powerful mechanism to convert to and from any file format using
1716 \begin_layout Subsection
1720 \begin_layout Standard
1721 The first step is to define your file formats, e.g.
1722 PDF, if they are not already defined.
1728 ools\SpecialChar \menuseparator
1733 references:Converters
1736 Enter a new format name; a new GUI name (used in, e.g., the View and Export
1737 menus); and a file extension.
1742 \begin_layout Standard
1743 There are also two flags that can be set using the checkboxes in the dialog.
1748 flag tells LyX that a format is suitable for document export.
1749 If this flag is set for a format, and if a suitable conversion route exists,
1750 then the format will appear in the
1755 ile\SpecialChar \menuseparator
1763 The format will also appear in the
1770 menu if it has a viewer associated with it.
1771 (See below.) Pure image formats (e.g.\InsetSpace ~
1776 ) should not have this flag set; formats that can both represent vector
1777 graphics and documents (e.g.\InsetSpace ~
1782 ) should have it set.
1785 \begin_layout Standard
1790 flag tells LyX whether a format can contain vector graphics.
1791 This information is used to determine the target format of included graphics
1797 Included graphics may need to be converted to either
1813 cannot handle other image formats.
1814 If an included graphic is not already in
1826 format, it is converted to
1834 flag of the format is set, and otherwise to
1841 \begin_layout Standard
1842 A Format can have a Viewer associated with it.
1843 For example, you might want to use
1847 to look at PostScript® files, or
1851 to preview the LaTeX output.
1852 You can enter the program to use as a viewer (and what options to pass
1853 to it) in the Viewer field.
1854 You can also modify the viewer associated with a pre-defined format simply
1855 by changing what you find in this field, clicking the
1859 button, and then (if you're sure you want to do this) clicking the
1871 \begin_layout Standard
1872 Changes to the formats are kept in the
1876 file in you local LyX directory (for example,
1881 If you want to restore the defaults, edit this file and delete the lines
1882 in the Formats and Converters sections.
1887 For example, to change the
1895 format in the dialog, change the viewer to be
1899 (or whatever), and hit
1909 \begin_layout Standard
1910 If the operating system has a default viewer associated to a format, this
1911 viewer is used instead of the one defined here in the Windows® and OS X
1913 (It is planned to implement this feature on other platforms.)
1916 \begin_layout Standard
1917 Editors are like viewers: Each Format can have an Editor associated to it,
1918 entered in the Editor field, and the editor associated with a format can
1924 ools\SpecialChar \menuseparator
1929 references:Converters
1932 LyX will launch the associated editor whenever an included file
1936 \begin_layout Standard
1937 This can be an included
1941 file, a verbatim included text file, external material or an included graphics
1950 \begin_layout Subsection
1954 \begin_layout Standard
1955 Each Format can have a Copier associated with it.
1956 These are defined in the
1961 ools\SpecialChar \menuseparator
1969 Since all conversions from one Format to another take place in LyX's temporary
1970 directory, it is sometimes necessary to modify a file before copying it
1971 to the temporary directory in order that the conversion may be performed.
1975 \begin_layout Standard
1976 For example, the file may refer to other files---images, for example---using
1977 relative filenames, and these may become invalid when the file is copied
1978 to the temporary directory.
1983 This is done by the Copier: It copies a file to (or from) the temporary
1984 directory and may modify it in the process.
1988 \begin_layout Standard
1989 Copiers may also be used for other purposes.
1990 For example, if appropriate converters are found, LyX will automatically
1991 install copiers for the html and wordhtml formats.
1992 When these formats are exported, the copier sees to it that not just the
1993 main HTML file but various associated files (style files, images, and the
1994 like) are also copied, and all these files are written to a subdirectory
1995 of the directory in which the original LyX file was found.
1996 The copier may of course be customized.
1997 The optional -e argument takes a comma-separated list of extensions to
1998 be copied; if it is omitted, all files will be copied.
1999 The -t argument determines the extension added to the generated directory.
2001 \begin_inset Quotes eld
2005 \begin_inset Quotes erd
2008 , so HTML generated from
2010 /path/to/filename.lyx
2014 /path/to/filename.html.LyXconv
2020 \begin_layout Standard
2021 The definitions of the copiers may use four variables:
2025 \labelwidthstring 00.00.0000
2026 $$s The LyX system directory (e.g.,
2034 \labelwidthstring 00.00.0000
2039 \labelwidthstring 00.00.0000
2044 \labelwidthstring 00.00.0000
2045 $$l The `LaTeX name'
2048 \begin_layout Standard
2049 The latter is to be given in a form suitable for inclusion in a LaTeX
2055 command and is relevant only when exporting files suitable for such inclusion.
2058 \begin_layout Subsection
2062 \begin_layout Standard
2063 To define a converter from one format to another---e.g., LaTeX to PDF---select
2064 the Converters panel.
2065 Choose the `From' and `To' formats, and then enter the program to be used
2066 in the conversion in the Converter field.
2070 \begin_layout Standard
2071 You do not have to define converters between all the Formats between which
2072 you want to convert.
2073 For example, you will note that there is no `LyX to PostScript®' converter,
2074 but LyX will export PostScript®.
2075 It does so by first creating a LaTeX file (no converter needs to be defined
2076 for this) which it then converts to DVI using the `LaTeX to DVI' converter,
2077 and then it converts the resulting DVI file to PostScript®.
2078 LyX finds such `chains' of converters automatically, and it will always
2079 choose the shortest chain possible.
2080 You can, though, still define multiple conversion methods between file
2082 For example, the standard LyX configuration provides three ways to convert
2083 LaTeX to PDF: Directly, using pdflatex; via (DVI and) PostScript®, using
2084 ps2pdf; or via DVI, using dvipdfm.
2085 To define such alternate chains, you must define multiple target `file
2087 In the standard configuration, for example, formats named `pdf', `pdf2',
2088 and `pdf3' are defined, all of which share the extension `pdf'.
2092 \begin_layout Standard
2093 Several variables can be used in the definition of converters:
2097 \labelwidthstring 00.00.0000
2098 $$s The LyX system directory (e.g.,
2106 \labelwidthstring 00.00.0000
2111 \labelwidthstring 00.00.0000
2116 \labelwidthstring 00.00.0000
2117 $$b The base filename of the input file
2121 \labelwidthstring 00.00.0000
2122 $$p The path to the input file
2125 \begin_layout Standard
2126 In the `Extra Flag' field you can enter as many of the following flags as
2127 you wish, separated by commas:
2131 \labelwidthstring 00.00.0000
2132 latex This converter runs some form of LaTeX.
2133 (This will make LyX's LaTeX error logs available.)
2137 \labelwidthstring 00.00.0000
2138 needaux Needs the LaTeX .aux file for the conversion.
2142 \labelwidthstring 00.00.0000
2146 \begin_layout Standard
2147 The following three variables are not really flags at all but take an argument
2157 \labelwidthstring 00.00.0000
2158 parselog If set, the converter's standard error will be redirected to a
2163 , and the script given as argument will be run as:
2165 script <infile.out >infile.log
2168 The argument may contain $$s.
2172 \labelwidthstring 00.00.0000
2173 resultdir The name of the directory in which the
2177 will dump the generated files.
2178 LyX will not create this directory, and it does not copy anything into
2179 it, though it will copy this directory to the destination.
2180 The argument may contain $$b, which will be replaced by the basename of
2181 the input and output files, respectively, when the directory is copied.
2184 that resultdir and usetempdir make no sense together.
2185 The latter will be ignored if the former is given.
2189 \labelwidthstring 00.00.0000
2190 resultfile Determines the output filename and may, again, contain $$b.
2191 Sensible only with resultdir, and optional even then; if not given, it
2192 defaults to `index'.
2196 \begin_layout Standard
2197 None of these last three are presently used in any of the converters that
2198 are installed with LyX.
2200 \begin_inset LatexCommand ref
2201 reference "sub:LyX-and-Literate"
2205 of the Extended Features guide for some examples of how you might use parselog.
2208 \begin_layout Section
2209 BibTeX and makeindex
2212 \begin_layout Standard
2213 Both the bibliography generating command (default
2217 ) and the index generating command (default
2230 As an alternative for
2242 \begin_layout Standard
2243 The command to enter is
2249 makeindex.sh -m $$lang
2252 \begin_layout Standard
2253 where the placeholder
2257 will be replaced by the chosen document (babel) language.
2261 \begin_layout Standard
2262 have installed the packages
2279 at a shell prompt for a help page.
2282 \begin_layout Section
2283 Plain text export options
2286 \begin_layout Standard
2287 \begin_inset VSpace bigskip
2293 \begin_layout Standard
2295 There are a couple of commands that can be used to
2296 \begin_inset Quotes eld
2300 \begin_inset Quotes erd
2303 exported plain text files.
2304 Note that LyX automatically detects and uses the best settings for your
2305 system at installation time, but you can modify them if you disagree with
2309 \begin_layout Description
2313 Plain text\InsetSpace ~
2317 This option defines the command used to produce better plain text tables
2322 UNIX-commands (refer to their manpages for more information about them).
2323 Setting this as empty tells LyX to use the internal (inferior) formatter.
2326 \begin_layout Description
2330 Plain text\InsetSpace ~
2335 With this command you can set the default line length of the plain text
2337 Setting it to 0 means endless lines.
2340 \begin_layout Section
2344 \begin_layout Standard
2345 There are a bunch of configuration options that are used for interaction
2346 with the external print command from LyX.
2347 Normally the defaults are fine: if, however, your print command takes different
2348 option names, you can modify them here.
2351 \begin_layout Subsection
2355 \begin_layout Standard
2356 You can change the colors used by LyX on-screen using the new
2361 Alternatively, if you're feeling particularly perverse you could use the
2366 bindable function (see the
2371 Input would have the format:
2374 \begin_layout Standard
2377 set-color LyXName X11Color
2380 \begin_layout Standard
2381 Here is a (partial) list of the functions and default colors:
2384 \begin_layout Standard
2386 \begin_inset Tabular
2387 <lyxtabular version="3" rows="10" columns="3">
2389 <column alignment="left" valignment="top" leftline="true" width="0pt">
2390 <column alignment="left" valignment="top" leftline="true" width="0pt">
2391 <column alignment="center" valignment="top" leftline="true" rightline="true" width="0pt">
2392 <row topline="true" bottomline="true">
2393 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2396 \begin_layout Standard
2411 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2414 \begin_layout Standard
2429 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2432 \begin_layout Standard
2448 <row topline="true">
2449 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2452 \begin_layout Standard
2467 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2470 \begin_layout Standard
2485 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2488 \begin_layout Standard
2504 <row topline="true">
2505 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2508 \begin_layout Standard
2523 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2526 \begin_layout Standard
2541 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2544 \begin_layout Standard
2560 <row topline="true">
2561 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2564 \begin_layout Standard
2579 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2582 \begin_layout Standard
2597 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2600 \begin_layout Standard
2616 <row topline="true">
2617 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2620 \begin_layout Standard
2635 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2638 \begin_layout Standard
2653 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2656 \begin_layout Standard
2672 <row topline="true">
2673 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2676 \begin_layout Standard
2691 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2694 \begin_layout Standard
2704 fraction Lines, brackets, etc.
2709 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2712 \begin_layout Standard
2728 <row topline="true">
2729 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2732 \begin_layout Standard
2747 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2750 \begin_layout Standard
2756 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2759 \begin_layout Standard
2775 <row topline="true">
2776 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2779 \begin_layout Standard
2794 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2797 \begin_layout Standard
2803 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2806 \begin_layout Standard
2822 <row topline="true">
2823 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2826 \begin_layout Standard
2841 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2844 \begin_layout Standard
2850 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2853 \begin_layout Standard
2869 <row topline="true" bottomline="true">
2870 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2873 \begin_layout Standard
2888 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2891 \begin_layout Standard
2901 selection background
2906 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2909 \begin_layout Standard
2932 \begin_layout Section
2933 The autodetected settings
2936 \begin_layout Standard
2937 \begin_inset LatexCommand label
2938 name "sec:autodetected"
2942 There are several items that are detected for you when you run
2949 \SpecialChar \menuseparator
2955 In this section, we list those which pertain to the user preferences.
2958 \begin_layout Description
2964 plaintext_roff_command
2979 , depending on what is available.
2982 \begin_layout Description
2995 plus a bunch of options.
2998 \begin_layout Description
3011 on systems (so-called System V) who have this command, and
3015 otherwise (BSD systems).
3018 \begin_layout Description
3024 print_spool_printerprefix
3035 , depending on whether
3046 \begin_layout Description
3063 fonts are found and LaTeX has support for these fonts built-in.
3064 You can set it manually if you only have the so-called
3071 \begin_layout Section
3075 \begin_layout Standard
3076 There are many other configuration options that can be used to customize
3078 We still need to document them here, but again, most should be fairly obvious.
3079 Please ask on the mailing lists if you need some more information; it may
3080 even prompt us to expand this section.
3083 \begin_layout Chapter
3084 Internationalizing LyX
3085 \begin_inset LatexCommand label
3093 \begin_layout Standard
3094 LyX supports using a translated interface.
3095 Last time we checked, LyX provided text in 14 languages together with the
3096 default English text.
3097 The language of choice is called your
3102 (For further reading on locale settings, see also the documentation for
3103 locale that comes with your operating system.
3104 For Linux, the manual page for locale(5) could be a good place to start).
3107 \begin_layout Standard
3108 Notice that these translations will work, but do contain a few flaws.
3109 In particular, all dialogs have been designed with the English text in
3110 mind, which means that some of the translated text will be too large to
3111 fit within the space allocated.
3112 This is only a display problem and will not cause any harm.
3113 Also, you will find that some of the translations do not define short-cut
3114 keys for everything.
3115 Sometimes, there are simply not enough free letters to do it.
3116 Other times, the translator just hasn't got around to doing it yet.
3117 Our localization team -- which you may wish to join -- will try to fix
3118 these shortcomings in future versions of LyX.
3121 \begin_layout Section
3122 Selecting an alternative language for the user interface
3125 \begin_layout Standard
3126 This feature is disabled by default, meaning that system default language
3128 To enable an alternative language, you have to set an appropriate environment
3136 for csh class shells
3151 with the two letter code (or four letter code, like
3155 for British English) for the language you want.
3161 Besides the user interface texts being translated, also the appropriate
3162 manuals will be presented under the Help menu -- if available.
3165 \begin_layout Standard
3166 On some systems, you may have to redefine
3178 , to override the system settings; their preference is in this order
3182 \begin_layout Standard
3183 The shell variable LANGUAGE has been disabled in LyX for technical reasons.
3189 , which corresponds to the way GNU
3194 Consult your system documentation.
3195 Normally, you'll want to put the appropriate line in a shell script run
3196 on start-up, so that the translation is on by default.
3197 Remember that this affects
3201 localized packages, not only LyX!
3204 \begin_layout Standard
3205 If LyX is configured and compiled with
3206 \begin_inset Quotes eld
3214 \begin_inset Quotes erd
3217 , this mechanism will not work.
3220 \begin_layout Section
3224 \begin_layout Subsection
3225 Translating the graphical user interface (text messages).
3228 \begin_layout Standard
3233 library to handle the internationalization of the interface.
3234 To have LyX speak your favorite language in all menus and dialogs, you
3239 -file for that language.
3240 When this is available, you'll have to generate a mo-file from it and install
3246 The process of doing all of this is explained in the documentation for
3251 , but in short, this is what you do (
3255 denotes the language code):
3258 \begin_layout Standard
3262 \begin_layout Standard
3274 \begin_layout Itemize
3277 LYX-SOURCE-DIR/po/lyx.pot
3290 doesn't exist, it can be remade with
3294 in that directory, or you can use an existing po-file for some other language
3298 \begin_layout Itemize
3305 \begin_layout Standard
3306 We recommend that you use Emacs to do this, since the
3310 distribution includes a nice mode that supports you in doing this.
3318 For some menu- and widget-labels, there are also shortcut keys that should
3320 Those keys are marked after a `|', and should be translated according to
3321 the words and phrases of the
3326 There is a tool named
3330 written in Prolog in
3332 LYX-SOURCE-DIR/development/tools/
3334 that may be useful to help determine short-cut keys.
3335 Note that XForms (version 0.86 at least) can't handle anything but 7-bit
3336 characters as shortcut keys.
3337 You should also fill also out the information at the beginning of the new
3342 -file with your email-address, etc., so people know where to reach you with
3343 suggestions and entertaining flames.
3346 \begin_layout Itemize
3355 This can be done with
3376 \begin_layout Itemize
3381 -file to your locale-tree, at the correct directory for application messages
3386 , and under the name
3395 /usr/local/share/locale/
3406 \begin_layout Standard
3410 \begin_layout Standard
3422 \begin_layout Standard
3423 Adding a new po-file to the
3427 of LyX involves altering the configure scripts and more, but the way
3431 works, you don't actually need the source-code of LyX to translate it---having
3447 \begin_layout Standard
3448 If you've written a translation file for a language that LyX does not currently
3449 support, feel free to submit it for inclusion by sending a patch.
3450 In this case, we recommend that you read the
3458 directory for more instructions.
3461 \begin_layout Subsubsection
3465 \begin_layout Standard
3466 Sometimes it turns out that one english message needs to be translated into
3467 different messages in the target language.
3468 One example is the message
3472 which has the german translation
3489 does not handle such ambigous translations.
3490 Therefore you have to add some context information to the message: Instead
3497 To[[as in 'From format x to format y']]
3501 To[[as in 'From page x to page y']].
3504 Now the two occurences of
3512 and can be translated correctly to
3527 \begin_layout Standard
3528 Of course the context information needs to be stripped off the original
3529 message when no translation is used.
3530 Therefore you have to put it in double square brackets at the end of the
3531 message (see the example above).
3532 The translation mechanism of LyX ensures that everything in double square
3533 brackets at the end of messages is removed before displaying the message.
3536 \begin_layout Subsection
3537 Translating the documentation.
3540 \begin_layout Standard
3541 The online documentation (in the
3548 -menu) can (and should!) be translated.
3549 If there are translated versions of the documentation available
3553 \begin_layout Standard
3554 As of February 2003, almost all of the docs have been translated into German
3560 has been translated into at least 12 other languages, with other translations
3562 The library of translated documents is growing rapidly.
3567 , and the locale is set accordingly, these will be used automagically by
3569 LyX looks for translated versions as
3583 denotes the language as set by the environmental variable
3588 If there are none, the default English versions will be displayed.
3589 Note that the translated versions must have the same filenames (
3593 above) as the original.
3594 If you feel up to translating the documentation (an excellent way to proof-read
3595 the original documentation BTW!), there are a few things you should do
3599 \begin_layout Itemize
3604 , the guide to writing LyX documentation.
3605 Pay special attention to the translator's section.
3608 \begin_layout Itemize
3609 Check out the documentation translation web page at
3610 \begin_inset LatexCommand url
3611 name "The LyX Developer's Web Site"
3612 target "http://www.devel.lyx.org"
3617 That way, you can find out which (if any) documents have already been translate
3618 d into your language.
3619 You can also find out who (if anyone) is organizing the effort to translate
3620 the documentation into your language.
3621 If no one is organizing the effort, please let us know that you're interested.
3624 \begin_layout Standard
3625 Once you get to actually translating, here's a few hints for you that may
3629 \begin_layout Itemize
3630 Join the documentation team! There is information on how to do that in
3639 elp\SpecialChar \menuseparator
3646 ), which by the way is the first document you should translate.
3649 \begin_layout Itemize
3650 Learn the typographic conventions for the language you are translating to.
3651 Typography is an ancient art and over the centuries, a great variety of
3652 conventions have developed throughout different parts of the world.
3653 Also study the professional terminology amongst typographers in your country.
3654 Inventing your own terminology will only confuse the users.
3657 (Warning! Typography is addictive!)
3660 \begin_layout Itemize
3661 Make a copy of the document.
3662 This will be your working copy.
3663 You can use this as your personal translated help-file by placing it in
3671 \begin_layout Itemize
3672 Sometimes the original document (from the LyX-team) will be updated.
3673 Use the ViewCVS tool available at
3674 \begin_inset LatexCommand htmlurl
3675 target "http://www.lyx.org/viewcvs.cgi/lyxdoc/"
3679 to see what has been changed
3683 \begin_layout Standard
3684 Alternatively, you can keep a copy of the latest version of the English
3685 document which you've translated.
3691 That way you can easily see which parts of the translated document need
3695 \begin_layout Itemize
3696 If you ever find an error in the original document, fix it and notify the
3697 rest of the documentation team of the changes! (You didn't forget to join
3698 the documentation team did you?)
3701 \begin_layout Section
3702 International Keyboard Support
3705 \begin_layout Standard
3708 [Editor's Note: The following section is by
3716 It needs to be fixed to conform to the new Documentation Style sheet and
3717 to make use of the new v1.0 features.
3718 The whole thing also needs to be merged with the section following it.-jw]
3721 \begin_layout Subsection
3722 Defining Own Keymaps: Keymap File Format
3725 \begin_layout Standard
3726 Let's look at a keyboard definition file a little closer.
3727 It is a plain text file defining
3730 \begin_layout Itemize
3731 key-to-key or key-to-string translations
3734 \begin_layout Itemize
3738 \begin_layout Itemize
3739 dead keys exceptions
3742 \begin_layout Standard
3743 To define key-to-key or key-to-string translation, use this command:
3746 \begin_layout Quotation
3762 \begin_layout Standard
3767 is the key to be translated and
3771 is the string to be inserted into the document.
3772 To define dead keys, use:
3775 \begin_layout Quotation
3791 \begin_layout Standard
3801 The following dead keys are supported (shortcut name is in parentheses):
3804 \begin_layout Quotation
3812 \begin_layout Quotation
3818 \begin_layout Quotation
3824 \begin_layout Quotation
3830 \begin_layout Quotation
3836 \begin_layout Quotation
3843 \begin_layout Standard
3855 \begin_layout Quotation
3861 \begin_layout Quotation
3868 \begin_layout Standard
3880 \begin_layout Quotation
3886 \begin_layout Quotation
3892 \begin_layout Quotation
3899 \begin_layout Standard
3911 \begin_layout Quotation
3918 \begin_layout Standard
3930 \begin_layout Quotation
3936 \begin_layout Quotation
3937 hungarian umlaut (hug)
3942 \begin_layout Quotation
3948 \begin_layout Quotation
3955 \begin_layout Standard
3967 \begin_layout Standard
3968 Since in many international keyboards there are exceptions to what some
3969 dead keys should do, you can define them using
3972 \begin_layout Quotation
3981 deadkey key outstring
3984 \begin_layout Standard
3985 For example, on Slovak keyboard, if you enter caron-o, it generates circumflex-o
3989 \begin_layout Quotation
4003 \begin_layout Standard
4004 to make it work correctly.
4005 Also, you have to define as exceptions dead keys over i and j, to remove
4006 the dot from them before inserting an accent mark.
4007 I will change this when the time comes, but so far I haven't had time.
4010 \begin_layout Standard
4011 Oh, and about characters: backslash is escaped, so to enter it, you'll need
4017 have different meaning.
4022 marks comments, quotes start and end LaTeX-style commands.
4023 To enter quote, you'll need to use
4042 \begin_layout Standard
4043 If you make a keyboard description file that works for your language, please
4044 mail it to me, so I can include it in the next keymap distribution.
4047 \begin_layout Standard
4048 More keywords will be supported in keymap configuration file in future,
4052 \begin_layout Itemize
4070 \begin_layout Itemize
4085 an external keymap translation program
4088 \begin_layout Standard
4089 Also, it should look into
4093 file for defaults, too (for example, a
4099 option to include default keyboard).
4102 \begin_layout Section
4103 International Keymap Stuff
4104 \begin_inset LatexCommand label
4112 \begin_layout Standard
4113 The next two sections describe the
4125 file syntax in detail.
4126 These sections should help you design your own key map if the ones provided
4127 do not meet your needs.
4130 \begin_layout Subsection
4134 \begin_layout Standard
4143 file maps keystrokes to characters or strings.
4144 As the name suggests it sets a keyboard mapping.
4169 are described in this section.
4173 \labelwidthstring 00.00.0000
4180 Map a character to a string
4183 \begin_layout LyX-Code
4198 \begin_layout Standard
4231 the double-quote (")
4248 must be escaped with a preceding backslash (
4259 \begin_layout Standard
4266 statement to cause the symbol
4272 to be output for the keystroke
4281 \begin_layout LyX-Code
4288 \labelwidthstring 00.00.0000
4295 Specify an accent character
4298 \begin_layout LyX-Code
4307 \begin_layout Standard
4308 This will make the cha
4346 This is the dead key
4350 \begin_layout Standard
4357 refers to a key that does not produce a character by itself, but when followed
4358 with another key, produces the desired accent character.
4359 For example, a German characte
4361 r with an umlaut like
4371 can be produced in this manner.
4380 \begin_layout Standard
4393 and then another key not in
4410 followed by the other, unallowed key, as output.
4419 cancels a dead key, so if
4436 , the cursor will not go one position backwards but will instead cancel
4453 might have had on the next keystroke.
4457 \begin_layout Standard
4458 The following example specifies that the character ' is to be an acute accent,
4459 allowed on the characters a, e, i, o, u, A, E, I, O, and U:
4462 \begin_layout LyX-Code
4465 kmod ' acute aeiouAEIOU
4469 \labelwidthstring 00.00.0000
4474 Specify an exception to the accent character
4477 \begin_layout LyX-Code
4486 \begin_layout Standard
4487 This defines an exce
4528 have been assigned a keystroke with a previous
4551 must not belong in the
4603 If such a declaration does not exist in
4659 \begin_layout Standard
4660 The following command produces causes äi to be produced when you enter acute-i
4664 \begin_layout LyX-Code
4679 \labelwidthstring 00.00.0000
4684 Combine two accent characters
4687 \begin_layout LyX-Code
4693 accent1 accent2 allowed
4696 \begin_layout Standard
4697 This one is getting pretty esoteric.
4698 It allows you to combine the effect
4779 \begin_layout Standard
4780 Consider this example from the
4789 \begin_layout LyX-Code
4792 kmod ; acute aeioyvhAEIOYVH
4796 kcomb acute umlaut iyIY
4799 \begin_layout Standard
4800 This allows you to press
4806 and get the effect of
4823 in this case cancels the last dead key, so if you press
4840 \begin_layout Subsection
4844 \begin_layout Standard
4851 mapping is performed, a
4858 file maps the strings that the symbols generate to characters in the current
4860 The LyX distribution currently includes at least the
4875 \begin_layout Standard
4882 file is a sequence of declarations of the form
4885 \begin_layout LyX-Code
4898 \begin_layout Standard
4899 For example, in order to map
4907 to the corresponding character in the iso-8859-1 set (233), the following
4911 \begin_layout LyX-Code
4919 \begin_layout Standard
4942 the same character can apply to more than one string.
4953 \begin_layout LyX-Code
4979 \begin_layout Standard
4980 If LyX cannot find a mapping for the string produced by the keystroke or
4981 a deadkey sequence, it will check if it looks like an accented char and
4982 try to draw an accent over the character on screen.
4985 \begin_layout Subsection
4989 \begin_layout Standard
4990 There is a second way to add support for international characters through
4991 so-called dead-keys.
4992 A dead-key works in combination with a letter to produce an accented character.
4993 Here, we'll explain how to create a really simple dead-key to illustrate
4997 \begin_layout Standard
4998 Suppose you happen to need the circumflex character,
4999 \begin_inset Quotes eld
5003 \begin_inset Quotes erd
5011 -key [a.k.a.\InsetSpace ~
5016 ] to the LyX command
5025 Now, whenever you type the
5029 -key followed by a letter, that letter will have a circumflex accent on
5031 For example, the sequence
5032 \begin_inset Quotes eld
5040 \begin_inset Quotes erd
5043 produces the letter:
5044 \begin_inset Quotes eld
5048 \begin_inset Quotes erd
5052 If you tried to type
5053 \begin_inset Quotes eld
5061 \begin_inset Quotes erd
5064 , however, LyX will complain with a beep, since a
5065 \begin_inset Quotes eld
5073 \begin_inset Quotes erd
5076 never takes a circumflex accent.
5081 after a dead-key produces the bare-accent.
5082 Please note this last point! If you bind a key to a dead-key, you'll need
5083 to rebind the character on that key to yet another key.
5088 to a cedilla is a bad idea, since you'll only get cedillas instead of commas.
5091 \begin_layout Standard
5092 One common way to bind dead-keys is to use
5104 in combination with an accent, like
5105 \begin_inset Quotes eld
5113 \begin_inset Quotes erd
5117 \begin_inset Quotes eld
5125 \begin_inset Quotes erd
5129 \begin_inset Quotes eld
5137 \begin_inset Quotes erd
5141 Another way involves using
5149 [remember them from section?] to set up the special
5158 acts in some ways just like
5162 and permits you to bind keys to accented characters.
5163 You can also turn keys into dead-keys by binding them to something like
5168 and then binding this symbolic key to the corresponding LyX command.
5172 \begin_layout Standard
5177 : This is exactly what I do in my
5195 and a bunch of these
5196 \begin_inset Quotes eld
5204 \begin_inset Quotes erd
5207 symbolic keys bound such things as
5218 This is how I produce my accented characters.
5223 You can make just about anything into the
5231 keys, a spare function key, etc.
5232 As for the LyX commands that produce accents, check the entry for
5241 You'll find the complete list there.
5244 \begin_layout Subsection
5245 Saving your Language Configuration
5248 \begin_layout Standard
5249 \begin_inset LatexCommand label
5254 You can edit your preferences so that your desired language environment
5255 is automatically configured when LyX starts up, via the
5260 dit\SpecialChar \menuseparator
5270 \begin_layout Chapter
5271 Installing New Document Classes, Layouts, and Templates
5272 \begin_inset LatexCommand label
5273 name "chap:textclass"
5281 \begin_layout Standard
5282 Installing New Document Classes
5290 \begin_layout Standard
5291 In this chapter, we describe the procedures for creating and installing
5292 new LyX layout and template files, as well as offer a refresher on correctly
5293 installing new LaTeX document classes.
5294 Some definitions: a document class is a LaTeX file (usually ending in
5302 ) which describes the format of a document such as an article, report, journal
5304 and all the commands needed to realize that format.
5305 A layout file is a LyX file which corresponds to a LaTeX document class
5306 and which tells LyX how to
5307 \begin_inset Quotes eld
5311 \begin_inset Quotes erd
5314 things on the screen to make the display look something like the final
5316 More precisely, a layout file describes a
5317 \begin_inset Quotes eld
5321 \begin_inset Quotes erd
5324 which is the internal construct LyX uses to render the screen display.
5326 \begin_inset Quotes eld
5330 \begin_inset Quotes erd
5334 \begin_inset Quotes eld
5338 \begin_inset Quotes erd
5341 can be used somewhat interchangeably, but it is better to refer to the
5342 file as the layout, and the thing living in LyX's memory as the text class.
5343 A template file is simply a LyX document which contains a set of predefined
5344 entries for a given document class which are generally required for that
5346 Templates are especially useful for things like journal manuscripts which
5347 are to be submitted electronically.
5350 \begin_layout Section
5351 Installing a new LaTeX package
5354 \begin_layout Standard
5355 Some installations may not include a LaTeX package that you would like to
5357 For example, you might need FoilTeX, a common (and very powerful) package
5358 for preparing slides or viewgraphs for overhead projectors.
5359 Here are the formal steps involved in getting the package up and running
5360 if you are using teTeX or some other web2c based distribution.
5364 \begin_layout Enumerate
5365 Get the package from CTAN or wherever.
5369 \begin_layout Standard
5372 Inventory of your LaTeX configuration
5374 manual for details of what CTAN is and where supported document classes
5383 \begin_layout Enumerate
5388 (this usually lives in the directory
5392 , though you can run
5397 It describes how to add a local
5401 directory; follow the instructions.
5402 You need to insert the name of your local
5415 is a logical place to install software that did not come with your distribution
5421 Usually, you will have to modify only two things:
5425 \begin_layout Enumerate
5430 to the directory you chose; e.g.
5435 TEXMFLOCAL = /usr/local/texmf
5438 \begin_layout Enumerate
5452 TEXMF = {$HOMETEXMF,!!$TEXMFLOCAL,!!$TEXMFMAIN}
5456 \begin_layout Enumerate
5467 You must follow the directory structure of your existing
5471 directory (for example, latex packages should go under
5473 /usr/local/texmf/tex/latex/
5478 \begin_layout Enumerate
5479 Install the package.
5480 For example, you would unpack the FoilTeX tarball and create
5482 /usr/local/texmf/tex/latex/foiltex
5489 directory contains various files.
5492 \begin_layout Enumerate
5500 /usr/local/texmf/ls-R
5505 \begin_layout Enumerate
5506 From within LyX, do:
5511 ools\SpecialChar \menuseparator
5522 \begin_layout Standard
5523 Now you should see your new package---for example
5532 ayout\SpecialChar \menuseparator
5547 Note that there are simpler ways of installing packages: you can add a
5548 link to the new package directory in the system LaTeX directory (
5552 , don't forget to then run
5556 ), or sometimes simply set the
5560 environment variable to include the new package.
5561 However, the formal procedure described in
5565 is guaranteed to work, so you should follow it unless circumstances absolutely
5566 prevent it: such as, when you don't have superuser access.
5569 \begin_layout Section
5573 \begin_layout Standard
5574 This section describes how to write and install your own LyX layout files
5575 (also known as text classes) and walks through the
5579 text class format as an example.
5584 files describe what paragraph styles are available for a given document
5585 class and how LyX should display them.
5586 We try to provide a thorough description of the process here; however,
5587 there are so many different types of documents supported by LaTeX classes
5588 we can't hope to cover every different possibility or problem you might
5593 \begin_layout Standard
5594 When you plan to write a new layout, it is extremely helpful to look at
5595 the example layouts distributed with LyX.
5596 If you use a nice LaTeX document class that might be of interest for others,
5597 too, and have a nice corresponding LyX layout, feel free to contribute
5598 the stuff to us, so we may put it into the distribution.
5601 \begin_layout Standard
5602 All the tags described in this chapter are case-insensitive; this means
5615 are really the same command.
5616 The possible values are printed in brackets after the feature's name.
5617 The default value if a feature isn't specified inside a text class-description
5625 If the argument has a datatype like
5626 \begin_inset Quotes eld
5630 \begin_inset Quotes erd
5634 \begin_inset Quotes eld
5638 \begin_inset Quotes erd
5641 , the default is shown like this:
5651 \begin_layout Subsection
5652 Supporting new document classes
5655 \begin_layout Standard
5656 There are two situations you are likely to encounter when wanting to support
5657 a new LaTeX document class, involving LaTeX2e class (
5668 \begin_layout Subsection
5676 \begin_layout Standard
5677 If your new document class is provided as a style file that is used in conjuncti
5678 on with an existing, supported document class, start by copying the existing
5679 class's layout file into your local directory.
5680 For the sake of example we'll assume that the style file is called
5684 and it is meant to be used with
5688 which is a standard class.
5691 \begin_layout LyX-Code
5692 cp report.layout ~/.lyx/layouts/myclass.layout
5695 \begin_layout Standard
5700 and change the line:
5703 \begin_layout LyX-Code
5706 DeclareLaTeXClass{report}
5709 \begin_layout Standard
5713 \begin_layout LyX-Code
5716 DeclareLaTeXClass[report, myclass.sty]{report (myclass)}
5719 \begin_layout Standard
5723 \begin_layout LyX-Code
5733 \begin_layout Standard
5734 near the top of the file.
5737 \begin_layout Standard
5738 Start LyX and select
5743 ools\SpecialChar \menuseparator
5751 Restart LyX and try creating a new document.
5756 " as a document class option in the
5761 ocument\SpecialChar \menuseparator
5769 It is likely that some of the sectioning commands and such will differ
5770 from how the base class
5774 \begin_layout Standard
5784 works, so you can fiddle around with the settings for the different sections
5786 See below for more discussion on this.
5789 \begin_layout Subsection
5797 \begin_layout Standard
5798 In this case, you will probably have to
5799 \begin_inset Quotes eld
5803 \begin_inset Quotes erd
5807 We strongly suggest copying an existing layout file which uses a similar
5808 LaTeX class and modifying it if at all possible.
5809 At least use an existing file as a starting point so you can find out what
5810 items you need to worry about.
5811 Again, the specifics are covered below.
5814 \begin_layout Section
5815 Declaring a new text class
5818 \begin_layout Standard
5819 When it's finally time to get your hands dirty and create or edit your own
5820 layout file, the following sections describe what you're up against.
5821 Our advice is to go slowly, save and test often, listen to soothing music,
5822 and enjoy one or two of your favorite adult beverages; more if you are
5823 getting particularly stuck.
5824 It's really not that hard, except that the multitude of options can become
5825 overwhelming if you try to do to much in one sitting.
5826 Go have another adult beverage, just for good measure.
5829 \begin_layout Standard
5833 \begin_layout Standard
5834 Lines in a layout file which begin with a
5839 There is one exception to this rule: all layouts should begin with lines
5843 \begin_layout LyX-Code
5846 #% Do not delete the line below; configure depends on this
5849 \begin_layout LyX-Code
5854 DeclareLaTeXClass{article}
5857 \begin_layout Standard
5858 The second line is used when you configure LyX.
5859 The layout file is read by the LaTeX script
5863 , in a special mode where
5868 The first line is just a LaTeX comment, and the second one contains the
5869 declaration of the text class.
5870 If these lines appear in a file named
5874 , then they define a text class of name
5878 (the name of the layout file) which uses the LaTeX document class
5882 (the default is to use the same name as the layout).
5884 \begin_inset Quotes eld
5888 \begin_inset Quotes erd
5891 that appears above is used as a description of the text class in the
5896 ocument\SpecialChar \menuseparator
5906 \begin_layout Standard
5907 Let's assume that you wrote your own text class that uses the
5911 documentclass, but where you changed the appearance of the section headings.
5912 If you put it in a file
5916 , the header of this file should be:
5919 \begin_layout LyX-Code
5922 #% Do not delete the line below; configure depends on this
5925 \begin_layout LyX-Code
5930 DeclareLaTeXClass[article]{article (with my own headings)}
5933 \begin_layout Standard
5934 This declares a text class
5938 , associated with the LaTeX document class
5943 \begin_inset Quotes eld
5946 article (with my own headings)
5947 \begin_inset Quotes erd
5951 If your text class depends on several packages, you can declare it as:
5954 \begin_layout LyX-Code
5957 #% Do not delete the line below; configure depends on this
5960 \begin_layout LyX-Code
5965 DeclareLaTeXClass[article,foo.sty]{article (with my own headings)}
5968 \begin_layout Standard
5969 This indicates that your text class uses the foo.sty package.
5970 Finally, it is also possible to declare classes for SGML and DocBook code.
5971 Typical declarations will look like
5974 \begin_layout LyX-Code
5977 #% Do not delete the line below; configure depends on this
5980 \begin_layout LyX-Code
5985 DeclareSGMLClass{SGML (LinuxDoc)}
5988 \begin_layout Standard
5992 \begin_layout LyX-Code
5993 #% Do not delete the line below; configure depends on this
5996 \begin_layout LyX-Code
5999 DeclareDocBookClass[article]{SGML (DocBook article)}
6002 \begin_layout Standard
6003 Note that these declarations can also be given an optional parameter declaring
6004 the name of the document class (but not a list).
6007 \begin_layout Standard
6008 When the text class has been modified to your taste, all you have to do
6009 is to copy it either in
6022 ools\SpecialChar \menuseparator
6030 Exit LyX and restart it; then your new text class should be available along
6034 \begin_layout Subsection
6038 \begin_layout Standard
6039 The first non-comment line must contain the file format number:
6042 \begin_layout Description
6053 ] This tag was introduced with LyX 1.4.0 (layout files of LyX 1.3.x and earlier
6054 don't have an explicit file format).
6055 The file format that is documented here is
6062 \begin_layout Subsection
6063 General text class parameters
6066 \begin_layout Standard
6067 These are the general parameters which describe the form of the entire document:
6070 \begin_layout Standard
6074 \begin_layout Standard
6086 \begin_layout Description
6100 ] Whether the class-default should have one or two columns.
6101 Can be changed in the
6106 ocument\SpecialChar \menuseparator
6114 This setting (same goes for
6118 , too) is important: if your text class has two columns by default but you
6119 forget to set it correctly, the
6127 be output when you select
6136 ocument\SpecialChar \menuseparator
6144 \begin_layout Description
6158 ] Whether the class-default should be printing on one or both sides of the
6160 Can be changed in the
6165 ocument\SpecialChar \menuseparator
6175 \begin_layout Description
6189 ] The class default pagestyle.
6190 Can be changed in the
6195 ocument\SpecialChar \menuseparator
6205 \begin_layout Description
6209 ClassOptions\SpecialChar \ldots{}
6213 This section describes various global options supported by the document
6215 See Section\InsetSpace ~
6217 \begin_inset LatexCommand ref
6218 reference "sec:classoptions"
6225 \begin_layout Description
6243 ] Whether the class already provides the feature
6248 A feature is in general the name of a package (amsmath, makeidx, \SpecialChar \ldots{}
6250 macro (url, boldsymbol,\SpecialChar \ldots{}
6251 ); the complete list of supported features is unfortunat
6255 \begin_layout Description
6262 This is used to describe the default font of the document.
6263 See Section\InsetSpace ~
6265 \begin_inset LatexCommand ref
6266 reference "sec:fonts"
6273 \begin_layout Description
6284 ] This is the style that will be assigned to new paragraphs, usually
6289 This will default to the first defined style if not given, but you are
6290 highly encouraged to use this directive.
6293 \begin_layout Description
6310 ] Indicates what kind of markup is used to define the title of a document.
6315 means that the macro with name
6319 will be inserted after the last layout which has
6320 \begin_inset Quotes eld
6328 \begin_inset Quotes erd
6336 corresponds to the case where the block of paragraphs which have
6337 \begin_inset Quotes eld
6345 \begin_inset Quotes erd
6348 should be enclosed into the
6357 \begin_layout Description
6368 ] The name of the command/environment mentionned above.
6371 \begin_layout Description
6375 Preamble\SpecialChar \ldots{}
6379 A set of macro definitions that will be output at the beginning of the
6381 Use this for global definitions.
6384 \begin_layout Description
6391 As its name implies, this command allows you to include another layout
6392 definition file within yours to avoid duplicating commands.
6393 Common examples are the standard layout files, for example,
6397 , which contains most of the basic layouts.
6400 \begin_layout Description
6404 Style\SpecialChar \ldots{}
6408 This sequence defines a new style.
6409 If the style already exists, it will redefine some of its parameters instead.
6410 See Section\InsetSpace ~
6412 \begin_inset LatexCommand ref
6413 reference "sec:style"
6420 \begin_layout Description
6427 This command deletes an existing style.
6428 This is particularly useful when you want to suppress a style that has
6429 be defined in an input file.
6432 \begin_layout Description
6436 Float\SpecialChar \ldots{}
6440 This sequence defines a new float.
6441 See Section\InsetSpace ~
6443 \begin_inset LatexCommand ref
6444 reference "sec:floats"
6451 \begin_layout Description
6458 This command deletes an existing float.
6459 This is particularly useful when you want to suppress a float that has
6460 be defined in an input file.
6463 \begin_layout Description
6467 CharStyle\SpecialChar \ldots{}
6471 This section defines a new character style.
6472 See Section\InsetSpace ~
6474 \begin_inset LatexCommand ref
6475 reference "sec:charstyle"
6482 \begin_layout Description
6486 Counter\SpecialChar \ldots{}
6490 This sequence defines a new counter.
6491 See Section\InsetSpace ~
6493 \begin_inset LatexCommand ref
6494 reference "sec:counter"
6501 \begin_layout Standard
6505 \begin_layout Standard
6517 \begin_layout Subsection
6525 \begin_layout Standard
6526 \begin_inset LatexCommand label
6527 name "sec:classoptions"
6535 section can contain the following entries:
6538 \begin_layout Description
6549 ] The list of available font sizes for the document's main font, separated
6551 \begin_inset Quotes eld
6559 \begin_inset Quotes erd
6565 \begin_layout Description
6574 string="empty|plain|headings|fancy"
6576 ] The list of available page styles, separated by
6577 \begin_inset Quotes eld
6585 \begin_inset Quotes erd
6591 \begin_layout Description
6602 ] Some document class options, separated by a comma, that will be added
6603 to the optional part of the
6612 \begin_layout Subsection
6613 Specific Paragraph Layouts
6616 \begin_layout Standard
6617 \begin_inset LatexCommand label
6622 A paragraph layout description looks like this
6626 \begin_layout Standard
6627 Note that this will either define a new layout or modify an existing one.
6635 \begin_layout LyX-Code
6642 \begin_layout LyX-Code
6646 \begin_layout LyX-Code
6650 \begin_layout Standard
6651 where the following commands are allowed:
6654 \begin_layout Standard
6658 \begin_layout Standard
6670 \begin_layout Description
6681 This is used to copy all the features of an existing layout into the current
6686 \begin_layout Description
6698 , Command, Environment, Item_Environment,
6704 ] How the layout should be translated into LaTeX.
6709 means nothing special.
6722 {\SpecialChar \ldots{}
6737 }\SpecialChar \ldots{}
6761 is generated for each paragraph of this environment.
6774 is passed as an argument to the environment.
6779 can be defined in the
6784 ayout\SpecialChar \menuseparator
6798 is perhaps a bit misleading, since these rules apply to SGML classes, too.
6799 Visit the SGML class files for specific examples.
6802 \begin_layout Description
6813 If 1, marks the layout as being part of a title block (see also the
6824 \begin_layout Description
6831 The name of the corresponding LaTeX stuff.
6832 Either the environment or command name.
6835 \begin_layout Description
6842 The optional parameter for the corresponding
6849 This parameter cannot be changed from within LyX.
6852 \begin_layout Description
6863 ] The number of optional arguments that can be used with this layout.
6864 This is useful for things like section headings, and only makes sense with
6868 \begin_layout Description
6880 , Manual, Dynamic, First_Dynamic, Right_Address_Box
6884 The kind of margin that the layout has on the left side.
6889 just means a fixed margin.
6894 means that the left margin depends on the string entered in the
6899 dit\SpecialChar \menuseparator
6904 aragraph\InsetSpace ~
6908 This is used to typeset nice lists without tabulators.
6913 means that the margin depends on the size of the label.
6914 This is used for automatic enumerated headlines.
6915 It is obvious that the headline
6916 \begin_inset Quotes eld
6919 5.4.3.2.1 Very long headline
6920 \begin_inset Quotes erd
6923 must have a wider left margin (as wide as
6924 \begin_inset Quotes eld
6928 \begin_inset Quotes erd
6931 plus the space) than
6932 \begin_inset Quotes eld
6935 3.2 Very long headline
6936 \begin_inset Quotes erd
6939 , even if other word processors are not able to do this.
6944 is similar, but only the very first row of the paragraph is dynamic, while
6945 the others are static; this is used, for example, for descriptions.
6950 means the margin is chosen in a way that the longest row of this paragraph
6951 fits to the right margin.
6952 This is used to typeset an address on the right edge of the page.
6955 \begin_layout Description
6972 ] Whether the following Paragraph is allowed to indent its very first row.
6977 means that it is not allowed to do so,
6981 means it could do so if it wants to.
6984 \begin_layout Description
6995 ] The indent of the very first line of a paragraph.
6996 The argument is passed as a string.
7001 means that the paragraph is indented with the width of
7010 You can get a negative width by prefixing the string with
7015 This way was chosen so that the look is the same with each used screen
7021 will be fixed for a certain layout.
7022 The exception is Standard layout, since the indentation of a Standard layout
7023 paragraph can be prohibited with
7028 Also, Standard layout paragraphs inside environments use the
7032 of the environment, not their native one.
7033 For example, Standard paragraphs inside an enumeration are not indented.
7036 \begin_layout Description
7047 ] LyX allows to choose either
7048 \begin_inset Quotes eld
7052 \begin_inset Quotes erd
7056 \begin_inset Quotes eld
7060 \begin_inset Quotes erd
7063 to typeset a document.
7065 \begin_inset Quotes eld
7069 \begin_inset Quotes erd
7072 is chosen, this value is completely ignored.
7074 \begin_inset Quotes eld
7078 \begin_inset Quotes erd
7081 is chosen, the parindent of a LaTeXtype
7082 \begin_inset Quotes eld
7086 \begin_inset Quotes erd
7089 layout is ignored and all paragraphs are additionally separated by this
7091 The vertical space is calculated with
7093 value*DefaultHeight()
7099 is the height of a row with the normal font.
7100 This way, the look stays the same with different screen fonts.
7103 \begin_layout Description
7114 ] The vertical space with which the very first of a chain of paragraphs
7115 with this layout is separated from the previous paragraph.
7116 If the previous paragraph has another layout, the separations are not simply
7117 added, but the maximum is taken.
7120 \begin_layout Description
7135 for the very last paragraph.
7138 \begin_layout Description
7149 ] The vertical space between two paragraphs of this layout.
7152 \begin_layout Description
7163 ] This is an extra space between the paragraphs of an environment layout.
7164 If you put other layouts into an environment, each is separated with the
7170 But the whole items of the environment are additionally separated with
7179 \begin_layout Description
7190 ] If you put layouts into environments, the leftmargins are not simply added,
7191 but added with a factor
7192 \begin_inset Formula $\frac{4}{depth+4}$
7196 Note that this parameter is also used when the border is defined as
7205 Then it is added to the manual or dynamic border.
7206 This string has the same meaning as for
7213 \begin_layout Description
7231 \begin_layout Description
7243 , Manual, Static, Top_Environment,
7245 Centered_Top_Environment, Sensitive,
7254 means the label is the very first word (up to the first real blank).
7259 means it is defined in the layout (see
7270 Centered_Top_Environment
7272 are special cases of
7277 The label will be printed above the paragraph, but only at the top of an
7278 environment or the top of a chain of paragraphs with this layout.
7279 Usage is for example the
7288 This is also the case for
7292 labels with latex type
7296 , in order to make layouts for theorems work correctly.
7301 is a special case for the caption-labels
7302 \begin_inset Quotes eld
7306 \begin_inset Quotes erd
7310 \begin_inset Quotes eld
7314 \begin_inset Quotes erd
7322 means the (hardcoded) label string depends on the kind of float.
7327 label type defines automatically numbered labels.
7330 \begin_layout Description
7343 The name of the counter for automatic numbering (see Section\InsetSpace ~
7345 \begin_inset LatexCommand ref
7346 reference "sec:counter"
7351 This must be given if
7364 \begin_layout Description
7375 ] The horizontal space between the label and the text body.
7376 Only used for labels that are not above the text body.
7379 \begin_layout Description
7386 [float=0] The vertical space between the label and the text body.
7387 Only used for labels that are above the text body (
7393 Centered_Top_Environment
7398 \begin_layout Description
7409 ] The string used for a label with a
7418 this string is also used as a suggestion for the
7422 that can be set in the
7427 dit\SpecialChar \menuseparator
7432 aragraph\InsetSpace ~
7442 is set, this string can be contain special formatting commands as explained
7443 in Section\InsetSpace ~
7445 \begin_inset LatexCommand ref
7446 reference "sec:counter"
7453 \begin_layout Description
7464 ] This is used inside the appendix instead of
7485 \begin_layout Description
7492 The level of the style in the table of contents.
7493 This is used for automatic numbering of section headings.
7496 \begin_layout Description
7508 , Box, Filled_Box, Static
7510 ] The type of label that stands at the end of the paragraph (or sequence
7533 \begin_inset Quotes eld
7537 \begin_inset Quotes erd
7549 ) is a white (resp.\InsetSpace ~
7550 black) square suitable for end of proof markers,
7554 is an explicit text string.
7557 \begin_layout Description
7568 ] The string used for a label with a
7580 \begin_layout Description
7592 , left, right, center
7594 ] Paragraph alignment.
7597 \begin_layout Description
7609 , left, right, center
7616 Some LaTeX styles prohibit certain alignments, since those wouldn't make
7618 For example a right-aligned or centered enumeration isn't possible.
7621 \begin_layout Description
7635 ] With this parameter the
7640 \begin_inset Quotes eld
7643 Vertical space above
7644 \begin_inset Quotes erd
7652 dit\SpecialChar \menuseparator
7657 aragraph\InsetSpace ~
7660 dialog can be set when initializing a paragraph with this layout
7664 \begin_layout Standard
7667 Note from Jean-Marc:
7669 I'm not sure that this setting has much use, and it should probably be
7670 removed in later versions.
7679 \begin_layout Description
7700 \begin_layout Description
7714 ] Whether fragile commands in this layout should be
7723 \begin_layout Description
7740 ] Whether newlines are translated into LaTeX newlines (
7749 The translation can be switched off to allow more comfortable LaTeX editing
7753 \begin_layout Description
7767 ] Whether the contents of this paragraph should be output in raw form, meaning
7768 without special translations that LaTeX would require.
7769 This somehow replaces the older
7776 \begin_layout Description
7790 ] Usually LyX doesn't allow you to insert more than one space between words,
7791 since a space is considered as the separation between two words, not a
7792 character or symbol of its own.
7793 This is a very fine thing but sometimes annoying, for example when typing
7794 program code or plain LaTeX code.
7800 Note that LyX will create protected blanks for the additional blanks when
7801 in another mode than LaTeX-mode.
7804 \begin_layout Description
7818 ] Usually LyX does not allow you to leave a paragraph empty, since it would
7819 lead to empty LaTeX output.
7820 There are some cases where this could be desirable however: in a letter
7821 template, the required fields can be provided as empty fields, so that
7822 people do not forget them; in some special classes, a layout can be used
7823 as some kind of break, which does not contain actual text.
7826 \begin_layout Description
7838 , onehalf, double, other
7844 ] This defines what the default spacing should be in the layout.
7857 correspond respectively to a multiplier value of 1, 1.25 and 1.667.
7858 If you specify the argument
7862 , then you should also provide a numerical argument which will be the actual
7864 Note that, contrary to other parameters,
7868 implies the generation of specific LaTeX code, using the package
7875 \begin_layout Description
7882 The font used for both the text body
7887 See section\InsetSpace ~
7889 \begin_inset LatexCommand ref
7890 reference "sec:fonts"
7895 Note that defining this font automatically defines the
7902 \begin_layout Description
7909 The font used for the text body .
7910 See section\InsetSpace ~
7912 \begin_inset LatexCommand ref
7913 reference "sec:fonts"
7920 \begin_layout Description
7927 The font used for the label.
7928 See section\InsetSpace ~
7930 \begin_inset LatexCommand ref
7931 reference "sec:fonts"
7938 \begin_layout Description
7942 Preamble\SpecialChar \ldots{}
7946 A set of macro definitions that will be output at the beginning of the
7947 LaTeX files when the layout is used.
7948 Use this to define the macros needed by this particular layout.
7951 \begin_layout Description
7958 the name of a style which preamble should be output
7962 the one mentionned above.
7963 This allows to ensure some ordering of the preamble snippets when macros
7964 definitions depend on one another
7968 \begin_layout Standard
7969 Note that, besides that functionality, there is no way to ensure any ordering
7971 The ordering that you see in a given version of LyX may change without
7972 warning in later versions.
7980 \begin_layout Standard
7984 \begin_layout Standard
7996 \begin_layout Subsection
8000 \begin_layout Standard
8001 \begin_inset LatexCommand label
8006 Since version 1.3.0 of LyX, it is necessary to define the floats (
8014 , \SpecialChar \ldots{}
8015 ) in the text class itself.
8016 If you are looking here to learn how to upgrade an existing text class,
8017 it will probably turn out that all you have to do is to add
8020 \begin_layout LyX-Code
8024 \begin_layout Standard
8025 at a reasonable location of the text class.
8029 \begin_layout Standard
8030 Don't forget to also have a look at counters in next section.
8035 If you want to implement a text class that proposes some other float types
8036 (like the AGU class bundled with LyX), the information below will hopefully
8040 \begin_layout Description
8052 \begin_inset Quotes erd
8056 \begin_inset Quotes erd
8060 \begin_inset Quotes eld
8064 \begin_inset Quotes erd
8067 of the new class of floats, like program or algorithm.
8068 After the appropriate
8089 \begin_layout Description
8101 \begin_inset Quotes erd
8105 \begin_inset Quotes erd
8108 ] The string that will be used in the menus and also for the caption.
8111 \begin_layout Description
8132 if the float is already defined by the documentclass.
8137 , the float will be defined using the LaTeX package
8144 \begin_layout Description
8156 \begin_inset Quotes erd
8160 \begin_inset Quotes erd
8163 ] This (optional) argument determines whether floats of this class will
8164 be numbered within some sectional unit of the document.
8165 For example, if within is equal to
8169 , the floats will be numbered within chapters.
8173 \begin_layout Description
8185 \begin_inset Quotes erd
8189 \begin_inset Quotes erd
8192 ] The style used when defining the float using
8201 \begin_layout Description
8213 \begin_inset Quotes erd
8217 \begin_inset Quotes erd
8220 ] The default placement for the given class of floats.
8221 They are like in standard LaTeX:
8237 for top, bottom, page, and here, respectively.
8241 \begin_layout Standard
8242 Note that the order of these letters in the string is irrelevant, like in
8248 On top of that there is a new type,
8252 , which does not really correspond to a float, since it means: put it
8253 \begin_inset Quotes eld
8257 \begin_inset Quotes erd
8261 Note, however that the
8265 specifier is special and, because of implementation details cannot be used
8266 in non-builtin float types.
8267 If you do not understand what this means, just use
8274 \begin_layout Description
8286 \begin_inset Quotes erd
8290 \begin_inset Quotes erd
8293 ] The file name extension of an auxiliary file for the list of figures (or
8295 LaTeX writes the captions to this file.
8298 \begin_layout Description
8310 \begin_inset Quotes erd
8314 \begin_inset Quotes erd
8317 ] The heading used for the list of floats.
8320 \begin_layout Subsection
8324 \begin_layout Standard
8325 \begin_inset LatexCommand label
8326 name "sec:charstyle"
8330 You can define character styles since version 1.4.0 of LyX.
8335 section can contain the following entries:
8338 \begin_layout Description
8345 The font used for both the text body
8350 See section\InsetSpace ~
8352 \begin_inset LatexCommand ref
8353 reference "sec:fonts"
8358 Note that defining this font automatically defines the
8365 \begin_layout Description
8372 The font used for the label.
8373 See section\InsetSpace ~
8375 \begin_inset LatexCommand ref
8376 reference "sec:fonts"
8383 \begin_layout Description
8390 The name of the corresponding LaTeX stuff.
8391 Either the environment or command name.
8394 \begin_layout Description
8401 The optional parameter for the corresponding
8408 This parameter cannot be changed from within LyX.
8411 \begin_layout Description
8418 See section\InsetSpace ~
8420 \begin_inset LatexCommand ref
8421 reference "sec:style"
8428 \begin_layout Description
8432 Preamble\SpecialChar \ldots{}
8436 See section\InsetSpace ~
8438 \begin_inset LatexCommand ref
8439 reference "sec:style"
8446 \begin_layout Subsection
8450 \begin_layout Standard
8451 \begin_inset LatexCommand label
8456 Since version 1.3.0 of LyX, it is necessary to define the counters (
8464 , \SpecialChar \ldots{}
8465 ) in the text class itself.
8466 If you are looking here to learn how to upgrade an existing text class,
8467 it will probably turn out that all you have to do is to add
8470 \begin_layout LyX-Code
8471 Input stdcounters.inc
8474 \begin_layout Standard
8475 The definition of counters is presently a bit primitive in LyX, since many
8476 things are still hardcoded.
8477 The following two parameters can be used:
8480 \begin_layout Description
8492 \begin_inset Quotes erd
8496 \begin_inset Quotes erd
8499 ] The name of the counter
8502 \begin_layout Description
8514 \begin_inset Quotes erd
8518 \begin_inset Quotes erd
8521 ] If this is set to the name of another counter, the present counter will
8522 be reset everytime the other one is increased (is that unclear enough?).
8525 \begin_layout Standard
8526 When a counter has been associated to a style, it is possible to use some
8527 special constructs in
8542 \begin_layout Itemize
8551 will be replaced the expanded
8562 This is used for example to define the label of a subsection in terms of
8563 the label of a section.
8566 \begin_layout Itemize
8567 counter values can be expressed using LaTeX-like macros
8591 \begin_layout Description
8602 to arabic numerals, like 1, 2, 3\SpecialChar \ldots{}
8607 \begin_layout Standard
8617 Actually, the situation is a bit more complicated than that: any
8636 other than those descibed below will produce arabic numerals.
8637 It would not be surprising to see this change in the future.
8645 \begin_layout Description
8652 for lower-case letters: a, b, c, \SpecialChar \ldots{}
8656 \begin_layout Description
8663 for upper-case letters: A, B, C, \SpecialChar \ldots{}
8667 \begin_layout Description
8674 for lower-case roman numerals: i, ii, iii, \SpecialChar \ldots{}
8678 \begin_layout Description
8685 for upper-case roman numerals: I, II, III\SpecialChar \ldots{}
8689 \begin_layout Description
8696 for hebrew numerals.
8700 \begin_layout Subsection
8704 \begin_layout Standard
8705 \begin_inset LatexCommand label
8710 A font description looks like that:
8713 \begin_layout LyX-Code
8723 \begin_layout LyX-Code
8727 \begin_layout LyX-Code
8731 \begin_layout Standard
8732 and the following commands are available:
8735 \begin_layout Description
8752 \begin_layout Description
8769 \begin_layout Description
8781 , Italic, SmallCaps, Slanted
8786 \begin_layout Description
8802 , large, larger, largest, huge, giant
8807 \begin_layout Description
8819 , black, white, red, green, blue, cyan, magenta, yellow
8824 \begin_layout Subsection
8825 Upgrading old layout files
8828 \begin_layout Standard
8829 The file format of layout files changes from time to time, so old layout
8830 files need to be converted.
8831 This process has been automated in LyX 1.4.0: If LyX reads an old format
8832 layout file it will call the conversion tool
8834 $LyXDir/scripts/layout2layout.py
8836 and convert it to a temporary file in current format.
8837 The original file is left untouched, so that you can still use it with
8839 If you want to convert the layout file permanently, just call the converter
8843 \begin_layout LyX-Code
8844 python $LyXDir/scripts/layout2layout.py myclass.layout myclassnew.layout
8847 \begin_layout Standard
8859 \begin_layout Standard
8860 The automatic conversion does only handle syntax changes.
8861 It cannot handle the case where the contents of included files was changed.
8862 For example, layout files based on
8875 If you get error messages about undefined counters, try to convert your
8895 \begin_layout Section
8897 \begin_inset LatexCommand label
8898 name "sec:templates"
8905 \begin_layout Standard
8906 Templates are created just like usual documents.
8907 The only difference is that usual documents contain all possible settings,
8908 including the fontscheme and the papersize.
8909 Usually a user doesn't want a template to overwrite his defaults in these
8911 For that reason, the designer of a template should remove the corresponding
8924 from the template LyX file.
8925 This can be done with any simple text-editor, for example
8937 \begin_layout Standard
8938 Put the edited template files you create in
8942 , copy the ones you use from the global template directory in
8946 to the same place, and redefine the template path in the
8951 dit\SpecialChar \menuseparator
8970 \begin_layout Standard
8971 Note that there is a template which has a particular meaning:
8976 This template is loaded everytime you create a new document with
8983 \SpecialChar \menuseparator
8991 in order to provide useful defaults.
8992 To create this template from inside LyX, all you have to do is to open
8993 a document with the correct settings, and use the
8999 e as Document Defaults
9004 \begin_layout Chapter
9005 Including External Material
9008 \begin_layout Section
9012 \begin_layout Standard
9013 \begin_inset Note Note
9016 \begin_layout Standard
9017 This section is completely outdated.
9022 One often requested feature from LyX users is to be able to interface LyX
9023 with Xfig, Dia, or other similar applications that specialize in producing
9024 a certain kind of diagram, figure, schematic or whatever material might
9025 be relevant to include in your document.
9026 Previously, it was only possible to include boring, static, fixed images
9027 in LyX documents with the graphics feature, but there are several limitations
9028 attached to this approach:
9031 \begin_layout Itemize
9032 If you want to change the figure, you have to invoke an external program
9036 \begin_layout Itemize
9037 LyX does not notice that the referenced files change, so the on-screen display
9038 can fast become obsolete, and this is aggravated by the lack of a means
9039 of updating the display
9042 \begin_layout Itemize
9043 The graphics stuff does not provide any mechanisms for coping with different
9044 exported formats such as DocBook, HTML or plain text
9047 \begin_layout Standard
9048 The external material facility attempts to solve all of these problems
9052 \begin_layout Standard
9053 Even if the graphics facility can't solve all problems, it is still valuable
9054 because it does provide in-line preview of the graphics, and supports advanced
9055 geometric transformations with a comfortable user interface.
9061 It does this by offering a general method to interface LyX to external
9063 Instead of introducing a long list of different constructs tailored for
9064 each specific application, we chose to sacrifice the in-line displaying
9065 of the included material in order to provide a general construct to cover
9066 a wide range of applications.
9067 The result is the external material construct.
9068 External material presents itself in the document simply as a button, but
9069 don't let this fool you.
9070 When you click on it, a dialog will appear that allows you to chose exactly
9071 what material to include, and in the following sections you will learn
9072 that this is indeed a powerful mechanism that can solve all of the above
9076 \begin_layout Section
9080 \begin_layout Standard
9081 The external material feature is based on the concept of a
9086 A template is a specification of how LyX should interface with a certain
9088 As bundled, LyX comes with predefined templates for Xfig figures, Dia diagrams,
9089 various raster format images, gnuplot, and more.
9090 You can check the actual list by using the menu
9092 Insert\SpecialChar \menuseparator
9093 File\SpecialChar \menuseparator
9102 Furthermore, it is possible to roll your own template to support a specific
9104 Later we'll describe in more detail what is involved, and hopefully you
9105 will submit all the templates you create so we can include them in a later
9109 \begin_layout Standard
9110 Another basic idea of the external material feature is to distinguish between
9111 the original file that serves as a base for final material and the produced
9112 file that is included in your exported or printed document.
9113 For example, consider the case of a figure produced with
9118 The Xfig application itself works on an original file with the
9123 Within XFig, you create and change your figure, and when you are done,
9129 When you want to include the figure in your document, you invoke
9133 in order to create a PostScript file that can readily be included in your
9139 file is the original file, and the PostScript file is the produced file.
9142 \begin_layout Standard
9143 This distinction is important in order to allow updating of the material
9144 while you are in the process of writing the document.
9145 Furthermore, it provides us with the flexibility that is needed to support
9146 multiple export formats.
9147 For instance, in the case of a plain text file, it is not exactly an award-winn
9148 ing idea to include the figure as raw PostScript.
9149 Instead, you'd either prefer to just include a reference to the figure,
9150 or try to invoke some graphics to Ascii converter to make the final result
9151 look similar to the real graphics.
9152 The external material management allows you to do this, because it is parameter
9153 ized on the different export formats that LyX supports.
9156 \begin_layout Standard
9157 Besides supporting the production of different products according to the
9158 exported format, it supports tight integration with editing and viewing
9160 In the case of an XFig figure, you are able to invoke
9164 on the original file with a single click from within the external material
9165 dialog in LyX, and also preview the produced PostScript file with
9170 No more fiddling around with the command line and/or file browsers to locate
9171 and manipulate the original or produced files.
9172 In this way, you are finally able to take full advantage of the many different
9173 applications that are relevant to use when you write your documents, and
9174 ultimately be more productive.
9177 \begin_layout Section
9178 External material dialog
9181 \begin_layout Standard
9186 dialog is described in the
9195 \begin_layout Section
9199 \begin_layout Standard
9200 In this section, we should include some examples of use of the external
9202 Those examples could include:
9205 \begin_layout Itemize
9206 External raster images
9209 \begin_layout Itemize
9210 External XFig figures
9213 \begin_layout Itemize
9217 \begin_layout Itemize
9221 \begin_layout Itemize
9222 The use of makefiles
9225 \begin_layout Itemize
9226 Recursive external LyX templates
9229 \begin_layout Section
9230 The external template configuration file
9233 \begin_layout Standard
9234 It is relatively easy to add custom external template definitions to LyX.
9235 However, be aware this doing this in an careless manner most probably
9239 introduce an easily exploitable security hole.
9240 So before you do this, please read the discussion about security which
9244 \begin_layout Standard
9245 Having said that, we encourage you to submit any interesting templates that
9250 \begin_layout Standard
9251 The external templates are defined in the
9253 lib/external_templates
9256 You can place your own version in
9258 .lyx/external_templates
9263 \begin_layout Standard
9264 A typical template looks like this:
9267 \begin_layout LyX-Code
9271 \begin_layout LyX-Code
9272 GuiName "XFig: $$AbsOrRelPathParent$$Basename"
9275 \begin_layout LyX-Code
9279 \begin_layout LyX-Code
9283 \begin_layout LyX-Code
9287 \begin_layout LyX-Code
9291 \begin_layout LyX-Code
9295 \begin_layout LyX-Code
9296 AutomaticProduction true
9299 \begin_layout LyX-Code
9303 \begin_layout LyX-Code
9307 \begin_layout LyX-Code
9311 \begin_layout LyX-Code
9312 TransformCommand Rotate RotationLatexCommand
9315 \begin_layout LyX-Code
9316 TransformCommand Resize ResizeLatexCommand
9319 \begin_layout LyX-Code
9320 Product "$$RotateFront$$ResizeFront
9323 \begin_layout LyX-Code
9328 input{$$AbsOrRelPathMaster$$Basename.pstex_t}
9331 \begin_layout LyX-Code
9332 $$ResizeBack$$RotateBack"
9335 \begin_layout LyX-Code
9339 \begin_layout LyX-Code
9340 UpdateResult "$$AbsPath$$Basename.pstex_t"
9343 \begin_layout LyX-Code
9344 Requirement "graphicx"
9347 \begin_layout LyX-Code
9348 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
9351 \begin_layout LyX-Code
9352 ReferencedFile latex "$$AbsPath$$Basename.eps"
9355 \begin_layout LyX-Code
9356 ReferencedFile dvi "$$AbsPath$$Basename.eps"
9359 \begin_layout LyX-Code
9363 \begin_layout LyX-Code
9367 \begin_layout LyX-Code
9368 TransformCommand Rotate RotationLatexCommand
9371 \begin_layout LyX-Code
9372 TransformCommand Resize ResizeLatexCommand
9375 \begin_layout LyX-Code
9376 Product "$$RotateFront$$ResizeFront
9379 \begin_layout LyX-Code
9384 input{$$AbsOrRelPathMaster$$Basename.pdftex_t}
9387 \begin_layout LyX-Code
9388 $$ResizeBack$$RotateBack"
9391 \begin_layout LyX-Code
9395 \begin_layout LyX-Code
9396 UpdateResult "$$AbsPath$$Basename.pdftex_t"
9399 \begin_layout LyX-Code
9400 Requirement "graphicx"
9403 \begin_layout LyX-Code
9404 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pdftex_t"
9407 \begin_layout LyX-Code
9408 ReferencedFile latex "$$AbsPath$$Basename.pdf"
9411 \begin_layout LyX-Code
9415 \begin_layout LyX-Code
9419 \begin_layout LyX-Code
9420 Product "$$Contents(
9422 "$$AbsPath$$Basename.asc
9427 \begin_layout LyX-Code
9428 UpdateFormat asciixfig
9431 \begin_layout LyX-Code
9432 UpdateResult "$$AbsPath$$Basename.asc"
9435 \begin_layout LyX-Code
9439 \begin_layout LyX-Code
9443 \begin_layout LyX-Code
9444 Product "<graphic fileref=
9446 "$$AbsOrRelPathMaster$$Basename.eps
9451 \begin_layout LyX-Code
9455 \begin_layout LyX-Code
9459 \begin_layout LyX-Code
9460 UpdateResult "$$AbsPath$$Basename.eps"
9463 \begin_layout LyX-Code
9464 ReferencedFile docbook "$$AbsPath$$Basename.eps"
9467 \begin_layout LyX-Code
9468 ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
9471 \begin_layout LyX-Code
9475 \begin_layout LyX-Code
9479 \begin_layout LyX-Code
9480 Product "[XFig: $$FName]"
9483 \begin_layout LyX-Code
9487 \begin_layout LyX-Code
9491 \begin_layout Standard
9492 As you can see, the template is enclosed in
9496 \SpecialChar \ldots{}
9502 It contains a header specifying some general settings, and for each supported
9503 primary document file format a section
9507 \SpecialChar \ldots{}
9515 \begin_layout Subsection
9519 \begin_layout Description
9523 Template\InsetSpace ~
9527 A unique name for the template.
9528 It must not contain substitution macros (see below).
9531 \begin_layout Description
9535 GuiName\InsetSpace ~
9539 The text that is displayed on the button.
9540 This command must occur exactly once.
9543 \begin_layout Description
9547 HelpText\InsetSpace ~
9552 The help text that is used in the External dialog.
9553 Provide enough information to explain to the user just what the template
9554 can provide him with.
9555 This command must occur exactly once.
9558 \begin_layout Description
9562 InputFormat\InsetSpace ~
9566 The file format of the original file.
9567 This must be the name of a format that is known to LyX (see the
9572 ools\SpecialChar \menuseparator
9577 references:Conversion
9584 if the template can handle original files of more than one format.
9585 LyX will attempt to interrogate the file itself in order to deduce its
9586 format in this case.
9587 This command must occur exactly once.
9590 \begin_layout Description
9594 FileFilter\InsetSpace ~
9598 A glob pattern that is used in the file dialog to filter out the desired
9600 If there is more than one possible file extension (e.g.\InsetSpace ~
9609 ), use something like
9614 This command must occur exactly once.
9617 \begin_layout Description
9621 AutomaticProduction\InsetSpace ~
9625 Wether the file represented by the template must be generated by LyX.
9626 This command must occur exactly once.
9629 \begin_layout Description
9633 Transform\InsetSpace ~
9634 Rotate|Resize|Clip|Extra
9637 This command specifies which transformations are supported by this template.
9638 It may occur zero or more times.
9639 This command enables the corresponding tabs in the external dialog.
9644 command must have either a corresponding
9657 Otherwise the transformation will not be supported by that format.
9660 \begin_layout Subsection
9664 \begin_layout Description
9669 LaTeX|PDFLaTeX|PlainText|DocBook|LinuxDoc
9672 The primary document file format that this format definition is for.
9673 Not every template has a sensible representation in all document file formats.
9674 Please define nevertheless a
9678 section for all formats.
9679 Use a dummy text when no representation is available (see the LinuxDoc
9680 format in the example above).
9681 Then you can at least see a reference to the external material in the exported
9685 \begin_layout Description
9689 TransformCommand\InsetSpace ~
9691 RotationLatexCommand
9694 This command specifies that the built in LaTeX command should be used for
9696 This command may occur once or not at all.
9699 \begin_layout Description
9703 TransformCommand\InsetSpace ~
9708 This command specifies that the built in LaTeX command should be used for
9710 This command may occur once or not at all.
9713 \begin_layout Description
9717 TransformOption\InsetSpace ~
9722 This command specifies that rotation is done via an optional argument.
9723 This command may occur once or not at all.
9726 \begin_layout Description
9730 TransformOption\InsetSpace ~
9735 This command specifies that resizing is done via an optional argument.
9736 This command may occur once or not at all.
9739 \begin_layout Description
9743 TransformOption\InsetSpace ~
9748 This command specifies that clipping is done via an optional argument.
9749 This command may occur once or not at all.
9752 \begin_layout Description
9756 TransformOption\InsetSpace ~
9761 This command specifies that an extra optional argument is used.
9762 This command may occur once or not at all.
9765 \begin_layout Description
9769 Product\InsetSpace ~
9773 The text that is inserted in the exported document.
9774 This is actually the most important command and can be quite complex.
9775 This command must occur exactly once.
9778 \begin_layout Description
9782 UpdateFormat\InsetSpace ~
9786 The file format of the converted file.
9787 This must be the name of a format that is known to LyX (see the
9792 ools\SpecialChar \menuseparator
9797 references:Conversion
9800 This command must occur exactly once.
9803 \begin_layout Description
9807 UpdateResult\InsetSpace ~
9811 The file name of the converted file.
9812 The file name must be absolute.
9813 This command must occur exactly once.
9816 \begin_layout Description
9820 ReferencedFile\InsetSpace ~
9821 <format>\InsetSpace ~
9825 This command denotes files that are created by the conversion process and
9826 are needed for a particular export format.
9827 If the filename is relative, it is interpreted relative to the master document.
9828 This command may be given zero or more times.
9831 \begin_layout Description
9835 Requirement\InsetSpace ~
9839 The name of a required LaTeX package.
9840 The package is included via
9846 in the LaTeX preamble.
9847 This command may occur zero or more times.
9850 \begin_layout Description
9854 Preamble\InsetSpace ~
9858 This command specifies a preamble snippet that will be included in the
9860 It has to be defined using
9864 \SpecialChar \ldots{}
9870 This command may occur zero or more times.
9873 \begin_layout Description
9882 This command defines an additional macro
9895 itself may contain substitution macros.
9896 The advantage over using
9904 is that the substituted value of
9908 is sanitized so that it is a valid optional argument in the document format.
9909 This command may occur zero or more times.
9912 \begin_layout Subsection
9913 Preamble definitions
9916 \begin_layout Standard
9917 The external template configuration file may contain additional preamble
9918 definitions enclosed by
9922 \SpecialChar \ldots{}
9928 They can be used by the templates in the
9935 \begin_layout Section
9936 The substitution mechanism
9939 \begin_layout Standard
9940 When the external material facility invokes an external program, it is done
9941 on the basis of a command defined in the template configuration file.
9942 These commands can contain various macros that are expanded before execution.
9943 Execution always take place in the directory of the containing document.
9946 \begin_layout Standard
9947 Also, whenever external material is to be displayed, the name will be produced
9948 by the substitution mechanism, and most other commands in the template
9949 definition support substitution as well.
9952 \begin_layout Standard
9953 The available macros are the following:
9956 \begin_layout Description
9957 $$FName The filename of the file specified in the external material dialog.
9958 This is either an absolute name, or it is relative to the LyX document.
9961 \begin_layout Description
9962 $$Basename The filename without path and without the extension.
9965 \begin_layout Description
9966 $$Extension The file extension (including the dot).
9969 \begin_layout Description
9970 $$FPath The path part of
9974 (absolute name or relative to the LyX document).
9977 \begin_layout Description
9978 $$AbsPath The absolute file path.
9981 \begin_layout Description
9982 $$RelPathMaster The file path, relative to the master LyX document.
9985 \begin_layout Description
9986 $$RelPathParent The file path, relative to the LyX document.
9989 \begin_layout Description
9990 $$AbsOrRelPathMaster The file path, absolute or relative to the master LyX
9994 \begin_layout Description
9995 $$AbsOrRelPathParent The file path, absolute or relative to the LyX document.
9998 \begin_layout Description
9999 $$Tempname A name and full path to a temporary file which will be automatically
10000 deleted whenever the containing document is closed, or the external material
10004 \begin_layout Description
10006 \begin_inset Quotes eld
10010 \begin_inset Quotes erd
10013 ) This macro will expand to the contents of the file with the name
10020 \begin_layout Description
10021 $$Sysdir This macro will expand to the absolute path of the system directory.
10022 This is typically used to point to the various helper scripts that are
10026 \begin_layout Standard
10027 All path macros contain a trailing directory separator, so you can construct
10029 the absolute filename with
10031 $$AbsPath$$Basename$$Extension
10036 \begin_layout Standard
10037 The macros above are substituted in all commands unless otherwise noted.
10042 supports additionally the following substitutions if they are enabled by
10054 \begin_layout Description
10055 $$ResizeFront The front part of the resize command.
10058 \begin_layout Description
10059 $$ResizeBack The back part of the resize command.
10062 \begin_layout Description
10063 $$RotateFront The front part of the rotation command.
10066 \begin_layout Description
10067 $$RotateBack The back part of the rotation command.
10070 \begin_layout Standard
10071 The value string of the
10075 command supports additionally the following substitutions if they are enabled
10087 \begin_layout Description
10088 $$Clip The clip option.
10091 \begin_layout Description
10092 $$Extra The extra option.
10095 \begin_layout Description
10096 $$Resize The resize option.
10099 \begin_layout Description
10100 $$Rotate The rotation option.
10103 \begin_layout Standard
10104 You may ask why there are so many path macros.
10105 There are mainly two reasons:
10108 \begin_layout Standard
10109 First, relative and absolute file names should remain relative or absolute,
10111 Users may have reasons to prefer either form.
10112 Relative names are useful for portable documents that should work on different
10113 machines, for example.
10114 Absolute names may be required by some programs.
10117 \begin_layout Standard
10118 Second, LaTeX treats relative file names differently than LyX and other
10119 programs in nested included files.
10120 For LyX, a relative file name is always relative to the document that contains
10122 For LaTeX, it is always relative to the master document.
10123 These two definitions are identical if you have only one document, but
10124 differ if you have a master document that includes part documents.
10125 That means that relative filenames must be transformed when presented to
10127 Fortunately LyX does this automatically for you if you choose the right
10131 \begin_layout Standard
10132 So which path macro should be used in new template definitions? The rule
10136 \begin_layout Itemize
10141 if an absolute path is required.
10144 \begin_layout Itemize
10147 $$AbsOrRelPathMaster
10149 if the substituted string is some kind of LaTeX input.
10152 \begin_layout Itemize
10155 $$AbsOrRelPathParent
10157 in order to preserve the user's choice.
10160 \begin_layout Standard
10161 There are special cases where this rule does not work and e.g.\InsetSpace ~
10163 are needed, but normally it will work just fine.
10164 One example for such a case is the command
10166 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
10168 in the XFig template above: We can't use the absolute name because the
10173 files needs the relative name in order to rewrite the file content.
10176 \begin_layout Section
10177 Security discussion
10180 \begin_layout Standard
10181 \begin_inset Note Note
10184 \begin_layout Standard
10185 This section is outdated
10190 The external material feature interfaces with a lot of external programs
10191 and does so automatically, so we have to consider the security implications
10193 In particular, since you have the option of including your own filenames
10194 and/or parameter strings and those are expanded into a command, it seems
10195 that it would be possible to create a malicious document which executes
10196 arbitrary commands when a user views or prints the document.
10197 This is something we definately want to avoid.
10200 \begin_layout Standard
10201 However, since the external program commands are specified in the template
10202 configuration file only, there are no security issues if LyX is properly
10203 configured with safe templates only.
10204 This is so because the external programs are invoked with the
10208 -system call rather than the
10212 system-call, so it's not possible to execute arbitrary commands from the
10213 filename or parameter section via the shell.
10216 \begin_layout Standard
10217 This also implies that you are restricted in what command strings you can
10218 use in the external material templates.
10219 In particular, pipes and redirection are not readily available.
10220 This has to be so if LyX should remain safe.
10221 If you want to use some of the shell features, you should write a safe
10222 script to do this in a controlled manner, and then invoke the script from
10223 the command string.
10228 directory of the LyX installation, you can find a safe wrapper script
10230 general_command_wrapper.py
10232 that supports redirection of input and output.
10233 That can serve as an example for how to write safe template scripts.
10234 For a more advanced example that uses
10238 and friends, take a look at the
10245 \begin_layout Standard
10246 It is possible to design a template that interacts directly with the shell,
10247 but since this would allow a malicious user to execute arbitrary commands
10248 by writing clever filenames and/or parameters, we generally recommend that
10249 you only use safe scripts that work with the
10253 system call in a controlled manner.
10254 Of course, for use in a controlled environment, it can be tempting to just
10255 fall back to use ordinary shell scripts.
10256 If you do so, be aware that you
10260 provide an easily exploitable security hole in your system.
10261 Of course it stands to reason that such unsafe templates will never be
10262 included in the standard LyX distribution, although we do encourage people
10263 to submit new templates in the open source tradition.
10264 But LyX as shipped from the official distribution channels will never have
10268 \begin_layout Standard
10269 Including external material provides a lot of power, and you have to be
10270 careful not to introduce security hazards with this power.
10271 A subtle error in a single line in an innocent looking script can open
10272 the door to huge security problems.
10273 So if you do not fully understand the issues, we recommend that you consult
10274 a knowledgable security professional or the LyX development team if you
10275 have any questions about whether a given template is safe or not.
10276 And do this before you use it in an uncontrolled environment.
10279 \begin_layout Chapter
10283 \begin_layout Section
10287 \begin_layout Standard
10288 The LyX server is a method implemented in LyX that will enable other programs
10289 to talk to LyX, invoke LyX commands, and retrieve information about the
10290 LyX internal state.
10291 This is only intended for advanced users, but they should find it useful.
10294 \begin_layout Section
10295 Starting the LyX Server
10298 \begin_layout Standard
10299 The LyX server works through the use of a pair of named pipes.
10300 These are usually located in your home directory and have the names
10301 \begin_inset Quotes eld
10309 \begin_inset Quotes erd
10313 \begin_inset Quotes eld
10321 \begin_inset Quotes erd
10325 External programs write into
10329 and read back data from
10334 The stem of the pipe names can be defined in the
10339 ools\SpecialChar \menuseparator
10346 dialog, for example
10348 "/home/myhome/.lyxpipe"
10353 \begin_layout Standard
10362 ' to create the pipes.
10363 The above setting also has the effect of activating the LyX server.
10364 If one of the pipes already exists, LyX will assume that another LyX process
10365 is already running and will not start the server.
10366 To have several LyX processes with servers at the same time, you have to
10367 change the configuration between the start of the programs.
10370 \begin_layout Standard
10371 If you are developing a client program, you might find it useful to enable
10372 debugging information from the LyX server.
10373 Do this by starting LyX as
10375 lyx -dbg lyxserver.
10378 \begin_layout Standard
10379 Warning: if LyX crashes, it may not manage to remove the pipes; in this
10380 case you must remove them manually.
10381 If LyX starts and the pipes exist already, it will not start any server.
10384 \begin_layout Standard
10385 Other than this, there are a few points to consider:
10388 \begin_layout Itemize
10389 Both server and clients must run on UNIX or OS/2 machines.
10390 Communications between LyX on UNIX and clients on OS/2 or vice versa is
10391 not possible right now.
10394 \begin_layout Itemize
10395 On OS/2, only one client can connect to LyXServer at a time.
10398 \begin_layout Itemize
10399 On OS/2, clients must open inpipe with
10406 \begin_layout Standard
10407 You can find a complete example client written in C in the source distribution
10410 development/server_monitor.c
10415 \begin_layout Section
10416 Normal communication
10419 \begin_layout Standard
10420 To issue a LyX call, the client writes a line of ASCII text into the input
10422 This line has the following format:
10425 \begin_layout Quote
10439 \begin_layout Standard
10444 is a name that the client can choose arbitrarily.
10445 Its only use is that LyX will echo it if it sends an answer - so a client
10446 can dispatch results from different requesters.
10449 \begin_layout Standard
10454 is the function you want LyX to perform.
10455 It is the same as the commands you'd use in the minibuffer.
10458 \begin_layout Standard
10463 is an optional argument which is meaningful only to some functions (for
10465 \begin_inset Quotes eld
10469 \begin_inset Quotes erd
10472 which will insert the argument as text at the cursor position.)
10475 \begin_layout Standard
10476 The answer from LyX will arrive in the output pipe and be of the form
10479 \begin_layout Quote
10493 \begin_layout Standard
10502 are just echoed from the command request, while
10506 is more or less useful information filled according to how the command
10507 execution worked out.
10508 Some commands will return information about the internal state of LyX,
10510 \begin_inset Quotes eld
10514 \begin_inset Quotes erd
10517 , while other will return an empty data-response.
10518 This means that the command execution went fine.
10521 \begin_layout Standard
10522 In case of errors, the response from LyX will have this form
10525 \begin_layout Quote
10539 \begin_layout Standard
10544 should contain an explanation of why the command failed.
10547 \begin_layout Standard
10551 \begin_layout LyX-Code
10552 echo "LYXCMD:test:beginning-of-buffer:" >~/.lyxpipe.in
10555 \begin_layout LyX-Code
10556 echo "LYXCMD:test:get-xy:" >~/.lyxpipe.in
10558 read a <~/.lyxpipe.out
10563 \begin_layout Section
10567 \begin_layout Standard
10568 LyX can notify clients of events going on asynchronously.
10569 Currently it will only do this if the user binds a key sequence with the
10571 \begin_inset Quotes eld
10575 \begin_inset Quotes erd
10579 The format of the string LyX sends is as follows:
10582 \begin_layout Quote
10591 \begin_layout Standard
10596 is the printed representation of the key sequence that was actually typed
10600 \begin_layout Standard
10601 This mechanism can be used to extend LyX's command set and implement macros:
10602 bind some key sequence to
10603 \begin_inset Quotes eld
10607 \begin_inset Quotes erd
10610 , start a client that listens on the out pipe, dispatches the command according
10611 to the sequence and starts a function that may use LyX calls and LyX requests
10612 to issue a command or a series of commands to LyX.
10615 \begin_layout Section
10616 The simple LyX Server Protocol
10619 \begin_layout Standard
10620 LyX implements a simple protocol that can be used for session management.
10621 All messages are of the form
10624 \begin_layout Quote
10634 \begin_layout Standard
10640 \begin_inset Quotes eld
10644 \begin_inset Quotes erd
10648 \begin_inset Quotes eld
10652 \begin_inset Quotes erd
10657 \begin_inset Quotes eld
10661 \begin_inset Quotes erd
10664 is received from a client, LyX will report back to inform the client that
10665 it's listening to it's messages, while
10666 \begin_inset Quotes eld
10670 \begin_inset Quotes erd
10673 sent from LyX will inform clients that LyX is closing.
10676 \begin_layout Chapter
10681 \begin_layout Standard
10682 This appendix is a huge cross-reference to all the English language keybindings.
10683 Originally, we simply wanted to list all of the key bindings followed by
10684 the function it's bound to.
10685 That way, a user can look up a key to find out what it does.
10686 We then decided, what the hey, why not include the default toolbar and
10687 menu bindings, too.
10688 Please note this section is likely to be very out of date.
10691 \begin_layout Standard
10692 The form is really self-explanatory, but here are a few tips: all entries
10693 are arranged roughly alphabetically for a given modifier (
10702 For the general keyboard layout, simpler prefixes precede the more complex
10712 All entries were gleaned from the default user interface and binding files
10713 located in the directories
10715 \SpecialChar \ldots{}
10720 \SpecialChar \ldots{}
10723 ; they should be treated as the final word on the bindings.
10726 \begin_layout Standard
10727 As a final note, be aware that some window managers (such as FVWM) take
10728 control of some of the function keys or motion keys.
10733 is listed here as generating
10737 , but FVWM grabs it and uses it to change virtual desktops instead.
10738 Very annoying unless you instruct your window manager to stop intercepting
10742 \begin_layout Section
10746 \begin_layout LyX-Code
10750 \begin_layout LyX-Code
10754 \begin_layout LyX-Code
10758 \begin_layout LyX-Code
10759 Icon "buffer-write"
10762 \begin_layout LyX-Code
10763 Icon "buffer-print"
10766 \begin_layout LyX-Code
10770 \begin_layout LyX-Code
10774 \begin_layout LyX-Code
10778 \begin_layout LyX-Code
10782 \begin_layout LyX-Code
10786 \begin_layout LyX-Code
10790 \begin_layout LyX-Code
10794 \begin_layout LyX-Code
10798 \begin_layout LyX-Code
10802 \begin_layout LyX-Code
10806 \begin_layout LyX-Code
10810 \begin_layout LyX-Code
10814 \begin_layout LyX-Code
10815 Icon "footnote-insert"
10818 \begin_layout LyX-Code
10819 Icon "marginpar-insert"
10822 \begin_layout LyX-Code
10826 \begin_layout LyX-Code
10830 \begin_layout LyX-Code
10831 Icon "figure-insert"
10834 \begin_layout LyX-Code
10835 Icon "dialog-tabular-insert"
10838 \begin_layout LyX-Code
10842 \begin_layout Section
10846 \begin_layout Standard
10847 Note that the following bindings are for LyX with English menus.
10848 The second character of the binding depends on the menu language.
10850 \begin_inset Quotes eld
10858 \begin_inset Quotes erd
10861 is with German menus
10862 \begin_inset Quotes eld
10870 \begin_inset Quotes erd
10874 To find out the shortcuts of your language press the Meta (Alt)-key and
10875 press then the keys of the underlined characters of the menu names.
10878 \begin_layout Subsection
10883 \labelwidthstring 00.00.0000
10895 \labelwidthstring 00.00.0000
10907 \labelwidthstring 00.00.0000
10919 \labelwidthstring 00.00.0000
10933 \labelwidthstring 00.00.0000
10945 \labelwidthstring 00.00.0000
10959 \labelwidthstring 00.00.0000
10971 \labelwidthstring 00.00.0000
10983 \labelwidthstring 00.00.0000
10995 \labelwidthstring 00.00.0000
11007 \labelwidthstring 00.00.0000
11015 buffer-new-template
11019 \labelwidthstring 00.00.0000
11034 \labelwidthstring 00.00.0000
11045 \labelwidthstring 00.00.0000
11056 \labelwidthstring 00.00.0000
11067 \labelwidthstring 00.00.0000
11078 \labelwidthstring 00.00.0000
11089 \labelwidthstring 00.00.0000
11101 \labelwidthstring 00.00.0000
11112 \begin_layout Subsection
11117 \labelwidthstring 00.00.0000
11129 \labelwidthstring 00.00.0000
11141 \labelwidthstring 00.00.0000
11153 \labelwidthstring 00.00.0000
11165 \labelwidthstring 00.00.0000
11177 \labelwidthstring 00.00.0000
11189 \labelwidthstring 00.00.0000
11204 \labelwidthstring 00.00.0000
11211 tabular-feature append-row
11215 \labelwidthstring 00.00.0000
11222 tabular-feature toggle-line-bottom
11226 \labelwidthstring 00.00.0000
11233 tabular-feature align-center
11237 \labelwidthstring 00.00.0000
11244 tabular-feature delete-column
11248 \labelwidthstring 00.00.0000
11255 tabular-feature align-left
11259 \labelwidthstring 00.00.0000
11266 tabular-feature align-right
11270 \labelwidthstring 00.00.0000
11277 tabular-feature toggle-line-left
11281 \labelwidthstring 00.00.0000
11288 tabular-feature multicolumn
11292 \labelwidthstring 00.00.0000
11299 tabular-feature valign-center
11303 \labelwidthstring 00.00.0000
11310 tabular-feature valign-top
11314 \labelwidthstring 00.00.0000
11321 tabular-feature toggle-line-right
11325 \labelwidthstring 00.00.0000
11332 tabular-feature toggle-line-top
11336 \labelwidthstring 00.00.0000
11343 tabular-feature append-column
11347 \labelwidthstring 00.00.0000
11354 tabular-feature valign-bottom
11358 \labelwidthstring 00.00.0000
11365 tabular-feature delete-row
11370 \labelwidthstring 00.00.0000
11383 \labelwidthstring 00.00.0000
11390 floats-operate openfoot
11394 \labelwidthstring 00.00.0000
11401 floats-operate closefoot
11405 \labelwidthstring 00.00.0000
11412 floats-operate openfig
11416 \labelwidthstring 00.00.0000
11427 \labelwidthstring 00.00.0000
11438 \labelwidthstring 00.00.0000
11445 floats-operate closefig
11450 \labelwidthstring 00.00.0000
11462 \labelwidthstring 00.00.0000
11476 \labelwidthstring 00.00.0000
11488 \labelwidthstring 00.00.0000
11500 \labelwidthstring 00.00.0000
11514 \labelwidthstring 00.00.0000
11526 \labelwidthstring 00.00.0000
11541 \labelwidthstring 00.00.0000
11548 primary-selection-paste
11552 \labelwidthstring 00.00.0000
11559 primary-selection-paste paragraph
11563 \begin_layout Subsection
11568 \labelwidthstring 00.00.0000
11583 \labelwidthstring 00.00.0000
11590 buffer-float-insert algorithm
11594 \labelwidthstring 00.00.0000
11601 buffer-float-insert wide-tab
11605 \labelwidthstring 00.00.0000
11612 buffer-float-insert figure
11616 \labelwidthstring 00.00.0000
11623 buffer-float-insert table
11627 \labelwidthstring 00.00.0000
11634 buffer-float-insert wide-fig
11639 \labelwidthstring 00.00.0000
11647 dialog-tabular-insert
11651 \labelwidthstring 00.00.0000
11663 \labelwidthstring 00.00.0000
11675 \labelwidthstring 00.00.0000
11683 buffer-child-insert
11687 \labelwidthstring 00.00.0000
11699 \labelwidthstring 00.00.0000
11711 \labelwidthstring 00.00.0000
11723 \labelwidthstring 00.00.0000
11735 \labelwidthstring 00.00.0000
11747 \labelwidthstring 00.00.0000
11759 \labelwidthstring 00.00.0000
11771 \labelwidthstring 00.00.0000
11786 \labelwidthstring 00.00.0000
11797 \labelwidthstring 00.00.0000
11808 \labelwidthstring 00.00.0000
11819 \labelwidthstring 00.00.0000
11830 \labelwidthstring 00.00.0000
11841 \labelwidthstring 00.00.0000
11853 \labelwidthstring 00.00.0000
11865 \labelwidthstring 00.00.0000
11880 \labelwidthstring 00.00.0000
11887 protected-space-insert
11891 \labelwidthstring 00.00.0000
11898 end-of-sentence-period-insert
11902 \labelwidthstring 00.00.0000
11913 \labelwidthstring 00.00.0000
11924 \labelwidthstring 00.00.0000
11935 \labelwidthstring 00.00.0000
11942 menu-separator-insert
11946 \labelwidthstring 00.00.0000
11953 hyphenation-point-insert
11957 \labelwidthstring 00.00.0000
11968 \labelwidthstring 00.00.0000
11975 command-sequence math-insert ^;math-mode;
11979 \labelwidthstring 00.00.0000
11986 command-sequence math-insert _;math-mode;
11991 \labelwidthstring 00.00.0000
12006 \labelwidthstring 00.00.0000
12013 file-insert-plaintext lines
12017 \labelwidthstring 00.00.0000
12024 file-insert-plaintext paragraphs
12028 \labelwidthstring 00.00.0000
12040 \labelwidthstring 00.00.0000
12052 \labelwidthstring 00.00.0000
12064 \labelwidthstring 00.00.0000
12075 \begin_layout Subsection
12080 \labelwidthstring 00.00.0000
12092 \labelwidthstring 00.00.0000
12104 \labelwidthstring 00.00.0000
12116 \labelwidthstring 00.00.0000
12128 \labelwidthstring 00.00.0000
12140 \labelwidthstring 00.00.0000
12152 \labelwidthstring 00.00.0000
12164 \labelwidthstring 00.00.0000
12176 \labelwidthstring 00.00.0000
12184 layout-save-default
12188 \labelwidthstring 00.00.0000
12200 \labelwidthstring 00.00.0000
12212 \labelwidthstring 00.00.0000
12223 \begin_layout Subsubsection
12226 Layout\SpecialChar \menuseparator
12233 \labelwidthstring 00.00.0000
12245 \labelwidthstring 00.00.0000
12257 \labelwidthstring 00.00.0000
12269 \labelwidthstring 00.00.0000
12281 \labelwidthstring 00.00.0000
12293 \labelwidthstring 00.00.0000
12305 \labelwidthstring 00.00.0000
12317 \labelwidthstring 00.00.0000
12329 \labelwidthstring 00.00.0000
12341 \labelwidthstring 00.00.0000
12353 \labelwidthstring 00.00.0000
12365 \labelwidthstring 00.00.0000
12377 \labelwidthstring 00.00.0000
12389 \labelwidthstring 00.00.0000
12401 \labelwidthstring 00.00.0000
12413 \labelwidthstring 00.00.0000
12425 \labelwidthstring 00.00.0000
12437 \labelwidthstring 00.00.0000
12449 \labelwidthstring 00.00.0000
12461 \labelwidthstring 00.00.0000
12473 \labelwidthstring 00.00.0000
12485 \labelwidthstring 00.00.0000
12497 \labelwidthstring 00.00.0000
12509 \labelwidthstring 00.00.0000
12521 \labelwidthstring 00.00.0000
12533 \labelwidthstring 00.00.0000
12545 \labelwidthstring 00.00.0000
12557 \labelwidthstring 00.00.0000
12569 \labelwidthstring 00.00.0000
12581 \labelwidthstring 00.00.0000
12593 \labelwidthstring 00.00.0000
12605 \labelwidthstring 00.00.0000
12616 \begin_layout Subsection
12620 \begin_layout Subsection
12624 \begin_layout Subsection
12628 \begin_layout Subsection
12633 \labelwidthstring 00.00.0000
12645 \labelwidthstring 00.00.0000
12657 \labelwidthstring 00.00.0000
12669 \labelwidthstring 00.00.0000
12681 \labelwidthstring 00.00.0000
12693 \labelwidthstring 00.00.0000
12701 layout ShortFoilhead
12705 \labelwidthstring 00.00.0000
12717 \labelwidthstring 00.00.0000
12729 \labelwidthstring 00.00.0000
12741 \labelwidthstring 00.00.0000
12753 \labelwidthstring 00.00.0000
12761 layout ShortRotatefoilhead
12765 \labelwidthstring 00.00.0000
12777 \labelwidthstring 00.00.0000
12789 \labelwidthstring 00.00.0000
12801 \labelwidthstring 00.00.0000
12809 drop-layouts-choice
12813 \labelwidthstring 00.00.0000
12828 \labelwidthstring 00.00.0000
12843 \labelwidthstring 00.00.0000
12855 \labelwidthstring 00.00.0000
12867 \labelwidthstring 00.00.0000
12875 layout Subsubsection
12879 \labelwidthstring 00.00.0000
12891 \labelwidthstring 00.00.0000
12899 layout Subparagraph
12903 \labelwidthstring 00.00.0000
12907 asterisk\InsetSpace ~
12916 \labelwidthstring 00.00.0000
12920 asterisk\InsetSpace ~
12929 \labelwidthstring 00.00.0000
12933 asterisk\InsetSpace ~
12942 \labelwidthstring 00.00.0000
12946 asterisk\InsetSpace ~
12955 \labelwidthstring 00.00.0000
12959 asterisk\InsetSpace ~
12964 layout Subsubsection*
12968 \labelwidthstring 00.00.0000
12972 asterisk\InsetSpace ~
12981 \labelwidthstring 00.00.0000
12985 asterisk\InsetSpace ~
12990 layout Subparagraph*
12994 \labelwidthstring 00.00.0000
13006 \labelwidthstring 00.00.0000
13014 layout Bibliography
13018 \labelwidthstring 00.00.0000
13030 \labelwidthstring 00.00.0000
13042 \labelwidthstring 00.00.0000
13054 \labelwidthstring 00.00.0000
13066 \labelwidthstring 00.00.0000
13078 \labelwidthstring 00.00.0000
13086 layout Rotatefoilhead
13090 \labelwidthstring 00.00.0000
13098 layout RightAddress
13102 \labelwidthstring 00.00.0000
13114 \labelwidthstring 00.00.0000
13126 \labelwidthstring 00.00.0000
13138 \labelwidthstring 00.00.0000
13149 \begin_layout Standard
13150 These ones are kept for backwards compatibility, but only make sense on
13155 \labelwidthstring 00.00.0000
13167 \labelwidthstring 00.00.0000
13175 layout Subsubsection*
13179 \labelwidthstring 00.00.0000
13190 \begin_layout Section
13194 \begin_layout Subsection
13201 \labelwidthstring 00.00.0000
13212 \labelwidthstring 00.00.0000
13223 \labelwidthstring 00.00.0000
13234 \labelwidthstring 00.00.0000
13245 \labelwidthstring 00.00.0000
13256 \labelwidthstring 00.00.0000
13267 \labelwidthstring 00.00.0000
13274 hyphenation-point-insert
13278 \labelwidthstring 00.00.0000
13289 \labelwidthstring 00.00.0000
13296 line-delete-forward
13300 \labelwidthstring 00.00.0000
13311 \labelwidthstring 00.00.0000
13322 \labelwidthstring 00.00.0000
13333 \labelwidthstring 00.00.0000
13344 \labelwidthstring 00.00.0000
13355 \labelwidthstring 00.00.0000
13366 \labelwidthstring 00.00.0000
13377 \labelwidthstring 00.00.0000
13388 \labelwidthstring 00.00.0000
13399 \labelwidthstring 00.00.0000
13410 \labelwidthstring 00.00.0000
13421 \labelwidthstring 00.00.0000
13432 \labelwidthstring 00.00.0000
13444 \labelwidthstring 00.00.0000
13456 \labelwidthstring 00.00.0000
13468 \labelwidthstring 00.00.0000
13480 \labelwidthstring 00.00.0000
13493 \labelwidthstring 00.00.0000
13505 \labelwidthstring 00.00.0000
13517 \labelwidthstring 00.00.0000
13529 \labelwidthstring 00.00.0000
13541 \labelwidthstring 00.00.0000
13554 \labelwidthstring 00.00.0000
13566 \labelwidthstring 00.00.0000
13578 \labelwidthstring 00.00.0000
13591 \labelwidthstring 00.00.0000
13604 \labelwidthstring 00.00.0000
13617 \labelwidthstring 00.00.0000
13630 \labelwidthstring 00.00.0000
13643 \labelwidthstring 00.00.0000
13656 \labelwidthstring 00.00.0000
13668 \labelwidthstring 00.00.0000
13680 \labelwidthstring 00.00.0000
13692 \labelwidthstring 00.00.0000
13700 menu-open Documents
13704 \labelwidthstring 00.00.0000
13716 \labelwidthstring 00.00.0000
13728 \labelwidthstring 00.00.0000
13740 \labelwidthstring 00.00.0000
13752 \labelwidthstring 00.00.0000
13764 \labelwidthstring 00.00.0000
13772 buffer-toggle-read-only
13776 \labelwidthstring 00.00.0000
13788 \labelwidthstring 00.00.0000
13800 \labelwidthstring 00.00.0000
13812 \labelwidthstring 00.00.0000
13823 \labelwidthstring 00.00.0000
13834 \labelwidthstring 00.00.0000
13845 \labelwidthstring 00.00.0000
13856 \labelwidthstring 00.00.0000
13867 \labelwidthstring 00.00.0000
13878 \labelwidthstring 00.00.0000
13889 \labelwidthstring 00.00.0000
13900 \labelwidthstring 00.00.0000
13911 \labelwidthstring 00.00.0000
13922 \labelwidthstring 00.00.0000
13933 \labelwidthstring 00.00.0000
13944 \labelwidthstring 00.00.0000
13955 \labelwidthstring 00.00.0000
13966 \labelwidthstring 00.00.0000
13973 word-delete-forward
13977 \labelwidthstring 00.00.0000
13984 word-delete-backward
13988 \labelwidthstring 00.00.0000
13999 \labelwidthstring 00.00.0000
14006 end-of-sentence-period-insert
14010 \labelwidthstring 00.00.0000
14017 protected-space-insert
14021 \labelwidthstring 00.00.0000
14032 \labelwidthstring 00.00.0000
14043 \labelwidthstring 00.00.0000
14054 \labelwidthstring 00.00.0000
14065 \labelwidthstring 00.00.0000
14076 \labelwidthstring 00.00.0000
14087 \labelwidthstring 00.00.0000
14094 buffer-begin-select
14098 \labelwidthstring 00.00.0000
14109 \labelwidthstring 00.00.0000
14116 paragraph-up-select
14120 \labelwidthstring 00.00.0000
14127 paragraph-down-select
14131 \labelwidthstring 00.00.0000
14138 word-backward-select
14142 \labelwidthstring 00.00.0000
14149 word-forward-select
14153 \labelwidthstring 00.00.0000
14164 \labelwidthstring 00.00.0000
14171 word-delete-forward
14175 \labelwidthstring 00.00.0000
14186 \labelwidthstring 00.00.0000
14197 \labelwidthstring 00.00.0000
14208 \labelwidthstring 00.00.0000
14219 \labelwidthstring 00.00.0000
14226 break-paragraph-keep-layout
14230 \labelwidthstring 00.00.0000
14240 \begin_layout Subsection
14247 \labelwidthstring 00.00.0000
14258 \labelwidthstring 00.00.0000
14269 \labelwidthstring 00.00.0000
14280 \labelwidthstring 00.00.0000
14291 \labelwidthstring 00.00.0000
14302 \labelwidthstring 00.00.0000
14313 \labelwidthstring 00.00.0000
14324 \labelwidthstring 00.00.0000
14335 \labelwidthstring 00.00.0000
14346 \labelwidthstring 00.00.0000
14357 \labelwidthstring 00.00.0000
14368 \labelwidthstring 00.00.0000
14379 \labelwidthstring 00.00.0000
14390 \labelwidthstring 00.00.0000
14401 \labelwidthstring 00.00.0000
14412 \labelwidthstring 00.00.0000
14423 \labelwidthstring 00.00.0000
14434 \labelwidthstring 00.00.0000
14445 \labelwidthstring 00.00.0000
14456 \labelwidthstring 00.00.0000
14467 \labelwidthstring 00.00.0000
14478 \labelwidthstring 00.00.0000
14489 \labelwidthstring 00.00.0000
14496 protected-space-insert
14500 \labelwidthstring 00.00.0000
14511 \labelwidthstring 00.00.0000
14522 \labelwidthstring 00.00.0000
14533 \labelwidthstring 00.00.0000
14540 buffer-new-template
14544 \labelwidthstring 00.00.0000
14555 \labelwidthstring 00.00.0000
14566 \labelwidthstring 00.00.0000
14577 \labelwidthstring 00.00.0000
14588 \labelwidthstring 00.00.0000
14599 \labelwidthstring 00.00.0000
14610 \labelwidthstring 00.00.0000
14621 \labelwidthstring 00.00.0000
14628 end-of-sentence-period-insert
14632 \labelwidthstring 00.00.0000
14643 \labelwidthstring 00.00.0000
14654 \labelwidthstring 00.00.0000
14661 hyphenation-point-insert
14665 \labelwidthstring 00.00.0000
14676 \labelwidthstring 00.00.0000
14683 protected-space-insert
14687 \labelwidthstring 00.00.0000
14698 \labelwidthstring 00.00.0000
14709 \labelwidthstring 00.00.0000
14720 \labelwidthstring 00.00.0000
14731 \labelwidthstring 00.00.0000
14742 \labelwidthstring 00.00.0000
14753 \labelwidthstring 00.00.0000
14764 \labelwidthstring 00.00.0000
14775 \labelwidthstring 00.00.0000
14786 \labelwidthstring 00.00.0000
14797 \labelwidthstring 00.00.0000
14808 \labelwidthstring 00.00.0000
14819 \labelwidthstring 00.00.0000
14830 \labelwidthstring 00.00.0000
14841 \labelwidthstring 00.00.0000
14852 \labelwidthstring 00.00.0000
14859 word-delete-forward
14863 \labelwidthstring 00.00.0000
14870 word-delete-backward
14874 \labelwidthstring 00.00.0000
14885 \labelwidthstring 00.00.0000
14896 \labelwidthstring 00.00.0000
14907 \labelwidthstring 00.00.0000
14918 \labelwidthstring 00.00.0000
14925 paragraph-down-select
14929 \labelwidthstring 00.00.0000
14940 \labelwidthstring 00.00.0000
14947 buffer-begin-select
14951 \labelwidthstring 00.00.0000
14958 word-backward-select
14962 \labelwidthstring 00.00.0000
14969 word-forward-select
14973 \labelwidthstring 00.00.0000
14980 paragraph-up-select
14984 \labelwidthstring 00.00.0000
14995 \labelwidthstring 00.00.0000
15002 break-paragraph-keep-layout
15006 \labelwidthstring 00.00.0000
15017 \labelwidthstring 00.00.0000
15028 \labelwidthstring 00.00.0000
15039 \labelwidthstring 00.00.0000
15050 \labelwidthstring 00.00.0000
15061 \labelwidthstring 00.00.0000
15072 \labelwidthstring 00.00.0000
15083 \labelwidthstring 00.00.0000
15094 \labelwidthstring 00.00.0000
15105 \labelwidthstring 00.00.0000
15116 \labelwidthstring 00.00.0000
15126 \begin_layout Subsection
15132 \begin_layout Standard
15133 These are LyX keyboard definitions for mathematics, similar to those of
15137 \begin_layout Standard
15138 The bindings file and the present documentation were prepared by Serge Winitzki
15139 with assistance from Jean-Marc Lasgouttes.
15140 Version 1.3, for LyX 1.2.x and 1.3.x.
15143 \begin_layout Standard
15144 These definitions make it a lot easier to type equations without using the
15145 mouse, especially for people familiar with Scientific Word.
15146 The standard LyX bindings such as
15157 \begin_layout Standard
15158 Tip: to find the "LyX bind name" for a key, look at the status bar after
15159 typing some non-existent key combination.
15161 to find how "Ctrl-&" is referenced, press Ctrl-S and then Ctrl-&: the status
15162 bar shows "C-s S-C-ampersand." (This does not work in LyX 1.3.0!)
15166 \labelwidthstring 00.00.0000
15175 -- Copy, cut, paste is as in Sciword,
15191 \labelwidthstring 00.00.0000
15200 -- Display equation toggle: type
15204 to insert a displayed formula (
15209 \begin_inset Quotes eld
15213 \begin_inset Quotes erd
15221 in a displayed formula to convert it back to an inline formula.
15225 \labelwidthstring 00.00.0000
15240 to insert a fraction (
15245 \begin_inset Quotes eld
15249 \begin_inset Quotes erd
15253 You can also select an expression and type
15257 to convert it to the numerator of a fraction.
15266 end of the denominator will delete the numerator and convert the denominator
15271 \labelwidthstring 00.00.0000
15283 \begin_inset Formula $\int$
15291 \begin_inset Quotes eld
15295 \begin_inset Quotes erd
15302 \labelwidthstring 00.00.0000
15309 line-delete-forward
15311 -- Emacs-like binding: delete forward of cursor to end of line.
15315 \labelwidthstring 00.00.0000
15324 -- A text/math toggle (
15329 \begin_inset Quotes eld
15333 \begin_inset Quotes erd
15336 ): switches to math in text mode, and also inserts roman text in math mode.
15346 \begin_inset Quotes eld
15350 \begin_inset Quotes erd
15357 \labelwidthstring 00.00.0000
15366 -- Add/remove numbering in a single equation.
15370 \labelwidthstring 00.00.0000
15379 -- Add/remove numbering at a line in equation arrays.
15382 \begin_layout Standard
15383 The above commands are toggles that control the numbering of equations (
15388 \begin_inset Quotes eld
15392 \begin_inset Quotes erd
15396 Note: when deleting a number in a labeled eqnarray, the label is not really
15397 removed (the TeX code becomes
15398 \begin_inset Quotes eld
15410 \begin_inset Quotes erd
15413 ) and this generates a (harmless) LaTeX warning.
15417 \labelwidthstring 00.00.0000
15426 -- Open a new document.
15431 \labelwidthstring 00.00.0000
15440 -- Insert a quote character " (
15445 \begin_inset Quotes eld
15449 \begin_inset Quotes erd
15454 \begin_inset Quotes eld
15458 \begin_inset Quotes erd
15461 double quote character that you get by default.
15465 \labelwidthstring 00.00.0000
15476 -- Square root sign
15477 \begin_inset Formula $\sqrt{x}$
15485 \begin_inset Quotes eld
15489 \begin_inset Quotes erd
15496 \labelwidthstring 00.00.0000
15508 \begin_inset Formula $\sqrt[n]{x}$
15515 \labelwidthstring 00.00.0000
15524 -- Another binding for a switch between the text and the math mode (
15529 \begin_inset Quotes eld
15533 \begin_inset Quotes erd
15537 Note that the roman text inserted in math mode is special.
15541 \labelwidthstring 00.00.0000
15554 the selected text (text mode only, use things like
15570 \labelwidthstring 00.00.0000
15579 -- W*ndows heritage.
15583 \labelwidthstring 00.00.0000
15592 -- Close the current document (again, a W*ndows heritage).
15596 \labelwidthstring 00.00.0000
15607 \labelwidthstring 00.00.0000
15618 \labelwidthstring 00.00.0000
15628 \begin_inset Quotes eld
15632 \begin_inset Quotes erd
15636 \begin_inset Quotes eld
15640 \begin_inset Quotes erd
15646 \begin_layout Standard
15647 Bracket delimiters: press
15651 -<bracket key> to insert a matching pair of delimiters.
15656 inserts a pair of parentheses
15657 \begin_inset Formula $\left[\right]$
15665 does the same thing.) It will switch to math mode if needed.
15666 The supported characters are ( [ { < |.
15667 It is the same to press the right or the left bracket.
15668 The corresponding delimiters are
15669 \begin_inset Formula $\left(\right)$
15673 \begin_inset Formula $\left[\right]$
15677 \begin_inset Formula $\left\{ \right\} $
15681 \begin_inset Formula $\left\langle \right\rangle $
15685 \begin_inset Formula $\left|\right|$
15690 \begin_inset Quotes eld
15694 \begin_inset Quotes erd
15697 and resize with their contents.
15698 Use Math Panel to get other or non-matching delimiters.
15699 Press backspace on the
15703 delimiter to remove both
15704 \begin_inset Quotes eld
15708 \begin_inset Quotes erd
15711 delimiters without removing their contents.
15715 \labelwidthstring 00.00.0000
15724 -- for convenience, pressing
15738 \labelwidthstring 00.00.0000
15749 \labelwidthstring 00.00.0000
15760 \labelwidthstring 00.00.0000
15771 \labelwidthstring 00.00.0000
15782 \labelwidthstring 00.00.0000
15793 \labelwidthstring 00.00.0000
15800 math-delim langle rangle
15802 -- angular delimiters
15803 \begin_inset Formula $\left\langle \right\rangle $
15806 , not to confuse with ordinary < > signs.
15810 \labelwidthstring 00.00.0000
15817 math-delim langle rangle
15820 \begin_layout Standard
15821 The bar bracket: on some keyboards (e.g.\InsetSpace ~
15822 some British ones), the bar character
15827 -something and on some wayward Unices to "brokenbar".
15828 So we define all of these keys as well.
15832 \labelwidthstring 00.00.0000
15843 \labelwidthstring 00.00.0000
15854 \labelwidthstring 00.00.0000
15865 \labelwidthstring 00.00.0000
15876 \labelwidthstring 00.00.0000
15886 \begin_layout Standard
15887 Accents are in most cases
15891 -<accent key>, e.g.\InsetSpace ~
15905 for tilde (you also need to press
15911 \begin_inset Quotes eld
15923 \begin_inset Quotes erd
15927 Some accents work only in math mode and others only in text mode.
15931 \labelwidthstring 00.00.0000
15940 -- overdot accent, ȧ (text mode only).
15944 \labelwidthstring 00.00.0000
15956 \begin_inset Formula $\dot{a}$
15959 (math mode only -- in physics this denotes a first derivative).
15963 \labelwidthstring 00.00.0000
15974 -- Vector accent over math
15975 \begin_inset Formula $\overrightarrow{x}$
15982 \labelwidthstring 00.00.0000
15991 -- umlaut accent, ä (text mode only)
15995 \labelwidthstring 00.00.0000
16006 -- double dot accent,
16007 \begin_inset Formula $\ddot{a}$
16010 (math mode only -- in physics this denotes a second derivative).
16011 To get a triple dot in math mode, use
16019 \labelwidthstring 00.00.0000
16028 -- grave accent à (text mode only, use
16038 \labelwidthstring 00.00.0000
16047 -- tilde accent ã (text mode only, use
16057 \labelwidthstring 00.00.0000
16066 -- acute accent á (text mode only, use
16076 \labelwidthstring 00.00.0000
16085 -- circumflex (caret) accent â (text mode only, use
16094 \begin_layout Standard
16096 The new key S-F2 for creating a LaTeX file seems handy.
16100 \labelwidthstring 00.00.0000
16109 -- Save current document.
16113 \labelwidthstring 00.00.0000
16120 buffer-export latex
16122 -- Write a LaTeX file for the current document.
16126 \labelwidthstring 00.00.0000
16135 -- Find and replace dialog.
16139 \labelwidthstring 00.00.0000
16156 \labelwidthstring 00.00.0000
16169 to quit LyX is the W*ndows w*ndow manager's mnemonic.
16172 \begin_layout Standard
16181 are used to switch fonts.
16186 to switch back to the normal font.
16187 The non-default font switches
16195 all work as toggles.
16196 They also work on the whole word if you put the cursor in the middle of
16197 the word, or if you select some text.
16201 \labelwidthstring 00.00.0000
16210 -- stop using any special font
16214 \labelwidthstring 00.00.0000
16231 \labelwidthstring 00.00.0000
16248 \labelwidthstring 00.00.0000
16265 \labelwidthstring 00.00.0000
16279 (Used sometimes for people's names.)
16282 \begin_layout Standard
16288 \begin_inset Quotes eld
16292 \begin_inset Quotes erd
16299 key (useful e.g.\InsetSpace ~
16300 if the keyboard has no working
16307 \begin_layout Standard
16308 Here are some Sciword-inspired mnemonics for frequently used math symbols.
16309 Many symbols start with a
16318 cannot be itself bound to anything.
16322 \labelwidthstring 00.00.0000
16334 \begin_inset Quotes eld
16338 \begin_inset Quotes erd
16342 \begin_inset Formula $\prime$
16346 This is frequently unnecessary: in most cases the normal apostrophe works
16349 \begin_inset Formula $x'+2x=0$
16352 , but in some cases this would generate a double superscript error in LaTeX.
16354 \begin_inset Formula $x^{\prime2}$
16358 \begin_inset Formula $x$
16361 prime squared) must be entered with the prime character.
16365 \labelwidthstring 00.00.0000
16373 command-sequence math-superscript; math-insert
16377 -- Insert a prime as a superscript (see example above).
16381 \labelwidthstring 00.00.0000
16390 -- Insert an upper index.
16397 \labelwidthstring 00.00.0000
16406 -- Insert a lower index.
16413 \labelwidthstring 00.00.0000
16425 -- Partial derivative symbol
16426 \begin_inset Formula $\partial$
16433 \labelwidthstring 00.00.0000
16445 -- Summation symbol
16446 \begin_inset Formula $\sum$
16449 (not the same as the Greek letter uppercase Sigma
16450 \begin_inset Formula $\Sigma$
16453 because it can resize and allows smart upper/lower limits).
16457 \labelwidthstring 00.00.0000
16470 \begin_inset Formula $\prod$
16473 (not the same as the Greek letter uppercase Pi,
16474 \begin_inset Formula $\Pi$
16481 \labelwidthstring 00.00.0000
16494 \begin_inset Formula $\infty$
16501 \labelwidthstring 00.00.0000
16514 \begin_inset Formula $\times$
16521 \labelwidthstring 00.00.0000
16531 -- Insert a stacked array
16532 \begin_inset Formula $\begin{array}{c}
16534 \end{array}\end{array}$
16538 (Frequently useful in formulae.)
16542 \labelwidthstring 00.00.0000
16553 \begin_inset Formula $\times$
16557 \begin_inset Formula $\begin{array}{ccc}
16562 (Then you can modify its size using the
16564 Edit\SpecialChar \menuseparator
16571 \labelwidthstring 00.00.0000
16584 \begin_inset Quotes eld
16588 \begin_inset Quotes erd
16592 \begin_inset Formula $\dagger$
16599 \labelwidthstring 00.00.0000
16612 \begin_inset Quotes eld
16616 \begin_inset Quotes erd
16620 \begin_inset Formula $\equiv$
16627 \labelwidthstring 00.00.0000
16639 \begin_inset Quotes eld
16642 Approximate equality
16643 \begin_inset Quotes erd
16647 \begin_inset Formula $\approx$
16654 \labelwidthstring 00.00.0000
16666 \begin_inset Quotes eld
16670 \begin_inset Quotes erd
16674 \begin_inset Formula $\sim$
16681 \labelwidthstring 00.00.0000
16693 \begin_inset Formula $\rightarrow$
16697 \begin_inset Formula $\lim_{x\rightarrow0}$
16704 \labelwidthstring 00.00.0000
16716 \begin_inset Formula $\leq$
16723 \labelwidthstring 00.00.0000
16734 -- Greater-or-equal
16735 \begin_inset Formula $\geq$
16742 \labelwidthstring 00.00.0000
16755 \begin_inset Quotes eld
16759 \begin_inset Quotes erd
16763 \begin_inset Formula $\ll$
16766 (useful in physics)
16770 \labelwidthstring 00.00.0000
16783 \begin_inset Quotes eld
16787 \begin_inset Quotes erd
16791 \begin_inset Formula $\gg$
16797 \begin_layout Subsection
16798 Standard math bindings
16802 \labelwidthstring 00.00.0000
16816 \labelwidthstring 00.00.0000
16828 \labelwidthstring 00.00.0000
16840 \labelwidthstring 00.00.0000
16854 \labelwidthstring 00.00.0000
16866 \labelwidthstring 00.00.0000
16878 \labelwidthstring 00.00.0000
16892 \labelwidthstring 00.00.0000
16904 \labelwidthstring 00.00.0000
16916 \labelwidthstring 00.00.0000
16928 \labelwidthstring 00.00.0000
16942 \labelwidthstring 00.00.0000
16956 \labelwidthstring 00.00.0000
16970 \labelwidthstring 00.00.0000
16984 \labelwidthstring 00.00.0000
16998 \labelwidthstring 00.00.0000
17012 \labelwidthstring 00.00.0000
17024 \labelwidthstring 00.00.0000
17038 \labelwidthstring 00.00.0000
17050 \labelwidthstring 00.00.0000
17062 \labelwidthstring 00.00.0000
17074 \labelwidthstring 00.00.0000
17086 \labelwidthstring 00.00.0000
17100 \labelwidthstring 00.00.0000
17112 \labelwidthstring 00.00.0000
17124 \labelwidthstring 00.00.0000
17136 \labelwidthstring 00.00.0000
17144 math-delim langle rangle
17148 \labelwidthstring 00.00.0000
17156 math-delim rangle langle
17160 \labelwidthstring 00.00.0000
17172 \labelwidthstring 00.00.0000
17186 \labelwidthstring 00.00.0000
17199 \begin_layout Subsection
17204 \labelwidthstring 00.00.0000
17216 \labelwidthstring 00.00.0000
17228 \labelwidthstring 00.00.0000
17240 \labelwidthstring 00.00.0000
17252 \labelwidthstring 00.00.0000