1 #LyX 1.6.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
49 Customizing LyX: Features for the Advanced User
57 \begin_layout Standard
59 Principal maintainer of this file is
64 If you have comments or error corrections, please send them to the LyX
65 Documentation mailing list, <lyx-docs@lists.lyx.org>.
73 \begin_layout Standard
74 \begin_inset LatexCommand tableofcontents
85 \begin_layout Standard
86 This manual covers the customization features present in LyX.
87 In it, we discuss issues like keyboard shortcuts, screen previewing options,
88 printer options, sending commands to LyX via the LyX Server, internationalizati
89 on, installing new LaTeX classes and LyX layouts, etc.
90 We can't possibly hope to touch on everything you can change---our developers
91 add new features faster than we can document them---but we will explain
92 the most common customizations and hopefully point you in the right direction
93 for some of the more obscure ones.
97 LyX configuration files
100 \begin_layout Standard
101 \begin_inset LatexCommand label
106 This chapter aims to help you to find your way through the LyX configuration
108 Before continuing to read this chapter, you should find out where your
109 LyX library directory is by using
114 elp\SpecialChar \menuseparator
122 This directory is the place where LyX places its system-wide configuration
123 files, and we will simply name it
127 in the remainder of this document.
131 \begin_layout Section
139 \begin_layout Standard
144 and its sub-directories contain a number of files and that can be used
145 to customise LyX's behaviour.
146 You can change many of these files from within LyX itself through the
151 ools\SpecialChar \menuseparator
159 Most customization that you might want to do to LyX is possible through
161 However, many other inner aspects of LyX can be customized by modifying
167 They fall in different categories, described in the following subsections.
170 \begin_layout Subsection
171 Automatically generated files
174 \begin_layout Standard
175 These files are generated when you configure LyX.
176 They contain various default values that are guessed by inspection.
177 In general, it is not a good idea to modify them, since they might be overwritt
182 \labelwidthstring 00.00.0000
189 contains defaults for various commands.
193 \labelwidthstring 00.00.0000
200 contains the list of packages that have been recognized by LyX.
201 It is currently unused by the LyX program itself, but the information extracted
202 , and more, is made available with
207 elp\SpecialChar \menuseparator
219 \labelwidthstring 00.00.0000
226 is the list of text classes that have been found in your
230 directory, along with the associated LaTeX document class and their description.
234 \labelwidthstring 00.00.0000
239 is automatically generated during configuration from the file
246 \begin_layout Subsection
251 \labelwidthstring 00.00.0000
258 this directory contains files with the extension
262 that define the keybindings used in LyX (see section\InsetSpace ~
264 \begin_inset LatexCommand ref
265 reference "sec:bindings"
270 If there exists an internationalized version of the bind file named
274 , that will be used first.
275 See Chapter\InsetSpace ~
277 \begin_inset LatexCommand ref
278 reference "chap:i18n"
283 \begin_inset LatexCommand ref
284 reference "sec:bindings"
292 \labelwidthstring 00.00.0000
299 contains graphics files that can be included in documents.
304 \labelwidthstring 00.00.0000
311 contains LyX documentation files (including the one you are currently reading).
316 deserves special attention, as noted above.
317 If there exists an internationalized version of the help-document with
322 prepended to the name, that will be used first.
323 See Chapter\InsetSpace ~
325 \begin_inset LatexCommand ref
326 reference "chap:i18n"
334 \labelwidthstring 00.00.0000
341 contains example files that explain how to use some features.
342 In the file browser, press the
350 \labelwidthstring 00.00.0000
355 contains image files that are used by the
360 In addition, it also contains the individual icons used in the toolbar
361 and the banners that can be shown when LyX is launched.
365 \labelwidthstring 00.00.0000
372 contains keyboard keymapping files.
373 See Chapter\InsetSpace ~
375 \begin_inset LatexCommand ref
376 reference "sec:keymap"
384 \labelwidthstring 00.00.0000
391 contains the text class files described in Chapter\InsetSpace ~
393 \begin_inset LatexCommand ref
394 reference "chap:textclass"
402 \labelwidthstring 00.00.0000
407 contains some files that demonstrate the capabilities of the
409 External\InsetSpace ~
416 \labelwidthstring 00.00.0000
421 contains the standard LyX template files described in Chapter\InsetSpace ~
423 \begin_inset LatexCommand ref
424 reference "sec:templates"
432 \labelwidthstring 00.00.0000
437 contains some LaTeX cls files distributed with LyX.
441 \labelwidthstring 00.00.0000
446 contains files with the extension
450 that define the user interface to LyX.
451 That is, the files define which items appear in which menus and the items
452 appearing on the toolbar.
453 See Chapter\InsetSpace ~
455 \begin_inset LatexCommand ref
463 \begin_layout Subsection
464 Files you don't want to modify
467 \begin_layout Standard
468 These files are used internally by LyX and you generally do not need to
469 modify them unless you are a developer.
473 \labelwidthstring 00.00.0000
480 this file contains the list of LyX developers.
481 The contents are displayed with the menu entry
486 elp\SpecialChar \menuseparator
494 \labelwidthstring 00.00.0000
501 this is a LaTeX script used during the configuration process.
506 \labelwidthstring 00.00.0000
513 this is the script that is used to re-configure LyX.
514 It creates configuration files in the directory it was run from.
517 \begin_layout Subsection
518 Other files needing a line or two...
522 \labelwidthstring 00.00.0000
527 this contains tables describing how different character encodings can be
532 \labelwidthstring 00.00.0000
537 this file contains the templates available to the new
539 External\InsetSpace ~
546 \labelwidthstring 00.00.0000
551 this file contains a list of all the languages currently supported by LyX.
554 \begin_layout Section
555 Your local configuration directory
558 \begin_layout Standard
559 Even if you are using LyX as an unprivileged user, you might want to change
560 LyX configuration for your own use.
565 directory contains all your personal configuration files.
566 This is the directory described as
567 \begin_inset Quotes eld
571 \begin_inset Quotes erd
579 elp\SpecialChar \menuseparator
584 This directory is used as a mirror of
588 , which means that every file in
592 is a replacement for the corresponding file in
597 Any configuration file described in the above sections can be placed either
598 in the system-wide directory, in which case it will affect all users, or
599 in your local directory for your own use.
602 \begin_layout Standard
603 To make things clearer, let's provide a few examples:
606 \begin_layout Itemize
607 The preferences set in the
612 ools\SpecialChar \menuseparator
619 dialog are saved to a file
630 \begin_layout Itemize
631 When you reconfigure using
636 ools\SpecialChar \menuseparator
647 and the resulting files are written in your local configuration directory
648 (see section\InsetSpace ~
650 \begin_inset LatexCommand ref
651 reference "sec:autodetected"
655 to have a list of the
659 settings affected by this section).
660 This means that any additional text class file that you might have added
665 will be added to the list of classes in the
670 ayout\SpecialChar \menuseparator
680 \begin_layout Itemize
681 Similarly, if you have installed some LaTeX document classes in your home
682 directory, that LaTeX can find with your
686 path, they will show up in your list of text classes.
690 \begin_layout Standard
691 as long as LyX or yourself have a
695 file for it, of course.
703 \begin_layout Itemize
704 If you get some updated documentation from LyX ftp site and cannot install
705 it because you do not have sysadmin rights on your system, you can just
720 \begin_layout Section
721 Running LyX with multiple configurations
724 \begin_layout Standard
725 The configuration freedom of the local configuration directory may not suffice
726 if you want to have more than one configuration at your disposal.
727 For example, you may want to be use different key bindings or printer settings
729 You can achieve this by having several such directories.
730 You then specify which directory to use at run-time.
733 \begin_layout Standard
734 Invoking LyX with the command line switch
742 instructs the program to read the configuration from that directory, and
743 not from the default directory (you can determine the default directory
744 by running LyX without this switch as described above).
745 If this directory does not exist, LyX offers to create it for you, just
746 like it does for the default directory on the first time you run the program.
747 You can modify the configuration options in this additional
751 exactly as you would for the default directory.
752 These directories are completely independent (but read on).
753 Note that setting the environment variable
757 to some value has exactly the same effect
762 \begin_layout Standard
763 Having several configurations also requires more maintenance: if you want
764 to add a new layout to
768 which you want available from all your configurations, you must add it
769 to each directory separately.
770 You can avoid this with the following trick: after LyX creates the additional
771 directory, most of the subdirectories (see above) are empty.
772 If you want the new configuration to mirror an existing one, replace the
773 empty subdirectory with a symbolic link to the matching subdirectory in
774 the existing configuration.
781 subirectory, however, since it contains a file written by the configuration
782 script (also accessible through
787 ools\SpecialChar \menuseparator
793 \begin_inset LatexCommand ref
794 reference "sec:autodetected"
800 which is configuration-specific.
803 \begin_layout Chapter
814 \begin_layout Section
815 Using the dialog for the first time
818 \begin_layout Standard
823 file will contain only changes that you have made to the default behaviour,
824 some of which is hard-coded into LyX and some of which is contained in
827 LyXDir/lyxrc.defaults
830 Note that in both files lines beginning with a
831 \begin_inset Quotes eld
839 \begin_inset Quotes erd
842 are just comments and not interpreted.
843 However, only system administrators should edit
853 ools\SpecialChar \menuseparator
860 dialog to create and modify their own
867 \begin_layout Standard
873 ools\SpecialChar \menuseparator
880 dialog will be largely self-explanatory.
881 Almost all the commands have an associated comment, so you shouldn't have
882 too much trouble modifying it to taste.
883 Before we highlight a few of the more important commands below, however,
888 ing some of your changes (e.g., screen fonts) will have an instant effect.
890 changing the bind file) will not.
891 If nothing appears to have changed, just
895 the changes and restart LyX.
898 \begin_layout Section
902 \begin_layout Standard
903 The font used to display your documents on the LyX screen is very important,
904 since you'll be reading all your documents with this font.
905 Therefore it is important that the font is as readable and good-looking
907 The LyX team tried to provide the best possible default font for you, but
908 since practically all X11 systems are different, it's likely that the default
909 fonts will be sub-optimal on your system.
910 Fortunately, you can do something about this.
911 Before we explain how to do this, you should learn a bit more about fonts
912 so that you are better prepared for choosing your fonts, because it is
913 a trade-off that is specific to your preferences and the capabilities of
917 \begin_layout Standard
918 Notice that this section only deals with the fonts on the
922 inside the LyX window.
923 The fonts that appear on the
931 are independent from these fonts, and are determined by the document class.
936 to learn how to change the font of the printed version of your document.
939 \begin_layout Standard
940 Basically, screen fonts come in two different kinds: scalable outline fonts
941 and non-scalable bitmap fonts.
942 This distinction seems a bit arbitrary, since non-scalable fonts are actually
943 scalable in most modern font renderers.
944 The difference lies in the
948 of the scaling, and the
953 The most important decision is thus whether you should use non-scalable
954 bitmap fonts or scalable outline fonts.
957 \begin_layout Standard
958 The scalable fonts are built from
962 of the single glyphs (i.e.
963 characters) in the font.
964 This means that each glyph is defined using mathematical curves that are
965 well suited for scaling to any requested size.
966 This mathematical definition is interpreted by the font renderer and turned
967 into a small picture composed of pixels according to which size and glyph,
968 the programmer requests.
969 This means that scalable fonts will look pretty good in all sizes.
970 Well, almost all sizes.
971 Since scalable fonts are defined in an abstract way, it can be hard to
972 provide a good rendering at small sizes, where each pixel has to be very
973 carefully computed to provide a good image.
974 Technically it is possible to do this from the mathematical definition,
975 but in order to keep the rendering reasonably fast, tradeoffs have to be
976 made, and the result is that scalable fonts can be difficult to read at
980 \begin_layout Standard
981 Bitmap fonts on the other hand, are defined by bitmap graphics from the
982 start, so they will look good at all the sizes they are meant for.
983 However, they don't scale well, because in order to scale a glyph, each
984 pixel is enlarged into several pixels.
985 It is the same effect that happens if you try to enlarge a picture in
989 or any other picture manipulation program.
990 In order to relieve this effect, bitmap fonts are typically provided in
991 several fixed sizes typically from around 8 pixels high up to 34 pixels
992 or so high in steps according to what is believed to be useful.
993 The advantage of bitmap fonts is that no complicated computations are necessary
994 to display each glyph, so bitmap fonts are thus faster displayed than scalable
996 The disadvantage is that sizes that don't exists as fixed versions have
997 to be scaled by doubling pixels, and thus look bad.
1000 \begin_layout Standard
1001 The net result of all this, is that bitmap fonts are generally best for
1002 the small sizes, where they are available, while scalable fonts are generally
1003 best for large sizes.
1004 The logical conclusion would thus be to use bitmap fonts for the small
1005 sizes, and scalable fonts for the large sizes.
1006 Unfortunately, this is not a good idea, since bitmap fonts and scalable
1007 fonts are not designed to be used together, so the overall look of such
1008 a scheme would be bad.
1009 The best you can do is thus to try both schemes and decide for yourself
1013 \begin_layout Standard
1014 By default, LyX uses non-scalable bitmap fonts (when using the XForms frontend).
1019 is used, for sans serif fonts,
1027 is used as the monospaced/typewriter font.
1030 \begin_layout Standard
1031 In the following, we will describe what to do if the text does not look
1033 We'll start with the most important parameters: DPI and font zoom.
1036 \begin_layout Subsection
1037 DPI setting and Font Zoom
1040 \begin_layout Standard
1041 LyX automatically tries to scale the fonts to look as close as the paper
1042 output size as possible, except for the so-called font zoom factor.
1045 \begin_layout Standard
1046 In order for this to work on all systems, it relies on the screen DPI (dots
1047 per inch) setting to be correct.
1048 The DPI setting for your system is autodetected by LyX using the information
1049 the X server can provide.
1050 You can check what LyX autodetects the DPI setting to, by running LyX as
1058 \begin_layout Standard
1059 On many systems, X is not set up correctly, so you should check that it
1062 \begin_inset Quotes eld
1070 \begin_inset Quotes erd
1073 and write down what the DPI is for the resolution you use (this will be
1074 close to the value LyX detects).
1075 It is the number mentioned as
1076 \begin_inset Quotes eld
1080 \begin_inset Quotes erd
1084 Also write down the number of pixels you have in the width (the first number
1086 \begin_inset Quotes eld
1090 \begin_inset Quotes erd
1096 \begin_layout Standard
1097 Then get the good old ruler out of the closet, and measure the width of
1098 the visible screen-image on your monitor.
1099 Convert this measurement to inches if you used a centimeter ruler by dividing
1101 Now you can determine the correct DPI setting for your screen by dividing
1102 the number of pixels in the width by the width of the screen-image on the
1104 If this number is more than, say, 5 DPI from the detected value, you should
1105 either fix the X setup, or at least tell LyX that the DPI is different
1106 than the detected value.
1109 \begin_layout Standard
1110 If you can't fix the X setup (which of course is best since other programs
1111 than LyX will benefit from this as well), you can tell LyX the correct
1119 \begin_layout Standard
1120 If the text is too small or too big for your taste, you should fiddle with
1121 the font zoom setting.
1122 This setting is used to scale the point size of the text.
1123 If your DPI setting is correct, and the font zoom setting is set to 100,
1124 this means that LyX will try to display the text exactly the same size
1125 as it will appear on the paper-output.
1126 If you set the zoom factor to 200, the text will try to be 2 times as big
1128 Of course, this will only happen if LyX can find a font that has the appropriat
1129 e size, which you can't count on.
1130 Since LyX is a WYSIWYM system anyways, this limitation isn't much of an
1134 \begin_layout Standard
1135 The default font zoom setting is 150, since a monitor is typically wider
1136 than a piece of paper, but you should try to fiddle with it through the
1150 dialog to find a size that you like.
1151 When you've found a setting that seems to work nicely for you (tip: use
1159 button to keep the dialog open while you experiment), you can make this
1160 setting the default by using the
1170 \begin_layout Standard
1171 While it is often possible to find a suitable size for the text on the screen,
1172 this doesn't necessarily mean that the fonts are the best ones available
1174 In order to help you get the most out of your system, you can use the font
1175 definition commands to fine-tune the look of the text in greater detail
1179 \begin_layout Subsection
1180 Font definition commands
1183 \begin_layout Standard
1184 As mentioned, LyX uses non-scalable bitmap fonts by default with the XForms
1190 is used, for sans serif fonts,
1198 is used as the monospaced/typewriter font.
1201 \begin_layout Standard
1202 You can change all of these from within the
1207 The number of fonts that are available on different systems vary, but the
1212 should be available everywhere.
1213 Use that program to find candidate fonts.
1214 When you've found a font that you like, try to insert the first two elements
1216 \begin_inset Quotes eld
1220 \begin_inset Quotes erd
1224 \begin_inset Quotes eld
1228 \begin_inset Quotes erd
1235 ) in the appropriate field in the
1247 LyX will then reformat your document using the new font, and if you like
1248 the font, you should
1256 One place to start for a new font is to see if the scalable font
1257 \begin_inset Quotes eld
1261 \begin_inset Quotes erd
1265 Tip: You can see whether a font is a bitmap font or a scalable font by
1267 \begin_inset Quotes eld
1271 \begin_inset Quotes erd
1275 \begin_inset Quotes eld
1279 \begin_inset Quotes erd
1287 If the value 0 is available, the font is scalable.
1288 If the value 0 isn't available, the font is a bitmap font.
1291 \begin_layout Standard
1292 Before you go about scrapping a bitmap font because the larger sizes look
1294 \begin_inset Quotes eld
1298 \begin_inset Quotes erd
1301 , you should toggle the
1302 \begin_inset Quotes eld
1306 \begin_inset Quotes erd
1310 This is only useful if you use bitmap fonts, because only these don't scale
1312 If you define this flag, LyX will only use the fixed font sizes that are
1313 available, and this guarantees that all bitmap fonts look well.
1314 (You can see which individual font sizes are available with the
1323 .) However, the prize is that the difference between the size of the fonts
1324 on screen and the size of fonts on paper will be larger because LyX will
1325 have to be satisfied with the closest available size, and not try to scale
1327 Also, you can risk that some logically different sizes, such as
1335 , will be mapped to the same screen font, making it hard for you to see
1336 the difference on screen.
1337 We've decided not to use scalable fonts by default because of these artifacts,
1338 but since LyX is a WYSIWYM system, many people like to use the flag anyways,
1339 well-knowing that the font size on the screen can't be trusted.
1340 But remember that this flag only makes a difference when you use bitmap
1342 Scalable fonts won't be affected for reasons you should understand by now.
1345 \begin_layout Standard
1346 One final note regarding this flag: you should know that there is nothing
1347 wrong with using bitmap and scalable fonts at the same time for different
1349 For instance, it's common to use the scalable
1350 \begin_inset Quotes eld
1354 \begin_inset Quotes erd
1357 for the serif text together with a bitmap version of
1358 \begin_inset Quotes eld
1362 \begin_inset Quotes erd
1366 And you can safely select the
1367 \begin_inset Quotes eld
1371 \begin_inset Quotes erd
1374 button without worries: It will only apply to the Helvetica font.
1377 \begin_layout Standard
1378 Sometimes the artifacts introduced by use of the flag can be relieved by
1379 using the fine-detail screen font sizes which defines which point sizes
1380 the different logical font sizes correspond to.
1385 to see exactly what concrete fonts the logical sizes map to, and try adjusting
1386 the corresponding entries in the
1390 dialog until you've managed to hit the nail and get the fonts you want.
1391 This can be hard to do, because LyX uses the DPI setting and the font zoom
1392 settings to calculate which exact screen font size to ask the X server
1393 for, thus obfuscating the mapping.
1394 If you can't make it by trial-and-error, you can make the process more
1395 transparent if you set both the DPI setting and font zoom settings to 100---eve
1396 n when this is known to be wrong.
1397 This will of course make your scalable fonts look weird, so use with care.
1400 \begin_layout Subsection
1404 \begin_layout Standard
1405 By default, LyX will use fonts meant to write Western European text, including
1406 all kinds of English.
1407 This is defined through the so-called
1416 If you want to use LyX to write for instance Eastern European text, Cyrillic
1417 or any other language not covered by the ISO-8859-1 font encoding, you
1418 can define a different one with the encoding setting.
1419 This requires you to have special fonts installed.
1424 to see whether this is the case: check the
1425 \begin_inset Quotes eld
1429 \begin_inset Quotes erd
1433 \begin_inset Quotes eld
1437 \begin_inset Quotes erd
1440 fields for ISO-8859-X values different from ISO-8859-1, and search for
1441 one that contains the national characters of your language.
1442 If you find any, enter this encoding in the dialog.
1443 If not, go searching the Web for appropriate fonts.
1444 For the Qt frontend, it's recommended you use an iso646 font set.
1447 \begin_layout Standard
1448 When you've set LyX up to use a different font encoding, you should also
1449 consider changing the font used by dialog windows in LyX.
1456 dialog will not be understandable unless you tell LyX to use a different
1458 By default the menu font is set to
1460 -*-helvetica-medium-r
1462 , but often Helvetica is not available in the font encoding you need, so
1463 the dialog allows this to be changed.
1466 \begin_layout Standard
1467 As you can see, there are quite a few options that can be used to fine tune
1468 the look of your fonts.
1469 This should not scare you from fiddling with the settings, because after
1470 all, you will hopefully be using LyX for many hours in the future.
1471 And contrary to real WYSIWYG word processors where you are tied to using
1472 fonts that have to look good both on paper and on screen, LyX gives you
1473 the possibility of using fonts that are designed to look good on the screen
1474 while using a different set of fonts to look good on paper.
1477 \begin_layout Section
1479 \begin_inset LatexCommand label
1487 \begin_layout Standard
1488 Bindings are used to, well, bind a function to a key.
1489 Several prepackaged binding files are available: a CUA set of bindings
1490 (familiar as the typical set of PC and CDE set of keyboard shortcuts),
1491 an Emacs set of bindings, for those of us who follow the One True Way and
1492 refuse to lower our standards,
1496 \begin_layout Standard
1497 I'm kidding here, of course!
1502 as well as specialty bindings (broadway and hollywood) and other languages
1503 (French, German, etc.).
1506 \begin_layout Standard
1507 If, however, you'd like to customise the keybindings to your own exacting
1508 tastes, then copy the best-fit file in
1517 Don't forget to load this new file into LyX using the
1522 (For the moment you'll have to restart LyX for these changes to take effect.)
1525 \begin_layout Standard
1526 LyX supports internationalization of the user interface (see Chapter\InsetSpace ~
1528 \begin_inset LatexCommand ref
1529 reference "chap:i18n"
1538 is set, with the environment variable
1542 , LyX will try to use bindfiles by prepending
1547 For example, you can put a translated copy of some standard bind file in
1552 directory, and LyX will use it automatically.
1555 \begin_layout Standard
1560 files is straightforward:
1563 \begin_layout Standard
1568 bind <key combination> <lyx-function>
1571 \begin_layout Standard
1572 Both key combination and lyx-function (including any arguments) must be
1573 enclosed in "double quotes".
1574 All the LyX functions are listed in the
1581 \begin_layout Section
1583 \begin_inset LatexCommand label
1591 \begin_layout Standard
1592 The appearance of both the menu and toolbar may both be changed using the
1607 For the moment, only one file exists,
1611 , but feel free to experiment.
1612 Just copy the file to the
1616 directory and play! Note that, for the moment, you'll have to restart LyX
1617 for these changes to take effect.
1620 \begin_layout Standard
1625 files is straightforward: have a look at
1638 entries must be ended with an explicit
1663 s and in the case of the
1664 \begin_inset Quotes eld
1668 \begin_inset Quotes erd
1676 One small word of warning.
1681 s may be inserted in a
1689 , but they are defined as
1700 \begin_layout Section
1701 \begin_inset LatexCommand label
1702 name "sec:converters-etc"
1706 Converters, Formats, and Copiers
1709 \begin_layout Standard
1710 LyX has a powerful mechanism to convert to and from any file format using
1715 \begin_layout Subsection
1719 \begin_layout Standard
1720 The first step is to define your file formats, e.g.
1721 PDF, if they are not already defined.
1727 ools\SpecialChar \menuseparator
1732 references:Converters
1735 Enter a new format name; a new GUI name (used in, e.g., the View and Export
1736 menus); and a file extension.
1741 \begin_layout Standard
1742 There are also two flags that can be set using the checkboxes in the dialog.
1747 flag tells LyX that a format is suitable for document export.
1748 If this flag is set for a format, and if a suitable conversion route exists,
1749 then the format will appear in the
1754 ile\SpecialChar \menuseparator
1762 The format will also appear in the
1769 menu if it has a viewer associated with it.
1770 (See below.) Pure image formats (e.g.\InsetSpace ~
1775 ) should not have this flag set; formats that can both represent vector
1776 graphics and documents (e.g.\InsetSpace ~
1781 ) should have it set.
1784 \begin_layout Standard
1789 flag tells LyX whether a format can contain vector graphics.
1790 This information is used to determine the target format of included graphics
1796 Included graphics may need to be converted to either
1812 cannot handle other image formats.
1813 If an included graphic is not already in
1825 format, it is converted to
1833 flag of the format is set, and otherwise to
1840 \begin_layout Standard
1841 A Format can have a Viewer associated with it.
1842 For example, you might want to use
1846 to look at PostScript® files, or
1850 to preview the LaTeX output.
1851 You can enter the program to use as a viewer (and what options to pass
1852 to it) in the Viewer field.
1853 You can also modify the viewer associated with a pre-defined format simply
1854 by changing what you find in this field, clicking the
1858 button, and then (if you're sure you want to do this) clicking the
1870 \begin_layout Standard
1871 Changes to the formats are kept in the
1875 file in you local LyX directory (for example,
1880 If you want to restore the defaults, edit this file and delete the lines
1881 in the Formats and Converters sections.
1886 For example, to change the
1894 format in the dialog, change the viewer to be
1898 (or whatever), and hit
1908 \begin_layout Standard
1909 If the operating system has a default viewer associated to a format, this
1910 viewer is used instead of the one defined here in the Windows® and OS X
1912 (It is planned to implement this feature on other platforms.)
1915 \begin_layout Standard
1916 Editors are like viewers: Each Format can have an Editor associated to it,
1917 entered in the Editor field, and the editor associated with a format can
1923 ools\SpecialChar \menuseparator
1928 references:Converters
1931 LyX will launch the associated editor whenever an included file
1935 \begin_layout Standard
1936 This can be an included
1940 file, a verbatim included text file, external material or an included graphics
1949 \begin_layout Subsection
1953 \begin_layout Standard
1954 Each Format can have a Copier associated with it.
1955 These are defined in the
1960 ools\SpecialChar \menuseparator
1968 Since all conversions from one Format to another take place in LyX's temporary
1969 directory, it is sometimes necessary to modify a file before copying it
1970 to the temporary directory in order that the conversion may be performed.
1974 \begin_layout Standard
1975 For example, the file may refer to other files---images, for example---using
1976 relative filenames, and these may become invalid when the file is copied
1977 to the temporary directory.
1982 This is done by the Copier: It copies a file to (or from) the temporary
1983 directory and may modify it in the process.
1987 \begin_layout Standard
1988 Copiers may also be used for other purposes.
1989 For example, if appropriate converters are found, LyX will automatically
1990 install copiers for the html and wordhtml formats.
1991 When these formats are exported, the copier sees to it that not just the
1992 main HTML file but various associated files (style files, images, and the
1993 like) are also copied, and all these files are written to a subdirectory
1994 of the directory in which the original LyX file was found.
1995 The copier may of course be customized.
1996 The optional -e argument takes a comma-separated list of extensions to
1997 be copied; if it is omitted, all files will be copied.
1998 The -t argument determines the extension added to the generated directory.
2000 \begin_inset Quotes eld
2004 \begin_inset Quotes erd
2007 , so HTML generated from
2009 /path/to/filename.lyx
2013 /path/to/filename.html.LyXconv
2019 \begin_layout Standard
2020 The definitions of the copiers may use four variables:
2024 \labelwidthstring 00.00.0000
2025 $$s The LyX system directory (e.g.,
2033 \labelwidthstring 00.00.0000
2038 \labelwidthstring 00.00.0000
2043 \labelwidthstring 00.00.0000
2044 $$l The `LaTeX name'
2047 \begin_layout Standard
2048 The latter is to be given in a form suitable for inclusion in a LaTeX
2054 command and is relevant only when exporting files suitable for such inclusion.
2057 \begin_layout Subsection
2061 \begin_layout Standard
2062 To define a converter from one format to another---e.g., LaTeX to PDF---select
2063 the Converters panel.
2064 Choose the `From' and `To' formats, and then enter the program to be used
2065 in the conversion in the Converter field.
2069 \begin_layout Standard
2070 You do not have to define converters between all the Formats between which
2071 you want to convert.
2072 For example, you will note that there is no `LyX to PostScript®' converter,
2073 but LyX will export PostScript®.
2074 It does so by first creating a LaTeX file (no converter needs to be defined
2075 for this) which it then converts to DVI using the `LaTeX to DVI' converter,
2076 and then it converts the resulting DVI file to PostScript®.
2077 LyX finds such `chains' of converters automatically, and it will always
2078 choose the shortest chain possible.
2079 You can, though, still define multiple conversion methods between file
2081 For example, the standard LyX configuration provides three ways to convert
2082 LaTeX to PDF: Directly, using pdflatex; via (DVI and) PostScript®, using
2083 ps2pdf; or via DVI, using dvipdfm.
2084 To define such alternate chains, you must define multiple target `file
2086 In the standard configuration, for example, formats named `pdf', `pdf2',
2087 and `pdf3' are defined, all of which share the extension `pdf'.
2091 \begin_layout Standard
2092 Several variables can be used in the definition of converters:
2096 \labelwidthstring 00.00.0000
2097 $$s The LyX system directory (e.g.,
2105 \labelwidthstring 00.00.0000
2110 \labelwidthstring 00.00.0000
2115 \labelwidthstring 00.00.0000
2116 $$b The base filename of the input file
2120 \labelwidthstring 00.00.0000
2121 $$p The path to the input file
2124 \begin_layout Standard
2125 In the `Extra Flag' field you can enter as many of the following flags as
2126 you wish, separated by commas:
2130 \labelwidthstring 00.00.0000
2131 latex This converter runs some form of LaTeX.
2132 (This will make LyX's LaTeX error logs available.)
2136 \labelwidthstring 00.00.0000
2137 needaux Needs the LaTeX .aux file for the conversion.
2141 \labelwidthstring 00.00.0000
2145 \begin_layout Standard
2146 The following three variables are not really flags at all but take an argument
2156 \labelwidthstring 00.00.0000
2157 parselog If set, the converter's standard error will be redirected to a
2162 , and the script given as argument will be run as:
2164 script <infile.out >infile.log
2167 The argument may contain $$s.
2171 \labelwidthstring 00.00.0000
2172 resultdir The name of the directory in which the
2176 will dump the generated files.
2177 LyX will not create this directory, and it does not copy anything into
2178 it, though it will copy this directory to the destination.
2179 The argument may contain $$b, which will be replaced by the basename of
2180 the input and output files, respectively, when the directory is copied.
2183 that resultdir and usetempdir make no sense together.
2184 The latter will be ignored if the former is given.
2188 \labelwidthstring 00.00.0000
2189 resultfile Determines the output filename and may, again, contain $$b.
2190 Sensible only with resultdir, and optional even then; if not given, it
2191 defaults to `index'.
2195 \begin_layout Standard
2196 None of these last three are presently used in any of the converters that
2197 are installed with LyX.
2199 \begin_inset LatexCommand ref
2200 reference "sub:LyX-and-Literate"
2204 of the Extended Features guide for some examples of how you might use parselog.
2207 \begin_layout Section
2208 BibTeX and makeindex
2211 \begin_layout Standard
2212 Both the bibliography generating command (default
2216 ) and the index generating command (default
2229 As an alternative for
2241 \begin_layout Standard
2242 The command to enter is
2248 makeindex.sh -m $$lang
2251 \begin_layout Standard
2252 where the placeholder
2256 will be replaced by the chosen document (babel) language.
2260 \begin_layout Standard
2261 have installed the packages
2278 at a shell prompt for a help page.
2281 \begin_layout Section
2282 Plain text export options
2285 \begin_layout Standard
2286 \begin_inset VSpace bigskip
2292 \begin_layout Standard
2294 There are a couple of commands that can be used to
2295 \begin_inset Quotes eld
2299 \begin_inset Quotes erd
2302 exported plain text files.
2303 Note that LyX automatically detects and uses the best settings for your
2304 system at installation time, but you can modify them if you disagree with
2308 \begin_layout Description
2312 Plain text\InsetSpace ~
2316 This option defines the command used to produce better plain text tables
2321 UNIX-commands (refer to their manpages for more information about them).
2322 Setting this as empty tells LyX to use the internal (inferior) formatter.
2325 \begin_layout Description
2329 Plain text\InsetSpace ~
2334 With this command you can set the default line length of the plain text
2336 Setting it to 0 means endless lines.
2339 \begin_layout Section
2343 \begin_layout Standard
2344 There are a bunch of configuration options that are used for interaction
2345 with the external print command from LyX.
2346 Normally the defaults are fine: if, however, your print command takes different
2347 option names, you can modify them here.
2350 \begin_layout Subsection
2354 \begin_layout Standard
2355 You can change the colors used by LyX on-screen using the new
2360 Alternatively, if you're feeling particularly perverse you could use the
2365 bindable function (see the
2370 Input would have the format:
2373 \begin_layout Standard
2376 set-color LyXName X11Color
2379 \begin_layout Standard
2380 Here is a (partial) list of the functions and default colors:
2383 \begin_layout Standard
2385 \begin_inset Tabular
2386 <lyxtabular version="3" rows="10" columns="3">
2388 <column alignment="left" valignment="top" leftline="true" width="0pt">
2389 <column alignment="left" valignment="top" leftline="true" width="0pt">
2390 <column alignment="center" valignment="top" leftline="true" rightline="true" width="0pt">
2391 <row topline="true" bottomline="true">
2392 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2395 \begin_layout Standard
2410 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
2413 \begin_layout Standard
2428 <cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2431 \begin_layout Standard
2447 <row topline="true">
2448 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2451 \begin_layout Standard
2466 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2469 \begin_layout Standard
2484 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2487 \begin_layout Standard
2503 <row topline="true">
2504 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2507 \begin_layout Standard
2522 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2525 \begin_layout Standard
2540 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2543 \begin_layout Standard
2559 <row topline="true">
2560 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2563 \begin_layout Standard
2578 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2581 \begin_layout Standard
2596 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2599 \begin_layout Standard
2615 <row topline="true">
2616 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2619 \begin_layout Standard
2634 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2637 \begin_layout Standard
2652 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2655 \begin_layout Standard
2671 <row topline="true">
2672 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2675 \begin_layout Standard
2690 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2693 \begin_layout Standard
2703 fraction Lines, brackets, etc.
2708 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2711 \begin_layout Standard
2727 <row topline="true">
2728 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2731 \begin_layout Standard
2746 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2749 \begin_layout Standard
2755 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2758 \begin_layout Standard
2774 <row topline="true">
2775 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2778 \begin_layout Standard
2793 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2796 \begin_layout Standard
2802 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2805 \begin_layout Standard
2821 <row topline="true">
2822 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2825 \begin_layout Standard
2840 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2843 \begin_layout Standard
2849 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2852 \begin_layout Standard
2868 <row topline="true" bottomline="true">
2869 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2872 \begin_layout Standard
2887 <cell alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
2890 \begin_layout Standard
2900 selection background
2905 <cell alignment="left" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
2908 \begin_layout Standard
2931 \begin_layout Section
2932 The autodetected settings
2935 \begin_layout Standard
2936 \begin_inset LatexCommand label
2937 name "sec:autodetected"
2941 There are several items that are detected for you when you run
2948 \SpecialChar \menuseparator
2954 In this section, we list those which pertain to the user preferences.
2957 \begin_layout Description
2963 plaintext_roff_command
2978 , depending on what is available.
2981 \begin_layout Description
2994 plus a bunch of options.
2997 \begin_layout Description
3010 on systems (so-called System V) who have this command, and
3014 otherwise (BSD systems).
3017 \begin_layout Description
3023 print_spool_printerprefix
3034 , depending on whether
3045 \begin_layout Description
3062 fonts are found and LaTeX has support for these fonts built-in.
3063 You can set it manually if you only have the so-called
3070 \begin_layout Section
3074 \begin_layout Standard
3075 There are many other configuration options that can be used to customize
3077 We still need to document them here, but again, most should be fairly obvious.
3078 Please ask on the mailing lists if you need some more information; it may
3079 even prompt us to expand this section.
3082 \begin_layout Chapter
3083 Internationalizing LyX
3084 \begin_inset LatexCommand label
3092 \begin_layout Standard
3093 LyX supports using a translated interface.
3094 Last time we checked, LyX provided text in 14 languages together with the
3095 default English text.
3096 The language of choice is called your
3101 (For further reading on locale settings, see also the documentation for
3102 locale that comes with your operating system.
3103 For Linux, the manual page for locale(5) could be a good place to start).
3106 \begin_layout Standard
3107 Notice that these translations will work, but do contain a few flaws.
3108 In particular, all dialogs have been designed with the English text in
3109 mind, which means that some of the translated text will be too large to
3110 fit within the space allocated.
3111 This is only a display problem and will not cause any harm.
3112 Also, you will find that some of the translations do not define short-cut
3113 keys for everything.
3114 Sometimes, there are simply not enough free letters to do it.
3115 Other times, the translator just hasn't got around to doing it yet.
3116 Our localization team -- which you may wish to join -- will try to fix
3117 these shortcomings in future versions of LyX.
3120 \begin_layout Section
3121 Selecting an alternative language for the user interface
3124 \begin_layout Standard
3125 This feature is disabled by default, meaning that system default language
3127 To enable an alternative language, you have to set an appropriate environment
3135 for csh class shells
3150 with the two letter code (or four letter code, like
3154 for British English) for the language you want.
3160 Besides the user interface texts being translated, also the appropriate
3161 manuals will be presented under the Help menu -- if available.
3164 \begin_layout Standard
3165 On some systems, you may have to redefine
3177 , to override the system settings; their preference is in this order
3181 \begin_layout Standard
3182 The shell variable LANGUAGE has been disabled in LyX for technical reasons.
3188 , which corresponds to the way GNU
3193 Consult your system documentation.
3194 Normally, you'll want to put the appropriate line in a shell script run
3195 on start-up, so that the translation is on by default.
3196 Remember that this affects
3200 localized packages, not only LyX!
3203 \begin_layout Standard
3204 If LyX is configured and compiled with
3205 \begin_inset Quotes eld
3213 \begin_inset Quotes erd
3216 , this mechanism will not work.
3219 \begin_layout Section
3223 \begin_layout Subsection
3224 Translating the graphical user interface (text messages).
3227 \begin_layout Standard
3232 library to handle the internationalization of the interface.
3233 To have LyX speak your favorite language in all menus and dialogs, you
3238 -file for that language.
3239 When this is available, you'll have to generate a mo-file from it and install
3245 The process of doing all of this is explained in the documentation for
3250 , but in short, this is what you do (
3254 denotes the language code):
3257 \begin_layout Standard
3261 \begin_layout Standard
3273 \begin_layout Itemize
3276 LYX-SOURCE-DIR/po/lyx.pot
3289 doesn't exist, it can be remade with
3293 in that directory, or you can use an existing po-file for some other language
3297 \begin_layout Itemize
3304 \begin_layout Standard
3305 We recommend that you use Emacs to do this, since the
3309 distribution includes a nice mode that supports you in doing this.
3317 For some menu- and widget-labels, there are also shortcut keys that should
3319 Those keys are marked after a `|', and should be translated according to
3320 the words and phrases of the
3325 There is a tool named
3329 written in Prolog in
3331 LYX-SOURCE-DIR/development/tools/
3333 that may be useful to help determine short-cut keys.
3334 Note that XForms (version 0.86 at least) can't handle anything but 7-bit
3335 characters as shortcut keys.
3336 You should also fill also out the information at the beginning of the new
3341 -file with your email-address, etc., so people know where to reach you with
3342 suggestions and entertaining flames.
3345 \begin_layout Itemize
3354 This can be done with
3375 \begin_layout Itemize
3380 -file to your locale-tree, at the correct directory for application messages
3385 , and under the name
3394 /usr/local/share/locale/
3405 \begin_layout Standard
3409 \begin_layout Standard
3421 \begin_layout Standard
3422 Adding a new po-file to the
3426 of LyX involves altering the configure scripts and more, but the way
3430 works, you don't actually need the source-code of LyX to translate it---having
3446 \begin_layout Standard
3447 If you've written a translation file for a language that LyX does not currently
3448 support, feel free to submit it for inclusion by sending a patch.
3449 In this case, we recommend that you read the
3457 directory for more instructions.
3460 \begin_layout Subsubsection
3464 \begin_layout Standard
3465 Sometimes it turns out that one english message needs to be translated into
3466 different messages in the target language.
3467 One example is the message
3471 which has the german translation
3488 does not handle such ambigous translations.
3489 Therefore you have to add some context information to the message: Instead
3496 To[[as in 'From format x to format y']]
3500 To[[as in 'From page x to page y']].
3503 Now the two occurences of
3511 and can be translated correctly to
3526 \begin_layout Standard
3527 Of course the context information needs to be stripped off the original
3528 message when no translation is used.
3529 Therefore you have to put it in double square brackets at the end of the
3530 message (see the example above).
3531 The translation mechanism of LyX ensures that everything in double square
3532 brackets at the end of messages is removed before displaying the message.
3535 \begin_layout Subsection
3536 Translating the documentation.
3539 \begin_layout Standard
3540 The online documentation (in the
3547 -menu) can (and should!) be translated.
3548 If there are translated versions of the documentation available
3552 \begin_layout Standard
3553 As of February 2003, almost all of the docs have been translated into German
3559 has been translated into at least 12 other languages, with other translations
3561 The library of translated documents is growing rapidly.
3566 , and the locale is set accordingly, these will be used automagically by
3568 LyX looks for translated versions as
3582 denotes the language as set by the environmental variable
3587 If there are none, the default English versions will be displayed.
3588 Note that the translated versions must have the same filenames (
3592 above) as the original.
3593 If you feel up to translating the documentation (an excellent way to proof-read
3594 the original documentation BTW!), there are a few things you should do
3598 \begin_layout Itemize
3603 , the guide to writing LyX documentation.
3604 Pay special attention to the translator's section.
3607 \begin_layout Itemize
3608 Check out the documentation translation web page at
3609 \begin_inset LatexCommand url
3610 name "The LyX Developer's Web Site"
3611 target "http://www.devel.lyx.org"
3616 That way, you can find out which (if any) documents have already been translate
3617 d into your language.
3618 You can also find out who (if anyone) is organizing the effort to translate
3619 the documentation into your language.
3620 If no one is organizing the effort, please let us know that you're interested.
3623 \begin_layout Standard
3624 Once you get to actually translating, here's a few hints for you that may
3628 \begin_layout Itemize
3629 Join the documentation team! There is information on how to do that in
3638 elp\SpecialChar \menuseparator
3645 ), which by the way is the first document you should translate.
3648 \begin_layout Itemize
3649 Learn the typographic conventions for the language you are translating to.
3650 Typography is an ancient art and over the centuries, a great variety of
3651 conventions have developed throughout different parts of the world.
3652 Also study the professional terminology amongst typographers in your country.
3653 Inventing your own terminology will only confuse the users.
3656 (Warning! Typography is addictive!)
3659 \begin_layout Itemize
3660 Make a copy of the document.
3661 This will be your working copy.
3662 You can use this as your personal translated help-file by placing it in
3670 \begin_layout Itemize
3671 Sometimes the original document (from the LyX-team) will be updated.
3672 Use the ViewCVS tool available at
3673 \begin_inset LatexCommand htmlurl
3674 target "http://www.lyx.org/viewcvs.cgi/lyxdoc/"
3678 to see what has been changed
3682 \begin_layout Standard
3683 Alternatively, you can keep a copy of the latest version of the English
3684 document which you've translated.
3690 That way you can easily see which parts of the translated document need
3694 \begin_layout Itemize
3695 If you ever find an error in the original document, fix it and notify the
3696 rest of the documentation team of the changes! (You didn't forget to join
3697 the documentation team did you?)
3700 \begin_layout Section
3701 International Keyboard Support
3704 \begin_layout Standard
3707 [Editor's Note: The following section is by
3715 It needs to be fixed to conform to the new Documentation Style sheet and
3716 to make use of the new v1.0 features.
3717 The whole thing also needs to be merged with the section following it.-jw]
3720 \begin_layout Subsection
3721 Defining Own Keymaps: Keymap File Format
3724 \begin_layout Standard
3725 Let's look at a keyboard definition file a little closer.
3726 It is a plain text file defining
3729 \begin_layout Itemize
3730 key-to-key or key-to-string translations
3733 \begin_layout Itemize
3737 \begin_layout Itemize
3738 dead keys exceptions
3741 \begin_layout Standard
3742 To define key-to-key or key-to-string translation, use this command:
3745 \begin_layout Quotation
3761 \begin_layout Standard
3766 is the key to be translated and
3770 is the string to be inserted into the document.
3771 To define dead keys, use:
3774 \begin_layout Quotation
3790 \begin_layout Standard
3800 The following dead keys are supported (shortcut name is in parentheses):
3803 \begin_layout Quotation
3811 \begin_layout Quotation
3817 \begin_layout Quotation
3823 \begin_layout Quotation
3829 \begin_layout Quotation
3835 \begin_layout Quotation
3842 \begin_layout Standard
3854 \begin_layout Quotation
3860 \begin_layout Quotation
3867 \begin_layout Standard
3879 \begin_layout Quotation
3885 \begin_layout Quotation
3891 \begin_layout Quotation
3898 \begin_layout Standard
3910 \begin_layout Quotation
3917 \begin_layout Standard
3929 \begin_layout Quotation
3935 \begin_layout Quotation
3936 hungarian umlaut (hug)
3941 \begin_layout Quotation
3947 \begin_layout Quotation
3954 \begin_layout Standard
3966 \begin_layout Standard
3967 Since in many international keyboards there are exceptions to what some
3968 dead keys should do, you can define them using
3971 \begin_layout Quotation
3980 deadkey key outstring
3983 \begin_layout Standard
3984 For example, on Slovak keyboard, if you enter caron-o, it generates circumflex-o
3988 \begin_layout Quotation
4002 \begin_layout Standard
4003 to make it work correctly.
4004 Also, you have to define as exceptions dead keys over i and j, to remove
4005 the dot from them before inserting an accent mark.
4006 I will change this when the time comes, but so far I haven't had time.
4009 \begin_layout Standard
4010 Oh, and about characters: backslash is escaped, so to enter it, you'll need
4016 have different meaning.
4021 marks comments, quotes start and end LaTeX-style commands.
4022 To enter quote, you'll need to use
4041 \begin_layout Standard
4042 If you make a keyboard description file that works for your language, please
4043 mail it to me, so I can include it in the next keymap distribution.
4046 \begin_layout Standard
4047 More keywords will be supported in keymap configuration file in future,
4051 \begin_layout Itemize
4069 \begin_layout Itemize
4084 an external keymap translation program
4087 \begin_layout Standard
4088 Also, it should look into
4092 file for defaults, too (for example, a
4098 option to include default keyboard).
4101 \begin_layout Section
4102 International Keymap Stuff
4103 \begin_inset LatexCommand label
4111 \begin_layout Standard
4112 The next two sections describe the
4124 file syntax in detail.
4125 These sections should help you design your own key map if the ones provided
4126 do not meet your needs.
4129 \begin_layout Subsection
4133 \begin_layout Standard
4142 file maps keystrokes to characters or strings.
4143 As the name suggests it sets a keyboard mapping.
4168 are described in this section.
4172 \labelwidthstring 00.00.0000
4179 Map a character to a string
4182 \begin_layout LyX-Code
4197 \begin_layout Standard
4230 the double-quote (")
4247 must be escaped with a preceding backslash (
4258 \begin_layout Standard
4265 statement to cause the symbol
4271 to be output for the keystroke
4280 \begin_layout LyX-Code
4287 \labelwidthstring 00.00.0000
4294 Specify an accent character
4297 \begin_layout LyX-Code
4306 \begin_layout Standard
4307 This will make the cha
4345 This is the dead key
4349 \begin_layout Standard
4356 refers to a key that does not produce a character by itself, but when followed
4357 with another key, produces the desired accent character.
4358 For example, a German characte
4360 r with an umlaut like
4370 can be produced in this manner.
4379 \begin_layout Standard
4392 and then another key not in
4409 followed by the other, unallowed key, as output.
4418 cancels a dead key, so if
4435 , the cursor will not go one position backwards but will instead cancel
4452 might have had on the next keystroke.
4456 \begin_layout Standard
4457 The following example specifies that the character ' is to be an acute accent,
4458 allowed on the characters a, e, i, o, u, A, E, I, O, and U:
4461 \begin_layout LyX-Code
4464 kmod ' acute aeiouAEIOU
4468 \labelwidthstring 00.00.0000
4473 Specify an exception to the accent character
4476 \begin_layout LyX-Code
4485 \begin_layout Standard
4486 This defines an exce
4527 have been assigned a keystroke with a previous
4550 must not belong in the
4602 If such a declaration does not exist in
4658 \begin_layout Standard
4659 The following command produces causes äi to be produced when you enter acute-i
4663 \begin_layout LyX-Code
4678 \labelwidthstring 00.00.0000
4683 Combine two accent characters
4686 \begin_layout LyX-Code
4692 accent1 accent2 allowed
4695 \begin_layout Standard
4696 This one is getting pretty esoteric.
4697 It allows you to combine the effect
4778 \begin_layout Standard
4779 Consider this example from the
4788 \begin_layout LyX-Code
4791 kmod ; acute aeioyvhAEIOYVH
4795 kcomb acute umlaut iyIY
4798 \begin_layout Standard
4799 This allows you to press
4805 and get the effect of
4822 in this case cancels the last dead key, so if you press
4839 \begin_layout Subsection
4843 \begin_layout Standard
4850 mapping is performed, a
4857 file maps the strings that the symbols generate to characters in the current
4859 The LyX distribution currently includes at least the
4874 \begin_layout Standard
4881 file is a sequence of declarations of the form
4884 \begin_layout LyX-Code
4897 \begin_layout Standard
4898 For example, in order to map
4906 to the corresponding character in the iso-8859-1 set (233), the following
4910 \begin_layout LyX-Code
4918 \begin_layout Standard
4941 the same character can apply to more than one string.
4952 \begin_layout LyX-Code
4978 \begin_layout Standard
4979 If LyX cannot find a mapping for the string produced by the keystroke or
4980 a deadkey sequence, it will check if it looks like an accented char and
4981 try to draw an accent over the character on screen.
4984 \begin_layout Subsection
4988 \begin_layout Standard
4989 There is a second way to add support for international characters through
4990 so-called dead-keys.
4991 A dead-key works in combination with a letter to produce an accented character.
4992 Here, we'll explain how to create a really simple dead-key to illustrate
4996 \begin_layout Standard
4997 Suppose you happen to need the circumflex character,
4998 \begin_inset Quotes eld
5002 \begin_inset Quotes erd
5010 -key [a.k.a.\InsetSpace ~
5015 ] to the LyX command
5024 Now, whenever you type the
5028 -key followed by a letter, that letter will have a circumflex accent on
5030 For example, the sequence
5031 \begin_inset Quotes eld
5039 \begin_inset Quotes erd
5042 produces the letter:
5043 \begin_inset Quotes eld
5047 \begin_inset Quotes erd
5051 If you tried to type
5052 \begin_inset Quotes eld
5060 \begin_inset Quotes erd
5063 , however, LyX will complain with a beep, since a
5064 \begin_inset Quotes eld
5072 \begin_inset Quotes erd
5075 never takes a circumflex accent.
5080 after a dead-key produces the bare-accent.
5081 Please note this last point! If you bind a key to a dead-key, you'll need
5082 to rebind the character on that key to yet another key.
5087 to a cedilla is a bad idea, since you'll only get cedillas instead of commas.
5090 \begin_layout Standard
5091 One common way to bind dead-keys is to use
5103 in combination with an accent, like
5104 \begin_inset Quotes eld
5112 \begin_inset Quotes erd
5116 \begin_inset Quotes eld
5124 \begin_inset Quotes erd
5128 \begin_inset Quotes eld
5136 \begin_inset Quotes erd
5140 Another way involves using
5148 [remember them from section?] to set up the special
5157 acts in some ways just like
5161 and permits you to bind keys to accented characters.
5162 You can also turn keys into dead-keys by binding them to something like
5167 and then binding this symbolic key to the corresponding LyX command.
5171 \begin_layout Standard
5176 : This is exactly what I do in my
5194 and a bunch of these
5195 \begin_inset Quotes eld
5203 \begin_inset Quotes erd
5206 symbolic keys bound such things as
5217 This is how I produce my accented characters.
5222 You can make just about anything into the
5230 keys, a spare function key, etc.
5231 As for the LyX commands that produce accents, check the entry for
5240 You'll find the complete list there.
5243 \begin_layout Subsection
5244 Saving your Language Configuration
5247 \begin_layout Standard
5248 \begin_inset LatexCommand label
5253 You can edit your preferences so that your desired language environment
5254 is automatically configured when LyX starts up, via the
5259 dit\SpecialChar \menuseparator
5269 \begin_layout Chapter
5270 Installing New Document Classes, Layouts, and Templates
5271 \begin_inset LatexCommand label
5272 name "chap:textclass"
5280 \begin_layout Standard
5281 Installing New Document Classes
5289 \begin_layout Standard
5290 In this chapter, we describe the procedures for creating and installing
5291 new LyX layout and template files, as well as offer a refresher on correctly
5292 installing new LaTeX document classes.
5293 Some definitions: a document class is a LaTeX file (usually ending in
5301 ) which describes the format of a document such as an article, report, journal
5303 and all the commands needed to realize that format.
5304 A layout file is a LyX file which corresponds to a LaTeX document class
5305 and which tells LyX how to
5306 \begin_inset Quotes eld
5310 \begin_inset Quotes erd
5313 things on the screen to make the display look something like the final
5315 More precisely, a layout file describes a
5316 \begin_inset Quotes eld
5320 \begin_inset Quotes erd
5323 which is the internal construct LyX uses to render the screen display.
5325 \begin_inset Quotes eld
5329 \begin_inset Quotes erd
5333 \begin_inset Quotes eld
5337 \begin_inset Quotes erd
5340 can be used somewhat interchangeably, but it is better to refer to the
5341 file as the layout, and the thing living in LyX's memory as the text class.
5342 A template file is simply a LyX document which contains a set of predefined
5343 entries for a given document class which are generally required for that
5345 Templates are especially useful for things like journal manuscripts which
5346 are to be submitted electronically.
5349 \begin_layout Section
5350 Installing a new LaTeX package
5353 \begin_layout Standard
5354 Some installations may not include a LaTeX package that you would like to
5356 For example, you might need FoilTeX, a common (and very powerful) package
5357 for preparing slides or viewgraphs for overhead projectors.
5358 Here are the formal steps involved in getting the package up and running
5359 if you are using teTeX or some other web2c based distribution.
5363 \begin_layout Enumerate
5364 Get the package from CTAN or wherever.
5368 \begin_layout Standard
5371 Inventory of your LaTeX configuration
5373 manual for details of what CTAN is and where supported document classes
5382 \begin_layout Enumerate
5387 (this usually lives in the directory
5391 , though you can run
5396 It describes how to add a local
5400 directory; follow the instructions.
5401 You need to insert the name of your local
5414 is a logical place to install software that did not come with your distribution
5420 Usually, you will have to modify only two things:
5424 \begin_layout Enumerate
5429 to the directory you chose; e.g.
5434 TEXMFLOCAL = /usr/local/texmf
5437 \begin_layout Enumerate
5451 TEXMF = {$HOMETEXMF,!!$TEXMFLOCAL,!!$TEXMFMAIN}
5455 \begin_layout Enumerate
5466 You must follow the directory structure of your existing
5470 directory (for example, latex packages should go under
5472 /usr/local/texmf/tex/latex/
5477 \begin_layout Enumerate
5478 Install the package.
5479 For example, you would unpack the FoilTeX tarball and create
5481 /usr/local/texmf/tex/latex/foiltex
5488 directory contains various files.
5491 \begin_layout Enumerate
5499 /usr/local/texmf/ls-R
5504 \begin_layout Enumerate
5505 From within LyX, do:
5510 ools\SpecialChar \menuseparator
5521 \begin_layout Standard
5522 Now you should see your new package---for example
5531 ayout\SpecialChar \menuseparator
5546 Note that there are simpler ways of installing packages: you can add a
5547 link to the new package directory in the system LaTeX directory (
5551 , don't forget to then run
5555 ), or sometimes simply set the
5559 environment variable to include the new package.
5560 However, the formal procedure described in
5564 is guaranteed to work, so you should follow it unless circumstances absolutely
5565 prevent it: such as, when you don't have superuser access.
5568 \begin_layout Section
5572 \begin_layout Standard
5573 This section describes how to write and install your own LyX layout files
5574 (also known as text classes) and walks through the
5578 text class format as an example.
5583 files describe what paragraph styles are available for a given document
5584 class and how LyX should display them.
5585 We try to provide a thorough description of the process here; however,
5586 there are so many different types of documents supported by LaTeX classes
5587 we can't hope to cover every different possibility or problem you might
5592 \begin_layout Standard
5593 When you plan to write a new layout, it is extremely helpful to look at
5594 the example layouts distributed with LyX.
5595 If you use a nice LaTeX document class that might be of interest for others,
5596 too, and have a nice corresponding LyX layout, feel free to contribute
5597 the stuff to us, so we may put it into the distribution.
5600 \begin_layout Standard
5601 All the tags described in this chapter are case-insensitive; this means
5614 are really the same command.
5615 The possible values are printed in brackets after the feature's name.
5616 The default value if a feature isn't specified inside a text class-description
5624 If the argument has a datatype like
5625 \begin_inset Quotes eld
5629 \begin_inset Quotes erd
5633 \begin_inset Quotes eld
5637 \begin_inset Quotes erd
5640 , the default is shown like this:
5650 \begin_layout Subsection
5651 Supporting new document classes
5654 \begin_layout Standard
5655 There are two situations you are likely to encounter when wanting to support
5656 a new LaTeX document class, involving LaTeX2e class (
5667 \begin_layout Subsection
5675 \begin_layout Standard
5676 If your new document class is provided as a style file that is used in conjuncti
5677 on with an existing, supported document class, start by copying the existing
5678 class's layout file into your local directory.
5679 For the sake of example we'll assume that the style file is called
5683 and it is meant to be used with
5687 which is a standard class.
5690 \begin_layout LyX-Code
5691 cp report.layout ~/.lyx/layouts/myclass.layout
5694 \begin_layout Standard
5699 and change the line:
5702 \begin_layout LyX-Code
5705 DeclareLaTeXClass{report}
5708 \begin_layout Standard
5712 \begin_layout LyX-Code
5715 DeclareLaTeXClass[report, myclass.sty]{report (myclass)}
5718 \begin_layout Standard
5722 \begin_layout LyX-Code
5732 \begin_layout Standard
5733 near the top of the file.
5736 \begin_layout Standard
5737 Start LyX and select
5742 ools\SpecialChar \menuseparator
5750 Restart LyX and try creating a new document.
5755 " as a document class option in the
5760 ocument\SpecialChar \menuseparator
5768 It is likely that some of the sectioning commands and such will differ
5769 from how the base class
5773 \begin_layout Standard
5783 works, so you can fiddle around with the settings for the different sections
5785 See below for more discussion on this.
5788 \begin_layout Subsection
5796 \begin_layout Standard
5797 In this case, you will probably have to
5798 \begin_inset Quotes eld
5802 \begin_inset Quotes erd
5806 We strongly suggest copying an existing layout file which uses a similar
5807 LaTeX class and modifying it if at all possible.
5808 At least use an existing file as a starting point so you can find out what
5809 items you need to worry about.
5810 Again, the specifics are covered below.
5813 \begin_layout Section
5814 Declaring a new text class
5817 \begin_layout Standard
5818 When it's finally time to get your hands dirty and create or edit your own
5819 layout file, the following sections describe what you're up against.
5820 Our advice is to go slowly, save and test often, listen to soothing music,
5821 and enjoy one or two of your favorite adult beverages; more if you are
5822 getting particularly stuck.
5823 It's really not that hard, except that the multitude of options can become
5824 overwhelming if you try to do to much in one sitting.
5825 Go have another adult beverage, just for good measure.
5828 \begin_layout Standard
5832 \begin_layout Standard
5833 Lines in a layout file which begin with a
5838 There is one exception to this rule: all layouts should begin with lines
5842 \begin_layout LyX-Code
5845 #% Do not delete the line below; configure depends on this
5848 \begin_layout LyX-Code
5853 DeclareLaTeXClass{article}
5856 \begin_layout Standard
5857 The second line is used when you configure LyX.
5858 The layout file is read by the LaTeX script
5862 , in a special mode where
5867 The first line is just a LaTeX comment, and the second one contains the
5868 declaration of the text class.
5869 If these lines appear in a file named
5873 , then they define a text class of name
5877 (the name of the layout file) which uses the LaTeX document class
5881 (the default is to use the same name as the layout).
5883 \begin_inset Quotes eld
5887 \begin_inset Quotes erd
5890 that appears above is used as a description of the text class in the
5895 ocument\SpecialChar \menuseparator
5905 \begin_layout Standard
5906 Let's assume that you wrote your own text class that uses the
5910 documentclass, but where you changed the appearance of the section headings.
5911 If you put it in a file
5915 , the header of this file should be:
5918 \begin_layout LyX-Code
5921 #% Do not delete the line below; configure depends on this
5924 \begin_layout LyX-Code
5929 DeclareLaTeXClass[article]{article (with my own headings)}
5932 \begin_layout Standard
5933 This declares a text class
5937 , associated with the LaTeX document class
5942 \begin_inset Quotes eld
5945 article (with my own headings)
5946 \begin_inset Quotes erd
5950 If your text class depends on several packages, you can declare it as:
5953 \begin_layout LyX-Code
5956 #% Do not delete the line below; configure depends on this
5959 \begin_layout LyX-Code
5964 DeclareLaTeXClass[article,foo.sty]{article (with my own headings)}
5967 \begin_layout Standard
5968 This indicates that your text class uses the foo.sty package.
5969 Finally, it is also possible to declare classes for DocBook code.
5970 Typical declarations will look like
5973 \begin_layout LyX-Code
5976 #% Do not delete the line below; configure depends on this
5979 \begin_layout LyX-Code
5984 DeclareDocBookClass[article]{SGML (DocBook article)}
5987 \begin_layout Standard
5988 Note that these declarations can also be given an optional parameter declaring
5989 the name of the document class (but not a list).
5992 \begin_layout Standard
5993 When the text class has been modified to your taste, all you have to do
5994 is to copy it either in
6007 ools\SpecialChar \menuseparator
6015 Exit LyX and restart it; then your new text class should be available along
6019 \begin_layout Subsection
6023 \begin_layout Standard
6024 The first non-comment line must contain the file format number:
6027 \begin_layout Description
6038 ] This tag was introduced with LyX 1.4.0 (layout files of LyX 1.3.x and earlier
6039 don't have an explicit file format).
6040 The file format that is documented here is
6047 \begin_layout Subsection
6048 General text class parameters
6051 \begin_layout Standard
6052 These are the general parameters which describe the form of the entire document:
6055 \begin_layout Standard
6059 \begin_layout Standard
6071 \begin_layout Description
6085 ] Whether the class-default should have one or two columns.
6086 Can be changed in the
6091 ocument\SpecialChar \menuseparator
6099 This setting (same goes for
6103 , too) is important: if your text class has two columns by default but you
6104 forget to set it correctly, the
6112 be output when you select
6121 ocument\SpecialChar \menuseparator
6129 \begin_layout Description
6143 ] Whether the class-default should be printing on one or both sides of the
6145 Can be changed in the
6150 ocument\SpecialChar \menuseparator
6160 \begin_layout Description
6174 ] The class default pagestyle.
6175 Can be changed in the
6180 ocument\SpecialChar \menuseparator
6190 \begin_layout Description
6194 ClassOptions\SpecialChar \ldots{}
6198 This section describes various global options supported by the document
6200 See Section\InsetSpace ~
6202 \begin_inset LatexCommand ref
6203 reference "sec:classoptions"
6210 \begin_layout Description
6228 ] Whether the class already provides the feature
6233 A feature is in general the name of a package (amsmath, makeidx, \SpecialChar \ldots{}
6235 macro (url, boldsymbol,\SpecialChar \ldots{}
6236 ); the complete list of supported features is unfortunat
6240 \begin_layout Description
6247 This is used to describe the default font of the document.
6248 See Section\InsetSpace ~
6250 \begin_inset LatexCommand ref
6251 reference "sec:fonts"
6258 \begin_layout Description
6269 ] This is the style that will be assigned to new paragraphs, usually
6274 This will default to the first defined style if not given, but you are
6275 highly encouraged to use this directive.
6278 \begin_layout Description
6295 ] Indicates what kind of markup is used to define the title of a document.
6300 means that the macro with name
6304 will be inserted after the last layout which has
6305 \begin_inset Quotes eld
6313 \begin_inset Quotes erd
6321 corresponds to the case where the block of paragraphs which have
6322 \begin_inset Quotes eld
6330 \begin_inset Quotes erd
6333 should be enclosed into the
6342 \begin_layout Description
6353 ] The name of the command/environment mentionned above.
6356 \begin_layout Description
6360 Preamble\SpecialChar \ldots{}
6364 A set of macro definitions that will be output at the beginning of the
6366 Use this for global definitions.
6369 \begin_layout Description
6376 As its name implies, this command allows you to include another layout
6377 definition file within yours to avoid duplicating commands.
6378 Common examples are the standard layout files, for example,
6382 , which contains most of the basic layouts.
6385 \begin_layout Description
6389 Style\SpecialChar \ldots{}
6393 This sequence defines a new style.
6394 If the style already exists, it will redefine some of its parameters instead.
6395 See Section\InsetSpace ~
6397 \begin_inset LatexCommand ref
6398 reference "sec:style"
6405 \begin_layout Description
6412 This command deletes an existing style.
6413 This is particularly useful when you want to suppress a style that has
6414 be defined in an input file.
6417 \begin_layout Description
6421 Float\SpecialChar \ldots{}
6425 This sequence defines a new float.
6426 See Section\InsetSpace ~
6428 \begin_inset LatexCommand ref
6429 reference "sec:floats"
6436 \begin_layout Description
6443 This command deletes an existing float.
6444 This is particularly useful when you want to suppress a float that has
6445 be defined in an input file.
6448 \begin_layout Description
6452 InsetLayout\SpecialChar \ldots{}
6456 This section (re-)defines the layout of an inset.
6457 It can be applied to an existing inset of to a new, user-defined inset,
6458 e.g., a new character style.
6459 See Section\InsetSpace ~
6461 \begin_inset LatexCommand ref
6462 reference "sec:charstyle"
6469 \begin_layout Description
6473 Counter\SpecialChar \ldots{}
6477 This sequence defines a new counter.
6478 See Section\InsetSpace ~
6480 \begin_inset LatexCommand ref
6481 reference "sec:counter"
6488 \begin_layout Standard
6492 \begin_layout Standard
6504 \begin_layout Subsection
6512 \begin_layout Standard
6513 \begin_inset LatexCommand label
6514 name "sec:classoptions"
6522 section can contain the following entries:
6525 \begin_layout Description
6536 ] The list of available font sizes for the document's main font, separated
6538 \begin_inset Quotes eld
6546 \begin_inset Quotes erd
6552 \begin_layout Description
6561 string="empty|plain|headings|fancy"
6563 ] The list of available page styles, separated by
6564 \begin_inset Quotes eld
6572 \begin_inset Quotes erd
6578 \begin_layout Description
6589 ] Some document class options, separated by a comma, that will be added
6590 to the optional part of the
6599 \begin_layout Subsection
6600 Specific Paragraph Layouts
6603 \begin_layout Standard
6604 \begin_inset LatexCommand label
6609 A paragraph layout description looks like this
6613 \begin_layout Standard
6614 Note that this will either define a new layout or modify an existing one.
6622 \begin_layout LyX-Code
6629 \begin_layout LyX-Code
6633 \begin_layout LyX-Code
6637 \begin_layout Standard
6638 where the following commands are allowed:
6641 \begin_layout Standard
6645 \begin_layout Standard
6657 \begin_layout Description
6668 This is used to copy all the features of an existing layout into the current
6673 \begin_layout Description
6685 , Command, Environment, Item_Environment,
6691 ] How the layout should be translated into LaTeX.
6696 means nothing special.
6709 {\SpecialChar \ldots{}
6724 }\SpecialChar \ldots{}
6748 is generated for each paragraph of this environment.
6761 is passed as an argument to the environment.
6766 can be defined in the
6771 ayout\SpecialChar \menuseparator
6785 is perhaps a bit misleading, since these rules apply to SGML classes, too.
6786 Visit the SGML class files for specific examples.
6789 \begin_layout Description
6800 If 1, marks the layout as being part of a title block (see also the
6811 \begin_layout Description
6818 The name of the corresponding LaTeX stuff.
6819 Either the environment or command name.
6822 \begin_layout Description
6829 The optional parameter for the corresponding
6836 This parameter cannot be changed from within LyX.
6839 \begin_layout Description
6850 ] The number of optional arguments that can be used with this layout.
6851 This is useful for things like section headings, and only makes sense with
6855 \begin_layout Description
6867 , Manual, Dynamic, First_Dynamic, Right_Address_Box
6871 The kind of margin that the layout has on the left side.
6876 just means a fixed margin.
6881 means that the left margin depends on the string entered in the
6886 dit\SpecialChar \menuseparator
6891 aragraph\InsetSpace ~
6895 This is used to typeset nice lists without tabulators.
6900 means that the margin depends on the size of the label.
6901 This is used for automatic enumerated headlines.
6902 It is obvious that the headline
6903 \begin_inset Quotes eld
6906 5.4.3.2.1 Very long headline
6907 \begin_inset Quotes erd
6910 must have a wider left margin (as wide as
6911 \begin_inset Quotes eld
6915 \begin_inset Quotes erd
6918 plus the space) than
6919 \begin_inset Quotes eld
6922 3.2 Very long headline
6923 \begin_inset Quotes erd
6926 , even if other word processors are not able to do this.
6931 is similar, but only the very first row of the paragraph is dynamic, while
6932 the others are static; this is used, for example, for descriptions.
6937 means the margin is chosen in a way that the longest row of this paragraph
6938 fits to the right margin.
6939 This is used to typeset an address on the right edge of the page.
6942 \begin_layout Description
6959 ] Whether the following Paragraph is allowed to indent its very first row.
6964 means that it is not allowed to do so,
6968 means it could do so if it wants to.
6971 \begin_layout Description
6982 ] The indent of the very first line of a paragraph.
6983 The argument is passed as a string.
6988 means that the paragraph is indented with the width of
6997 You can get a negative width by prefixing the string with
7002 This way was chosen so that the look is the same with each used screen
7008 will be fixed for a certain layout.
7009 The exception is Standard layout, since the indentation of a Standard layout
7010 paragraph can be prohibited with
7015 Also, Standard layout paragraphs inside environments use the
7019 of the environment, not their native one.
7020 For example, Standard paragraphs inside an enumeration are not indented.
7023 \begin_layout Description
7034 ] LyX allows to choose either
7035 \begin_inset Quotes eld
7039 \begin_inset Quotes erd
7043 \begin_inset Quotes eld
7047 \begin_inset Quotes erd
7050 to typeset a document.
7052 \begin_inset Quotes eld
7056 \begin_inset Quotes erd
7059 is chosen, this value is completely ignored.
7061 \begin_inset Quotes eld
7065 \begin_inset Quotes erd
7068 is chosen, the parindent of a LaTeXtype
7069 \begin_inset Quotes eld
7073 \begin_inset Quotes erd
7076 layout is ignored and all paragraphs are additionally separated by this
7078 The vertical space is calculated with
7080 value*DefaultHeight()
7086 is the height of a row with the normal font.
7087 This way, the look stays the same with different screen fonts.
7090 \begin_layout Description
7101 ] The vertical space with which the very first of a chain of paragraphs
7102 with this layout is separated from the previous paragraph.
7103 If the previous paragraph has another layout, the separations are not simply
7104 added, but the maximum is taken.
7107 \begin_layout Description
7122 for the very last paragraph.
7125 \begin_layout Description
7136 ] The vertical space between two paragraphs of this layout.
7139 \begin_layout Description
7150 ] This is an extra space between the paragraphs of an environment layout.
7151 If you put other layouts into an environment, each is separated with the
7157 But the whole items of the environment are additionally separated with
7166 \begin_layout Description
7177 ] If you put layouts into environments, the leftmargins are not simply added,
7178 but added with a factor
7179 \begin_inset Formula $\frac{4}{depth+4}$
7183 Note that this parameter is also used when the border is defined as
7192 Then it is added to the manual or dynamic border.
7193 This string has the same meaning as for
7200 \begin_layout Description
7218 \begin_layout Description
7230 , Manual, Static, Top_Environment,
7232 Centered_Top_Environment, Sensitive,
7241 means the label is the very first word (up to the first real blank).
7246 means it is defined in the layout (see
7257 Centered_Top_Environment
7259 are special cases of
7264 The label will be printed above the paragraph, but only at the top of an
7265 environment or the top of a chain of paragraphs with this layout.
7266 Usage is for example the
7275 This is also the case for
7279 labels with latex type
7283 , in order to make layouts for theorems work correctly.
7288 is a special case for the caption-labels
7289 \begin_inset Quotes eld
7293 \begin_inset Quotes erd
7297 \begin_inset Quotes eld
7301 \begin_inset Quotes erd
7309 means the (hardcoded) label string depends on the kind of float.
7314 label type defines automatically numbered labels.
7317 \begin_layout Description
7330 The name of the counter for automatic numbering (see Section\InsetSpace ~
7332 \begin_inset LatexCommand ref
7333 reference "sec:counter"
7338 This must be given if
7351 \begin_layout Description
7362 ] The horizontal space between the label and the text body.
7363 Only used for labels that are not above the text body.
7366 \begin_layout Description
7373 [float=0] The vertical space between the label and the text body.
7374 Only used for labels that are above the text body (
7380 Centered_Top_Environment
7385 \begin_layout Description
7396 ] The string used for a label with a
7405 this string is also used as a suggestion for the
7409 that can be set in the
7414 dit\SpecialChar \menuseparator
7419 aragraph\InsetSpace ~
7429 is set, this string can be contain the special formatting commands described
7430 in Section\InsetSpace ~
7432 \begin_inset LatexCommand ref
7433 reference "sec:counter"
7438 For the sake of backwards compatibility, the string
7446 will be replaced by the expanded
7457 This feature is now obsolete and should be replaced by the mechanisms of
7458 Section\InsetSpace ~
7460 \begin_inset LatexCommand ref
7461 reference "sec:counter"
7468 \begin_layout Description
7479 ] This is used inside the appendix instead of
7500 \begin_layout Description
7507 The level of the style in the table of contents.
7508 This is used for automatic numbering of section headings.
7511 \begin_layout Description
7523 , Box, Filled_Box, Static
7525 ] The type of label that stands at the end of the paragraph (or sequence
7548 \begin_inset Quotes eld
7552 \begin_inset Quotes erd
7564 ) is a white (resp.\InsetSpace ~
7565 black) square suitable for end of proof markers,
7569 is an explicit text string.
7572 \begin_layout Description
7583 ] The string used for a label with a
7595 \begin_layout Description
7607 , left, right, center
7609 ] Paragraph alignment.
7612 \begin_layout Description
7624 , left, right, center
7631 Some LaTeX styles prohibit certain alignments, since those wouldn't make
7633 For example a right-aligned or centered enumeration isn't possible.
7636 \begin_layout Description
7650 ] With this parameter the
7655 \begin_inset Quotes eld
7658 Vertical space above
7659 \begin_inset Quotes erd
7667 dit\SpecialChar \menuseparator
7672 aragraph\InsetSpace ~
7675 dialog can be set when initializing a paragraph with this layout
7679 \begin_layout Standard
7682 Note from Jean-Marc:
7684 I'm not sure that this setting has much use, and it should probably be
7685 removed in later versions.
7694 \begin_layout Description
7715 \begin_layout Description
7729 ] Whether fragile commands in this layout should be
7738 \begin_layout Description
7755 ] Whether newlines are translated into LaTeX newlines (
7764 The translation can be switched off to allow more comfortable LaTeX editing
7768 \begin_layout Description
7782 ] Whether the contents of this paragraph should be output in raw form, meaning
7783 without special translations that LaTeX would require.
7784 This somehow replaces the older
7791 \begin_layout Description
7805 ] Usually LyX doesn't allow you to insert more than one space between words,
7806 since a space is considered as the separation between two words, not a
7807 character or symbol of its own.
7808 This is a very fine thing but sometimes annoying, for example when typing
7809 program code or plain LaTeX code.
7815 Note that LyX will create protected blanks for the additional blanks when
7816 in another mode than LaTeX-mode.
7819 \begin_layout Description
7833 ] Usually LyX does not allow you to leave a paragraph empty, since it would
7834 lead to empty LaTeX output.
7835 There are some cases where this could be desirable however: in a letter
7836 template, the required fields can be provided as empty fields, so that
7837 people do not forget them; in some special classes, a layout can be used
7838 as some kind of break, which does not contain actual text.
7841 \begin_layout Description
7853 , onehalf, double, other
7859 ] This defines what the default spacing should be in the layout.
7872 correspond respectively to a multiplier value of 1, 1.25 and 1.667.
7873 If you specify the argument
7877 , then you should also provide a numerical argument which will be the actual
7879 Note that, contrary to other parameters,
7883 implies the generation of specific LaTeX code, using the package
7890 \begin_layout Description
7897 The font used for both the text body
7902 See section\InsetSpace ~
7904 \begin_inset LatexCommand ref
7905 reference "sec:fonts"
7910 Note that defining this font automatically defines the
7917 \begin_layout Description
7924 The font used for the text body .
7925 See section\InsetSpace ~
7927 \begin_inset LatexCommand ref
7928 reference "sec:fonts"
7935 \begin_layout Description
7942 The font used for the label.
7943 See section\InsetSpace ~
7945 \begin_inset LatexCommand ref
7946 reference "sec:fonts"
7953 \begin_layout Description
7957 Preamble\SpecialChar \ldots{}
7961 A set of macro definitions that will be output at the beginning of the
7962 LaTeX files when the layout is used.
7963 Use this to define the macros needed by this particular layout.
7966 \begin_layout Description
7973 the name of a style which preamble should be output
7977 the one mentionned above.
7978 This allows to ensure some ordering of the preamble snippets when macros
7979 definitions depend on one another
7983 \begin_layout Standard
7984 Note that, besides that functionality, there is no way to ensure any ordering
7986 The ordering that you see in a given version of LyX may change without
7987 warning in later versions.
7995 \begin_layout Standard
7999 \begin_layout Standard
8011 \begin_layout Subsection
8015 \begin_layout Standard
8016 \begin_inset LatexCommand label
8021 Since version 1.3.0 of LyX, it is necessary to define the floats (
8029 , \SpecialChar \ldots{}
8030 ) in the text class itself.
8031 If you are looking here to learn how to upgrade an existing text class,
8032 it will probably turn out that all you have to do is to add
8035 \begin_layout LyX-Code
8039 \begin_layout Standard
8040 at a reasonable location of the text class.
8044 \begin_layout Standard
8045 Don't forget to also have a look at counters in next section.
8050 If you want to implement a text class that proposes some other float types
8051 (like the AGU class bundled with LyX), the information below will hopefully
8055 \begin_layout Description
8067 \begin_inset Quotes erd
8071 \begin_inset Quotes erd
8075 \begin_inset Quotes eld
8079 \begin_inset Quotes erd
8082 of the new class of floats, like program or algorithm.
8083 After the appropriate
8104 \begin_layout Description
8116 \begin_inset Quotes erd
8120 \begin_inset Quotes erd
8123 ] The string that will be used in the menus and also for the caption.
8126 \begin_layout Description
8147 if the float is already defined by the documentclass.
8152 , the float will be defined using the LaTeX package
8159 \begin_layout Description
8171 \begin_inset Quotes erd
8175 \begin_inset Quotes erd
8178 ] This (optional) argument determines whether floats of this class will
8179 be numbered within some sectional unit of the document.
8180 For example, if within is equal to
8184 , the floats will be numbered within chapters.
8188 \begin_layout Description
8200 \begin_inset Quotes erd
8204 \begin_inset Quotes erd
8207 ] The style used when defining the float using
8216 \begin_layout Description
8228 \begin_inset Quotes erd
8232 \begin_inset Quotes erd
8235 ] The default placement for the given class of floats.
8236 They are like in standard LaTeX:
8252 for top, bottom, page, and here, respectively.
8256 \begin_layout Standard
8257 Note that the order of these letters in the string is irrelevant, like in
8263 On top of that there is a new type,
8267 , which does not really correspond to a float, since it means: put it
8268 \begin_inset Quotes eld
8272 \begin_inset Quotes erd
8276 Note, however that the
8280 specifier is special and, because of implementation details cannot be used
8281 in non-builtin float types.
8282 If you do not understand what this means, just use
8289 \begin_layout Description
8301 \begin_inset Quotes erd
8305 \begin_inset Quotes erd
8308 ] The file name extension of an auxiliary file for the list of figures (or
8310 LaTeX writes the captions to this file.
8313 \begin_layout Description
8325 \begin_inset Quotes erd
8329 \begin_inset Quotes erd
8332 ] The heading used for the list of floats.
8335 \begin_layout Standard
8336 Note that defining a float with type
8342 automatically defines the corresponding counter with name
8351 \begin_layout Subsection
8352 Inset layouts and Flex insets
8355 \begin_layout Standard
8356 \begin_inset LatexCommand label
8357 name "sec:charstyle"
8361 You can define character styles since version 1.4.0 of LyX; since version
8362 1.6.0 these are called Flex insets.
8366 \begin_layout Standard
8367 Furthermore it is possible to define the general layout of many different
8369 Currently layout parameters can be defined for footnotes, marginal notes,
8370 note insets, ERT insets, branch insets, and Flex insets.
8371 The latter are definable from the user GUI and come in three different
8372 kinds: character style (
8380 ), and XML element (
8388 \begin_layout Standard
8393 definition starting line is of the form
8396 \begin_layout LyX-Code
8397 InsetLayout <Type> <Name>
8400 \begin_layout Standard
8404 \begin_layout Standard
8411 Foot, Margin, Note, Flex
8416 \begin_layout Standard
8421 can be empty (for foot- and marginal notes, branches and ERT) or one of
8439 Here, the second part of the name can be chosen freely (for CharStyle,
8440 Custom and Element), or from a predefined list (for Note).
8443 \begin_layout Standard
8448 section can contain the following entries:
8451 \begin_layout Description
8474 (indicating a dummy definition ending definitions of charstyles etc.).
8475 This entry is only meaningful for Flex (user definable) insets, the three
8476 types of which are CharStyle, Custom and Element.
8479 \begin_layout Description
8495 Minimalistic or Conglomerate
8498 , describing the rendering style used for the inset's frame and buttons.
8501 \begin_layout Description
8508 defines what will be displayed on the button or elsewhere as the inset
8510 Some inset types (ERT and Branch) modify this label on the fly.
8513 \begin_layout Description
8520 The font used for both the text body
8525 See section\InsetSpace ~
8527 \begin_inset LatexCommand ref
8528 reference "sec:fonts"
8533 Note that defining this font automatically defines the
8540 \begin_layout Description
8547 The font used for the label.
8548 See section\InsetSpace ~
8550 \begin_inset LatexCommand ref
8551 reference "sec:fonts"
8556 Note that this definition can never appear before
8560 , lest it be ineffective (see above)
8563 \begin_layout Description
8570 The name of the corresponding LaTeX stuff.
8571 Either the environment or command name.
8574 \begin_layout Description
8581 The optional parameter for the corresponding
8587 stuff, including possible bracket pairs like
8592 This parameter cannot be changed from within LyX.
8595 \begin_layout Description
8602 See section\InsetSpace ~
8604 \begin_inset LatexCommand ref
8605 reference "sec:style"
8612 \begin_layout Description
8616 Preamble\SpecialChar \ldots{}
8620 See section\InsetSpace ~
8622 \begin_inset LatexCommand ref
8623 reference "sec:style"
8630 \begin_layout Subsection
8634 \begin_layout Standard
8635 \begin_inset LatexCommand label
8640 Since version 1.3.0 of LyX, it is necessary to define the counters (
8648 , \SpecialChar \ldots{}
8649 ) in the text class itself.
8650 If you are looking here to learn how to upgrade an existing text class,
8651 it will probably turn out that all you have to do is to add
8654 \begin_layout LyX-Code
8655 Input stdcounters.inc
8658 \begin_layout Standard
8659 The following parameters can be used:
8662 \begin_layout Description
8674 \begin_inset Quotes erd
8678 \begin_inset Quotes erd
8681 ] The name of the counter.
8684 \begin_layout Description
8696 \begin_inset Quotes erd
8700 \begin_inset Quotes erd
8703 ] If this is set to the name of another counter, the present counter will
8704 be reset everytime the other one is increased.
8716 \begin_layout Description
8720 LabelString [string=""]
8723 when this is defined, this string defines how the counter is displayed.
8724 Setting this value resets
8729 The following special constructs can be used in the string:
8733 \begin_layout Itemize
8740 will be replaced by the expansion of the
8753 If these are empty, a default value is constructed as follows: if the counter
8754 has a master counter
8766 is used; otherwise the string
8775 \begin_layout Itemize
8776 counter values can be expressed using LaTeX-like macros
8800 \begin_layout Description
8811 to arabic numerals, like 1, 2, 3\SpecialChar \ldots{}
8816 \begin_layout Standard
8826 Actually, the situation is a bit more complicated than that: any
8845 other than those descibed below will produce arabic numerals.
8846 It would not be surprising to see this change in the future.
8854 \begin_layout Description
8861 for lower-case letters: a, b, c, \SpecialChar \ldots{}
8865 \begin_layout Description
8872 for upper-case letters: A, B, C, \SpecialChar \ldots{}
8876 \begin_layout Description
8883 for lower-case roman numerals: i, ii, iii, \SpecialChar \ldots{}
8887 \begin_layout Description
8894 for upper-case roman numerals: I, II, III\SpecialChar \ldots{}
8898 \begin_layout Description
8905 for hebrew numerals.
8910 \begin_layout Description
8914 LabelStringAppendix [string=""]
8921 , for use in appendix.
8924 \begin_layout Subsection
8928 \begin_layout Standard
8929 \begin_inset LatexCommand label
8934 A font description looks like that:
8937 \begin_layout LyX-Code
8947 \begin_layout LyX-Code
8951 \begin_layout LyX-Code
8955 \begin_layout Standard
8956 and the following commands are available:
8959 \begin_layout Description
8976 \begin_layout Description
8993 \begin_layout Description
9005 , Italic, SmallCaps, Slanted
9010 \begin_layout Description
9026 , large, larger, largest, huge, giant
9031 \begin_layout Description
9043 , black, white, red, green, blue, cyan, magenta, yellow
9048 \begin_layout Subsection
9049 Upgrading old layout files
9052 \begin_layout Standard
9053 The file format of layout files changes from time to time, so old layout
9054 files need to be converted.
9055 This process has been automated in LyX 1.4.0: If LyX reads an old format
9056 layout file it will call the conversion tool
9058 $LyXDir/scripts/layout2layout.py
9060 and convert it to a temporary file in current format.
9061 The original file is left untouched, so that you can still use it with
9063 If you want to convert the layout file permanently, just call the converter
9067 \begin_layout LyX-Code
9068 python $LyXDir/scripts/layout2layout.py myclass.layout myclassnew.layout
9071 \begin_layout Standard
9083 \begin_layout Standard
9084 The automatic conversion does only handle syntax changes.
9085 It cannot handle the case where the contents of included files was changed.
9086 For example, layout files based on
9099 If you get error messages about undefined counters, try to convert your
9119 \begin_layout Section
9121 \begin_inset LatexCommand label
9122 name "sec:templates"
9129 \begin_layout Standard
9130 Templates are created just like usual documents.
9131 The only difference is that usual documents contain all possible settings,
9132 including the fontscheme and the papersize.
9133 Usually a user doesn't want a template to overwrite his defaults in these
9135 For that reason, the designer of a template should remove the corresponding
9148 from the template LyX file.
9149 This can be done with any simple text-editor, for example
9161 \begin_layout Standard
9162 Put the edited template files you create in
9166 , copy the ones you use from the global template directory in
9170 to the same place, and redefine the template path in the
9175 dit\SpecialChar \menuseparator
9194 \begin_layout Standard
9195 Note that there is a template which has a particular meaning:
9200 This template is loaded everytime you create a new document with
9207 \SpecialChar \menuseparator
9215 in order to provide useful defaults.
9216 To create this template from inside LyX, all you have to do is to open
9217 a document with the correct settings, and use the
9223 e as Document Defaults
9228 \begin_layout Chapter
9229 Including External Material
9232 \begin_layout Section
9236 \begin_layout Standard
9237 \begin_inset Note Note
9240 \begin_layout Standard
9241 This section is completely outdated.
9246 One often requested feature from LyX users is to be able to interface LyX
9247 with Xfig, Dia, or other similar applications that specialize in producing
9248 a certain kind of diagram, figure, schematic or whatever material might
9249 be relevant to include in your document.
9250 Previously, it was only possible to include boring, static, fixed images
9251 in LyX documents with the graphics feature, but there are several limitations
9252 attached to this approach:
9255 \begin_layout Itemize
9256 If you want to change the figure, you have to invoke an external program
9260 \begin_layout Itemize
9261 LyX does not notice that the referenced files change, so the on-screen display
9262 can fast become obsolete, and this is aggravated by the lack of a means
9263 of updating the display
9266 \begin_layout Itemize
9267 The graphics stuff does not provide any mechanisms for coping with different
9268 exported formats such as DocBook, HTML or plain text
9271 \begin_layout Standard
9272 The external material facility attempts to solve all of these problems
9276 \begin_layout Standard
9277 Even if the graphics facility can't solve all problems, it is still valuable
9278 because it does provide in-line preview of the graphics, and supports advanced
9279 geometric transformations with a comfortable user interface.
9285 It does this by offering a general method to interface LyX to external
9287 Instead of introducing a long list of different constructs tailored for
9288 each specific application, we chose to sacrifice the in-line displaying
9289 of the included material in order to provide a general construct to cover
9290 a wide range of applications.
9291 The result is the external material construct.
9292 External material presents itself in the document simply as a button, but
9293 don't let this fool you.
9294 When you click on it, a dialog will appear that allows you to chose exactly
9295 what material to include, and in the following sections you will learn
9296 that this is indeed a powerful mechanism that can solve all of the above
9300 \begin_layout Section
9304 \begin_layout Standard
9305 The external material feature is based on the concept of a
9310 A template is a specification of how LyX should interface with a certain
9312 As bundled, LyX comes with predefined templates for Xfig figures, Dia diagrams,
9313 various raster format images, gnuplot, and more.
9314 You can check the actual list by using the menu
9316 Insert\SpecialChar \menuseparator
9317 File\SpecialChar \menuseparator
9326 Furthermore, it is possible to roll your own template to support a specific
9328 Later we'll describe in more detail what is involved, and hopefully you
9329 will submit all the templates you create so we can include them in a later
9333 \begin_layout Standard
9334 Another basic idea of the external material feature is to distinguish between
9335 the original file that serves as a base for final material and the produced
9336 file that is included in your exported or printed document.
9337 For example, consider the case of a figure produced with
9342 The Xfig application itself works on an original file with the
9347 Within XFig, you create and change your figure, and when you are done,
9353 When you want to include the figure in your document, you invoke
9357 in order to create a PostScript file that can readily be included in your
9363 file is the original file, and the PostScript file is the produced file.
9366 \begin_layout Standard
9367 This distinction is important in order to allow updating of the material
9368 while you are in the process of writing the document.
9369 Furthermore, it provides us with the flexibility that is needed to support
9370 multiple export formats.
9371 For instance, in the case of a plain text file, it is not exactly an award-winn
9372 ing idea to include the figure as raw PostScript.
9373 Instead, you'd either prefer to just include a reference to the figure,
9374 or try to invoke some graphics to Ascii converter to make the final result
9375 look similar to the real graphics.
9376 The external material management allows you to do this, because it is parameter
9377 ized on the different export formats that LyX supports.
9380 \begin_layout Standard
9381 Besides supporting the production of different products according to the
9382 exported format, it supports tight integration with editing and viewing
9384 In the case of an XFig figure, you are able to invoke
9388 on the original file with a single click from within the external material
9389 dialog in LyX, and also preview the produced PostScript file with
9394 No more fiddling around with the command line and/or file browsers to locate
9395 and manipulate the original or produced files.
9396 In this way, you are finally able to take full advantage of the many different
9397 applications that are relevant to use when you write your documents, and
9398 ultimately be more productive.
9401 \begin_layout Section
9402 External material dialog
9405 \begin_layout Standard
9410 dialog is described in the
9419 \begin_layout Section
9423 \begin_layout Standard
9424 In this section, we should include some examples of use of the external
9426 Those examples could include:
9429 \begin_layout Itemize
9430 External raster images
9433 \begin_layout Itemize
9434 External XFig figures
9437 \begin_layout Itemize
9441 \begin_layout Itemize
9445 \begin_layout Itemize
9446 The use of makefiles
9449 \begin_layout Itemize
9450 Recursive external LyX templates
9453 \begin_layout Section
9454 The external template configuration file
9457 \begin_layout Standard
9458 It is relatively easy to add custom external template definitions to LyX.
9459 However, be aware this doing this in an careless manner most probably
9463 introduce an easily exploitable security hole.
9464 So before you do this, please read the discussion about security which
9468 \begin_layout Standard
9469 Having said that, we encourage you to submit any interesting templates that
9474 \begin_layout Standard
9475 The external templates are defined in the
9477 lib/external_templates
9480 You can place your own version in
9482 .lyx/external_templates
9487 \begin_layout Standard
9488 A typical template looks like this:
9491 \begin_layout LyX-Code
9495 \begin_layout LyX-Code
9496 GuiName "XFig: $$AbsOrRelPathParent$$Basename"
9499 \begin_layout LyX-Code
9503 \begin_layout LyX-Code
9507 \begin_layout LyX-Code
9511 \begin_layout LyX-Code
9515 \begin_layout LyX-Code
9519 \begin_layout LyX-Code
9520 AutomaticProduction true
9523 \begin_layout LyX-Code
9527 \begin_layout LyX-Code
9531 \begin_layout LyX-Code
9535 \begin_layout LyX-Code
9536 TransformCommand Rotate RotationLatexCommand
9539 \begin_layout LyX-Code
9540 TransformCommand Resize ResizeLatexCommand
9543 \begin_layout LyX-Code
9544 Product "$$RotateFront$$ResizeFront
9547 \begin_layout LyX-Code
9552 input{$$AbsOrRelPathMaster$$Basename.pstex_t}
9555 \begin_layout LyX-Code
9556 $$ResizeBack$$RotateBack"
9559 \begin_layout LyX-Code
9563 \begin_layout LyX-Code
9564 UpdateResult "$$AbsPath$$Basename.pstex_t"
9567 \begin_layout LyX-Code
9568 Requirement "graphicx"
9571 \begin_layout LyX-Code
9572 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
9575 \begin_layout LyX-Code
9576 ReferencedFile latex "$$AbsPath$$Basename.eps"
9579 \begin_layout LyX-Code
9580 ReferencedFile dvi "$$AbsPath$$Basename.eps"
9583 \begin_layout LyX-Code
9587 \begin_layout LyX-Code
9591 \begin_layout LyX-Code
9592 TransformCommand Rotate RotationLatexCommand
9595 \begin_layout LyX-Code
9596 TransformCommand Resize ResizeLatexCommand
9599 \begin_layout LyX-Code
9600 Product "$$RotateFront$$ResizeFront
9603 \begin_layout LyX-Code
9608 input{$$AbsOrRelPathMaster$$Basename.pdftex_t}
9611 \begin_layout LyX-Code
9612 $$ResizeBack$$RotateBack"
9615 \begin_layout LyX-Code
9619 \begin_layout LyX-Code
9620 UpdateResult "$$AbsPath$$Basename.pdftex_t"
9623 \begin_layout LyX-Code
9624 Requirement "graphicx"
9627 \begin_layout LyX-Code
9628 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pdftex_t"
9631 \begin_layout LyX-Code
9632 ReferencedFile latex "$$AbsPath$$Basename.pdf"
9635 \begin_layout LyX-Code
9639 \begin_layout LyX-Code
9643 \begin_layout LyX-Code
9644 Product "$$Contents(
9646 "$$AbsPath$$Basename.asc
9651 \begin_layout LyX-Code
9652 UpdateFormat asciixfig
9655 \begin_layout LyX-Code
9656 UpdateResult "$$AbsPath$$Basename.asc"
9659 \begin_layout LyX-Code
9663 \begin_layout LyX-Code
9667 \begin_layout LyX-Code
9668 Product "<graphic fileref=
9670 "$$AbsOrRelPathMaster$$Basename.eps
9675 \begin_layout LyX-Code
9679 \begin_layout LyX-Code
9683 \begin_layout LyX-Code
9684 UpdateResult "$$AbsPath$$Basename.eps"
9687 \begin_layout LyX-Code
9688 ReferencedFile docbook "$$AbsPath$$Basename.eps"
9691 \begin_layout LyX-Code
9692 ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
9695 \begin_layout LyX-Code
9699 \begin_layout LyX-Code
9700 Product "[XFig: $$FName]"
9703 \begin_layout LyX-Code
9707 \begin_layout LyX-Code
9711 \begin_layout Standard
9712 As you can see, the template is enclosed in
9716 \SpecialChar \ldots{}
9722 It contains a header specifying some general settings, and for each supported
9723 primary document file format a section
9727 \SpecialChar \ldots{}
9735 \begin_layout Subsection
9739 \begin_layout Description
9743 Template\InsetSpace ~
9747 A unique name for the template.
9748 It must not contain substitution macros (see below).
9751 \begin_layout Description
9755 GuiName\InsetSpace ~
9759 The text that is displayed on the button.
9760 This command must occur exactly once.
9763 \begin_layout Description
9767 HelpText\InsetSpace ~
9772 The help text that is used in the External dialog.
9773 Provide enough information to explain to the user just what the template
9774 can provide him with.
9775 This command must occur exactly once.
9778 \begin_layout Description
9782 InputFormat\InsetSpace ~
9786 The file format of the original file.
9787 This must be the name of a format that is known to LyX (see the
9792 ools\SpecialChar \menuseparator
9797 references:Conversion
9804 if the template can handle original files of more than one format.
9805 LyX will attempt to interrogate the file itself in order to deduce its
9806 format in this case.
9807 This command must occur exactly once.
9810 \begin_layout Description
9814 FileFilter\InsetSpace ~
9818 A glob pattern that is used in the file dialog to filter out the desired
9820 If there is more than one possible file extension (e.g.\InsetSpace ~
9829 ), use something like
9834 This command must occur exactly once.
9837 \begin_layout Description
9841 AutomaticProduction\InsetSpace ~
9845 Wether the file represented by the template must be generated by LyX.
9846 This command must occur exactly once.
9849 \begin_layout Description
9853 Transform\InsetSpace ~
9854 Rotate|Resize|Clip|Extra
9857 This command specifies which transformations are supported by this template.
9858 It may occur zero or more times.
9859 This command enables the corresponding tabs in the external dialog.
9864 command must have either a corresponding
9877 Otherwise the transformation will not be supported by that format.
9880 \begin_layout Subsection
9884 \begin_layout Description
9889 LaTeX|PDFLaTeX|PlainText|DocBook
9892 The primary document file format that this format definition is for.
9893 Not every template has a sensible representation in all document file formats.
9894 Please define nevertheless a
9898 section for all formats.
9899 Use a dummy text when no representation is available.
9900 Then you can at least see a reference to the external material in the exported
9904 \begin_layout Description
9908 TransformCommand\InsetSpace ~
9910 RotationLatexCommand
9913 This command specifies that the built in LaTeX command should be used for
9915 This command may occur once or not at all.
9918 \begin_layout Description
9922 TransformCommand\InsetSpace ~
9927 This command specifies that the built in LaTeX command should be used for
9929 This command may occur once or not at all.
9932 \begin_layout Description
9936 TransformOption\InsetSpace ~
9941 This command specifies that rotation is done via an optional argument.
9942 This command may occur once or not at all.
9945 \begin_layout Description
9949 TransformOption\InsetSpace ~
9954 This command specifies that resizing is done via an optional argument.
9955 This command may occur once or not at all.
9958 \begin_layout Description
9962 TransformOption\InsetSpace ~
9967 This command specifies that clipping is done via an optional argument.
9968 This command may occur once or not at all.
9971 \begin_layout Description
9975 TransformOption\InsetSpace ~
9980 This command specifies that an extra optional argument is used.
9981 This command may occur once or not at all.
9984 \begin_layout Description
9988 Product\InsetSpace ~
9992 The text that is inserted in the exported document.
9993 This is actually the most important command and can be quite complex.
9994 This command must occur exactly once.
9997 \begin_layout Description
10001 UpdateFormat\InsetSpace ~
10005 The file format of the converted file.
10006 This must be the name of a format that is known to LyX (see the
10011 ools\SpecialChar \menuseparator
10016 references:Conversion
10019 This command must occur exactly once.
10022 \begin_layout Description
10026 UpdateResult\InsetSpace ~
10030 The file name of the converted file.
10031 The file name must be absolute.
10032 This command must occur exactly once.
10035 \begin_layout Description
10039 ReferencedFile\InsetSpace ~
10040 <format>\InsetSpace ~
10044 This command denotes files that are created by the conversion process and
10045 are needed for a particular export format.
10046 If the filename is relative, it is interpreted relative to the master document.
10047 This command may be given zero or more times.
10050 \begin_layout Description
10054 Requirement\InsetSpace ~
10058 The name of a required LaTeX package.
10059 The package is included via
10065 in the LaTeX preamble.
10066 This command may occur zero or more times.
10069 \begin_layout Description
10073 Preamble\InsetSpace ~
10077 This command specifies a preamble snippet that will be included in the
10079 It has to be defined using
10083 \SpecialChar \ldots{}
10089 This command may occur zero or more times.
10092 \begin_layout Description
10096 Option\InsetSpace ~
10097 <name>\InsetSpace ~
10101 This command defines an additional macro
10105 for substitution in
10114 itself may contain substitution macros.
10115 The advantage over using
10123 is that the substituted value of
10127 is sanitized so that it is a valid optional argument in the document format.
10128 This command may occur zero or more times.
10131 \begin_layout Subsection
10132 Preamble definitions
10135 \begin_layout Standard
10136 The external template configuration file may contain additional preamble
10137 definitions enclosed by
10141 \SpecialChar \ldots{}
10147 They can be used by the templates in the
10154 \begin_layout Section
10155 The substitution mechanism
10158 \begin_layout Standard
10159 When the external material facility invokes an external program, it is done
10160 on the basis of a command defined in the template configuration file.
10161 These commands can contain various macros that are expanded before execution.
10162 Execution always take place in the directory of the containing document.
10165 \begin_layout Standard
10166 Also, whenever external material is to be displayed, the name will be produced
10167 by the substitution mechanism, and most other commands in the template
10168 definition support substitution as well.
10171 \begin_layout Standard
10172 The available macros are the following:
10175 \begin_layout Description
10176 $$FName The filename of the file specified in the external material dialog.
10177 This is either an absolute name, or it is relative to the LyX document.
10180 \begin_layout Description
10181 $$Basename The filename without path and without the extension.
10184 \begin_layout Description
10185 $$Extension The file extension (including the dot).
10188 \begin_layout Description
10189 $$FPath The path part of
10193 (absolute name or relative to the LyX document).
10196 \begin_layout Description
10197 $$AbsPath The absolute file path.
10200 \begin_layout Description
10201 $$RelPathMaster The file path, relative to the master LyX document.
10204 \begin_layout Description
10205 $$RelPathParent The file path, relative to the LyX document.
10208 \begin_layout Description
10209 $$AbsOrRelPathMaster The file path, absolute or relative to the master LyX
10213 \begin_layout Description
10214 $$AbsOrRelPathParent The file path, absolute or relative to the LyX document.
10217 \begin_layout Description
10218 $$Tempname A name and full path to a temporary file which will be automatically
10219 deleted whenever the containing document is closed, or the external material
10223 \begin_layout Description
10225 \begin_inset Quotes eld
10229 \begin_inset Quotes erd
10232 ) This macro will expand to the contents of the file with the name
10239 \begin_layout Description
10240 $$Sysdir This macro will expand to the absolute path of the system directory.
10241 This is typically used to point to the various helper scripts that are
10245 \begin_layout Standard
10246 All path macros contain a trailing directory separator, so you can construct
10248 the absolute filename with
10250 $$AbsPath$$Basename$$Extension
10255 \begin_layout Standard
10256 The macros above are substituted in all commands unless otherwise noted.
10261 supports additionally the following substitutions if they are enabled by
10273 \begin_layout Description
10274 $$ResizeFront The front part of the resize command.
10277 \begin_layout Description
10278 $$ResizeBack The back part of the resize command.
10281 \begin_layout Description
10282 $$RotateFront The front part of the rotation command.
10285 \begin_layout Description
10286 $$RotateBack The back part of the rotation command.
10289 \begin_layout Standard
10290 The value string of the
10294 command supports additionally the following substitutions if they are enabled
10306 \begin_layout Description
10307 $$Clip The clip option.
10310 \begin_layout Description
10311 $$Extra The extra option.
10314 \begin_layout Description
10315 $$Resize The resize option.
10318 \begin_layout Description
10319 $$Rotate The rotation option.
10322 \begin_layout Standard
10323 You may ask why there are so many path macros.
10324 There are mainly two reasons:
10327 \begin_layout Standard
10328 First, relative and absolute file names should remain relative or absolute,
10330 Users may have reasons to prefer either form.
10331 Relative names are useful for portable documents that should work on different
10332 machines, for example.
10333 Absolute names may be required by some programs.
10336 \begin_layout Standard
10337 Second, LaTeX treats relative file names differently than LyX and other
10338 programs in nested included files.
10339 For LyX, a relative file name is always relative to the document that contains
10341 For LaTeX, it is always relative to the master document.
10342 These two definitions are identical if you have only one document, but
10343 differ if you have a master document that includes part documents.
10344 That means that relative filenames must be transformed when presented to
10346 Fortunately LyX does this automatically for you if you choose the right
10350 \begin_layout Standard
10351 So which path macro should be used in new template definitions? The rule
10355 \begin_layout Itemize
10360 if an absolute path is required.
10363 \begin_layout Itemize
10366 $$AbsOrRelPathMaster
10368 if the substituted string is some kind of LaTeX input.
10371 \begin_layout Itemize
10374 $$AbsOrRelPathParent
10376 in order to preserve the user's choice.
10379 \begin_layout Standard
10380 There are special cases where this rule does not work and e.g.\InsetSpace ~
10382 are needed, but normally it will work just fine.
10383 One example for such a case is the command
10385 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
10387 in the XFig template above: We can't use the absolute name because the
10392 files needs the relative name in order to rewrite the file content.
10395 \begin_layout Section
10396 Security discussion
10399 \begin_layout Standard
10400 \begin_inset Note Note
10403 \begin_layout Standard
10404 This section is outdated
10409 The external material feature interfaces with a lot of external programs
10410 and does so automatically, so we have to consider the security implications
10412 In particular, since you have the option of including your own filenames
10413 and/or parameter strings and those are expanded into a command, it seems
10414 that it would be possible to create a malicious document which executes
10415 arbitrary commands when a user views or prints the document.
10416 This is something we definately want to avoid.
10419 \begin_layout Standard
10420 However, since the external program commands are specified in the template
10421 configuration file only, there are no security issues if LyX is properly
10422 configured with safe templates only.
10423 This is so because the external programs are invoked with the
10427 -system call rather than the
10431 system-call, so it's not possible to execute arbitrary commands from the
10432 filename or parameter section via the shell.
10435 \begin_layout Standard
10436 This also implies that you are restricted in what command strings you can
10437 use in the external material templates.
10438 In particular, pipes and redirection are not readily available.
10439 This has to be so if LyX should remain safe.
10440 If you want to use some of the shell features, you should write a safe
10441 script to do this in a controlled manner, and then invoke the script from
10442 the command string.
10447 directory of the LyX installation, you can find a safe wrapper script
10449 general_command_wrapper.py
10451 that supports redirection of input and output.
10452 That can serve as an example for how to write safe template scripts.
10453 For a more advanced example that uses
10457 and friends, take a look at the
10464 \begin_layout Standard
10465 It is possible to design a template that interacts directly with the shell,
10466 but since this would allow a malicious user to execute arbitrary commands
10467 by writing clever filenames and/or parameters, we generally recommend that
10468 you only use safe scripts that work with the
10472 system call in a controlled manner.
10473 Of course, for use in a controlled environment, it can be tempting to just
10474 fall back to use ordinary shell scripts.
10475 If you do so, be aware that you
10479 provide an easily exploitable security hole in your system.
10480 Of course it stands to reason that such unsafe templates will never be
10481 included in the standard LyX distribution, although we do encourage people
10482 to submit new templates in the open source tradition.
10483 But LyX as shipped from the official distribution channels will never have
10487 \begin_layout Standard
10488 Including external material provides a lot of power, and you have to be
10489 careful not to introduce security hazards with this power.
10490 A subtle error in a single line in an innocent looking script can open
10491 the door to huge security problems.
10492 So if you do not fully understand the issues, we recommend that you consult
10493 a knowledgable security professional or the LyX development team if you
10494 have any questions about whether a given template is safe or not.
10495 And do this before you use it in an uncontrolled environment.
10498 \begin_layout Chapter
10502 \begin_layout Section
10506 \begin_layout Standard
10507 The LyX server is a method implemented in LyX that will enable other programs
10508 to talk to LyX, invoke LyX commands, and retrieve information about the
10509 LyX internal state.
10510 This is only intended for advanced users, but they should find it useful.
10513 \begin_layout Section
10514 Starting the LyX Server
10517 \begin_layout Standard
10518 The LyX server works through the use of a pair of named pipes.
10519 These are usually located in your home directory and have the names
10520 \begin_inset Quotes eld
10528 \begin_inset Quotes erd
10532 \begin_inset Quotes eld
10540 \begin_inset Quotes erd
10544 External programs write into
10548 and read back data from
10553 The stem of the pipe names can be defined in the
10558 ools\SpecialChar \menuseparator
10565 dialog, for example
10567 "/home/myhome/.lyxpipe"
10572 \begin_layout Standard
10581 ' to create the pipes.
10582 The above setting also has the effect of activating the LyX server.
10583 If one of the pipes already exists, LyX will assume that another LyX process
10584 is already running and will not start the server.
10585 To have several LyX processes with servers at the same time, you have to
10586 change the configuration between the start of the programs.
10589 \begin_layout Standard
10590 If you are developing a client program, you might find it useful to enable
10591 debugging information from the LyX server.
10592 Do this by starting LyX as
10594 lyx -dbg lyxserver.
10597 \begin_layout Standard
10598 Warning: if LyX crashes, it may not manage to remove the pipes; in this
10599 case you must remove them manually.
10600 If LyX starts and the pipes exist already, it will not start any server.
10603 \begin_layout Standard
10604 Other than this, there are a few points to consider:
10607 \begin_layout Itemize
10608 Both server and clients must run on UNIX or OS/2 machines.
10609 Communications between LyX on UNIX and clients on OS/2 or vice versa is
10610 not possible right now.
10613 \begin_layout Itemize
10614 On OS/2, only one client can connect to LyXServer at a time.
10617 \begin_layout Itemize
10618 On OS/2, clients must open inpipe with
10625 \begin_layout Standard
10626 You can find a complete example client written in C in the source distribution
10629 development/server_monitor.c
10634 \begin_layout Section
10635 Normal communication
10638 \begin_layout Standard
10639 To issue a LyX call, the client writes a line of ASCII text into the input
10641 This line has the following format:
10644 \begin_layout Quote
10658 \begin_layout Standard
10663 is a name that the client can choose arbitrarily.
10664 Its only use is that LyX will echo it if it sends an answer - so a client
10665 can dispatch results from different requesters.
10668 \begin_layout Standard
10673 is the function you want LyX to perform.
10674 It is the same as the commands you'd use in the minibuffer.
10677 \begin_layout Standard
10682 is an optional argument which is meaningful only to some functions (for
10684 \begin_inset Quotes eld
10688 \begin_inset Quotes erd
10691 which will insert the argument as text at the cursor position.)
10694 \begin_layout Standard
10695 The answer from LyX will arrive in the output pipe and be of the form
10698 \begin_layout Quote
10712 \begin_layout Standard
10721 are just echoed from the command request, while
10725 is more or less useful information filled according to how the command
10726 execution worked out.
10727 Some commands will return information about the internal state of LyX,
10729 \begin_inset Quotes eld
10733 \begin_inset Quotes erd
10736 , while other will return an empty data-response.
10737 This means that the command execution went fine.
10740 \begin_layout Standard
10741 In case of errors, the response from LyX will have this form
10744 \begin_layout Quote
10758 \begin_layout Standard
10763 should contain an explanation of why the command failed.
10766 \begin_layout Standard
10770 \begin_layout LyX-Code
10771 echo "LYXCMD:test:beginning-of-buffer:" >~/.lyxpipe.in
10774 \begin_layout LyX-Code
10775 echo "LYXCMD:test:get-xy:" >~/.lyxpipe.in
10777 read a <~/.lyxpipe.out
10782 \begin_layout Section
10786 \begin_layout Standard
10787 LyX can notify clients of events going on asynchronously.
10788 Currently it will only do this if the user binds a key sequence with the
10790 \begin_inset Quotes eld
10794 \begin_inset Quotes erd
10798 The format of the string LyX sends is as follows:
10801 \begin_layout Quote
10810 \begin_layout Standard
10815 is the printed representation of the key sequence that was actually typed
10819 \begin_layout Standard
10820 This mechanism can be used to extend LyX's command set and implement macros:
10821 bind some key sequence to
10822 \begin_inset Quotes eld
10826 \begin_inset Quotes erd
10829 , start a client that listens on the out pipe, dispatches the command according
10830 to the sequence and starts a function that may use LyX calls and LyX requests
10831 to issue a command or a series of commands to LyX.
10834 \begin_layout Section
10835 The simple LyX Server Protocol
10838 \begin_layout Standard
10839 LyX implements a simple protocol that can be used for session management.
10840 All messages are of the form
10843 \begin_layout Quote
10853 \begin_layout Standard
10859 \begin_inset Quotes eld
10863 \begin_inset Quotes erd
10867 \begin_inset Quotes eld
10871 \begin_inset Quotes erd
10876 \begin_inset Quotes eld
10880 \begin_inset Quotes erd
10883 is received from a client, LyX will report back to inform the client that
10884 it's listening to it's messages, while
10885 \begin_inset Quotes eld
10889 \begin_inset Quotes erd
10892 sent from LyX will inform clients that LyX is closing.
10895 \begin_layout Chapter
10900 \begin_layout Standard
10901 This appendix is a huge cross-reference to all the English language keybindings.
10902 Originally, we simply wanted to list all of the key bindings followed by
10903 the function it's bound to.
10904 That way, a user can look up a key to find out what it does.
10905 We then decided, what the hey, why not include the default toolbar and
10906 menu bindings, too.
10907 Please note this section is likely to be very out of date.
10910 \begin_layout Standard
10911 The form is really self-explanatory, but here are a few tips: all entries
10912 are arranged roughly alphabetically for a given modifier (
10921 For the general keyboard layout, simpler prefixes precede the more complex
10931 All entries were gleaned from the default user interface and binding files
10932 located in the directories
10934 \SpecialChar \ldots{}
10939 \SpecialChar \ldots{}
10942 ; they should be treated as the final word on the bindings.
10945 \begin_layout Standard
10946 As a final note, be aware that some window managers (such as FVWM) take
10947 control of some of the function keys or motion keys.
10952 is listed here as generating
10956 , but FVWM grabs it and uses it to change virtual desktops instead.
10957 Very annoying unless you instruct your window manager to stop intercepting
10961 \begin_layout Section
10965 \begin_layout LyX-Code
10969 \begin_layout LyX-Code
10973 \begin_layout LyX-Code
10977 \begin_layout LyX-Code
10978 Icon "buffer-write"
10981 \begin_layout LyX-Code
10982 Icon "buffer-print"
10985 \begin_layout LyX-Code
10989 \begin_layout LyX-Code
10993 \begin_layout LyX-Code
10997 \begin_layout LyX-Code
11001 \begin_layout LyX-Code
11005 \begin_layout LyX-Code
11009 \begin_layout LyX-Code
11013 \begin_layout LyX-Code
11017 \begin_layout LyX-Code
11021 \begin_layout LyX-Code
11025 \begin_layout LyX-Code
11029 \begin_layout LyX-Code
11033 \begin_layout LyX-Code
11034 Icon "footnote-insert"
11037 \begin_layout LyX-Code
11038 Icon "marginpar-insert"
11041 \begin_layout LyX-Code
11045 \begin_layout LyX-Code
11049 \begin_layout LyX-Code
11050 Icon "figure-insert"
11053 \begin_layout LyX-Code
11054 Icon "dialog-tabular-insert"
11057 \begin_layout LyX-Code
11061 \begin_layout Section
11065 \begin_layout Standard
11066 Note that the following bindings are for LyX with English menus.
11067 The second character of the binding depends on the menu language.
11069 \begin_inset Quotes eld
11077 \begin_inset Quotes erd
11080 is with German menus
11081 \begin_inset Quotes eld
11089 \begin_inset Quotes erd
11093 To find out the shortcuts of your language press the Meta (Alt)-key and
11094 press then the keys of the underlined characters of the menu names.
11097 \begin_layout Subsection
11102 \labelwidthstring 00.00.0000
11114 \labelwidthstring 00.00.0000
11126 \labelwidthstring 00.00.0000
11138 \labelwidthstring 00.00.0000
11152 \labelwidthstring 00.00.0000
11164 \labelwidthstring 00.00.0000
11178 \labelwidthstring 00.00.0000
11190 \labelwidthstring 00.00.0000
11202 \labelwidthstring 00.00.0000
11214 \labelwidthstring 00.00.0000
11226 \labelwidthstring 00.00.0000
11234 buffer-new-template
11238 \labelwidthstring 00.00.0000
11253 \labelwidthstring 00.00.0000
11264 \labelwidthstring 00.00.0000
11275 \labelwidthstring 00.00.0000
11286 \labelwidthstring 00.00.0000
11297 \labelwidthstring 00.00.0000
11308 \labelwidthstring 00.00.0000
11320 \labelwidthstring 00.00.0000
11331 \begin_layout Subsection
11336 \labelwidthstring 00.00.0000
11348 \labelwidthstring 00.00.0000
11360 \labelwidthstring 00.00.0000
11372 \labelwidthstring 00.00.0000
11384 \labelwidthstring 00.00.0000
11396 \labelwidthstring 00.00.0000
11408 \labelwidthstring 00.00.0000
11423 \labelwidthstring 00.00.0000
11430 tabular-feature append-row
11434 \labelwidthstring 00.00.0000
11441 tabular-feature toggle-line-bottom
11445 \labelwidthstring 00.00.0000
11452 tabular-feature align-center
11456 \labelwidthstring 00.00.0000
11463 tabular-feature delete-column
11467 \labelwidthstring 00.00.0000
11474 tabular-feature align-left
11478 \labelwidthstring 00.00.0000
11485 tabular-feature align-right
11489 \labelwidthstring 00.00.0000
11496 tabular-feature toggle-line-left
11500 \labelwidthstring 00.00.0000
11507 tabular-feature multicolumn
11511 \labelwidthstring 00.00.0000
11518 tabular-feature valign-center
11522 \labelwidthstring 00.00.0000
11529 tabular-feature valign-top
11533 \labelwidthstring 00.00.0000
11540 tabular-feature toggle-line-right
11544 \labelwidthstring 00.00.0000
11551 tabular-feature toggle-line-top
11555 \labelwidthstring 00.00.0000
11562 tabular-feature append-column
11566 \labelwidthstring 00.00.0000
11573 tabular-feature valign-bottom
11577 \labelwidthstring 00.00.0000
11584 tabular-feature delete-row
11589 \labelwidthstring 00.00.0000
11602 \labelwidthstring 00.00.0000
11609 floats-operate openfoot
11613 \labelwidthstring 00.00.0000
11620 floats-operate closefoot
11624 \labelwidthstring 00.00.0000
11631 floats-operate openfig
11635 \labelwidthstring 00.00.0000
11646 \labelwidthstring 00.00.0000
11657 \labelwidthstring 00.00.0000
11664 floats-operate closefig
11669 \labelwidthstring 00.00.0000
11681 \labelwidthstring 00.00.0000
11695 \labelwidthstring 00.00.0000
11707 \labelwidthstring 00.00.0000
11719 \labelwidthstring 00.00.0000
11733 \labelwidthstring 00.00.0000
11745 \labelwidthstring 00.00.0000
11760 \labelwidthstring 00.00.0000
11767 primary-selection-paste
11771 \labelwidthstring 00.00.0000
11778 primary-selection-paste paragraph
11782 \begin_layout Subsection
11787 \labelwidthstring 00.00.0000
11802 \labelwidthstring 00.00.0000
11809 buffer-float-insert algorithm
11813 \labelwidthstring 00.00.0000
11820 buffer-float-insert wide-tab
11824 \labelwidthstring 00.00.0000
11831 buffer-float-insert figure
11835 \labelwidthstring 00.00.0000
11842 buffer-float-insert table
11846 \labelwidthstring 00.00.0000
11853 buffer-float-insert wide-fig
11858 \labelwidthstring 00.00.0000
11866 dialog-tabular-insert
11870 \labelwidthstring 00.00.0000
11882 \labelwidthstring 00.00.0000
11894 \labelwidthstring 00.00.0000
11902 buffer-child-insert
11906 \labelwidthstring 00.00.0000
11918 \labelwidthstring 00.00.0000
11930 \labelwidthstring 00.00.0000
11942 \labelwidthstring 00.00.0000
11954 \labelwidthstring 00.00.0000
11966 \labelwidthstring 00.00.0000
11978 \labelwidthstring 00.00.0000
11990 \labelwidthstring 00.00.0000
12005 \labelwidthstring 00.00.0000
12016 \labelwidthstring 00.00.0000
12027 \labelwidthstring 00.00.0000
12038 \labelwidthstring 00.00.0000
12049 \labelwidthstring 00.00.0000
12060 \labelwidthstring 00.00.0000
12072 \labelwidthstring 00.00.0000
12084 \labelwidthstring 00.00.0000
12099 \labelwidthstring 00.00.0000
12106 protected-space-insert
12110 \labelwidthstring 00.00.0000
12117 end-of-sentence-period-insert
12121 \labelwidthstring 00.00.0000
12132 \labelwidthstring 00.00.0000
12143 \labelwidthstring 00.00.0000
12154 \labelwidthstring 00.00.0000
12161 menu-separator-insert
12165 \labelwidthstring 00.00.0000
12172 hyphenation-point-insert
12176 \labelwidthstring 00.00.0000
12187 \labelwidthstring 00.00.0000
12194 command-sequence math-insert ^;math-mode;
12198 \labelwidthstring 00.00.0000
12205 command-sequence math-insert _;math-mode;
12210 \labelwidthstring 00.00.0000
12225 \labelwidthstring 00.00.0000
12232 file-insert-plaintext lines
12236 \labelwidthstring 00.00.0000
12243 file-insert-plaintext paragraphs
12247 \labelwidthstring 00.00.0000
12259 \labelwidthstring 00.00.0000
12271 \labelwidthstring 00.00.0000
12283 \labelwidthstring 00.00.0000
12294 \begin_layout Subsection
12299 \labelwidthstring 00.00.0000
12311 \labelwidthstring 00.00.0000
12323 \labelwidthstring 00.00.0000
12335 \labelwidthstring 00.00.0000
12347 \labelwidthstring 00.00.0000
12359 \labelwidthstring 00.00.0000
12371 \labelwidthstring 00.00.0000
12383 \labelwidthstring 00.00.0000
12395 \labelwidthstring 00.00.0000
12403 layout-save-default
12407 \labelwidthstring 00.00.0000
12419 \labelwidthstring 00.00.0000
12431 \labelwidthstring 00.00.0000
12442 \begin_layout Subsubsection
12445 Layout\SpecialChar \menuseparator
12452 \labelwidthstring 00.00.0000
12464 \labelwidthstring 00.00.0000
12476 \labelwidthstring 00.00.0000
12488 \labelwidthstring 00.00.0000
12500 \labelwidthstring 00.00.0000
12512 \labelwidthstring 00.00.0000
12524 \labelwidthstring 00.00.0000
12536 \labelwidthstring 00.00.0000
12548 \labelwidthstring 00.00.0000
12560 \labelwidthstring 00.00.0000
12572 \labelwidthstring 00.00.0000
12584 \labelwidthstring 00.00.0000
12596 \labelwidthstring 00.00.0000
12608 \labelwidthstring 00.00.0000
12620 \labelwidthstring 00.00.0000
12632 \labelwidthstring 00.00.0000
12644 \labelwidthstring 00.00.0000
12656 \labelwidthstring 00.00.0000
12668 \labelwidthstring 00.00.0000
12680 \labelwidthstring 00.00.0000
12692 \labelwidthstring 00.00.0000
12704 \labelwidthstring 00.00.0000
12716 \labelwidthstring 00.00.0000
12728 \labelwidthstring 00.00.0000
12740 \labelwidthstring 00.00.0000
12752 \labelwidthstring 00.00.0000
12764 \labelwidthstring 00.00.0000
12776 \labelwidthstring 00.00.0000
12788 \labelwidthstring 00.00.0000
12800 \labelwidthstring 00.00.0000
12812 \labelwidthstring 00.00.0000
12824 \labelwidthstring 00.00.0000
12835 \begin_layout Subsection
12839 \begin_layout Subsection
12843 \begin_layout Subsection
12847 \begin_layout Subsection
12852 \labelwidthstring 00.00.0000
12864 \labelwidthstring 00.00.0000
12876 \labelwidthstring 00.00.0000
12888 \labelwidthstring 00.00.0000
12900 \labelwidthstring 00.00.0000
12912 \labelwidthstring 00.00.0000
12920 layout ShortFoilhead
12924 \labelwidthstring 00.00.0000
12936 \labelwidthstring 00.00.0000
12948 \labelwidthstring 00.00.0000
12960 \labelwidthstring 00.00.0000
12972 \labelwidthstring 00.00.0000
12980 layout ShortRotatefoilhead
12984 \labelwidthstring 00.00.0000
12996 \labelwidthstring 00.00.0000
13008 \labelwidthstring 00.00.0000
13020 \labelwidthstring 00.00.0000
13028 drop-layouts-choice
13032 \labelwidthstring 00.00.0000
13047 \labelwidthstring 00.00.0000
13062 \labelwidthstring 00.00.0000
13074 \labelwidthstring 00.00.0000
13086 \labelwidthstring 00.00.0000
13094 layout Subsubsection
13098 \labelwidthstring 00.00.0000
13110 \labelwidthstring 00.00.0000
13118 layout Subparagraph
13122 \labelwidthstring 00.00.0000
13126 asterisk\InsetSpace ~
13135 \labelwidthstring 00.00.0000
13139 asterisk\InsetSpace ~
13148 \labelwidthstring 00.00.0000
13152 asterisk\InsetSpace ~
13161 \labelwidthstring 00.00.0000
13165 asterisk\InsetSpace ~
13174 \labelwidthstring 00.00.0000
13178 asterisk\InsetSpace ~
13183 layout Subsubsection*
13187 \labelwidthstring 00.00.0000
13191 asterisk\InsetSpace ~
13200 \labelwidthstring 00.00.0000
13204 asterisk\InsetSpace ~
13209 layout Subparagraph*
13213 \labelwidthstring 00.00.0000
13225 \labelwidthstring 00.00.0000
13233 layout Bibliography
13237 \labelwidthstring 00.00.0000
13249 \labelwidthstring 00.00.0000
13261 \labelwidthstring 00.00.0000
13273 \labelwidthstring 00.00.0000
13285 \labelwidthstring 00.00.0000
13297 \labelwidthstring 00.00.0000
13305 layout Rotatefoilhead
13309 \labelwidthstring 00.00.0000
13317 layout RightAddress
13321 \labelwidthstring 00.00.0000
13333 \labelwidthstring 00.00.0000
13345 \labelwidthstring 00.00.0000
13357 \labelwidthstring 00.00.0000
13368 \begin_layout Standard
13369 These ones are kept for backwards compatibility, but only make sense on
13374 \labelwidthstring 00.00.0000
13386 \labelwidthstring 00.00.0000
13394 layout Subsubsection*
13398 \labelwidthstring 00.00.0000
13409 \begin_layout Section
13413 \begin_layout Subsection
13420 \labelwidthstring 00.00.0000
13431 \labelwidthstring 00.00.0000
13442 \labelwidthstring 00.00.0000
13453 \labelwidthstring 00.00.0000
13464 \labelwidthstring 00.00.0000
13475 \labelwidthstring 00.00.0000
13486 \labelwidthstring 00.00.0000
13493 hyphenation-point-insert
13497 \labelwidthstring 00.00.0000
13508 \labelwidthstring 00.00.0000
13515 line-delete-forward
13519 \labelwidthstring 00.00.0000
13530 \labelwidthstring 00.00.0000
13541 \labelwidthstring 00.00.0000
13552 \labelwidthstring 00.00.0000
13563 \labelwidthstring 00.00.0000
13574 \labelwidthstring 00.00.0000
13585 \labelwidthstring 00.00.0000
13596 \labelwidthstring 00.00.0000
13607 \labelwidthstring 00.00.0000
13618 \labelwidthstring 00.00.0000
13629 \labelwidthstring 00.00.0000
13640 \labelwidthstring 00.00.0000
13651 \labelwidthstring 00.00.0000
13663 \labelwidthstring 00.00.0000
13675 \labelwidthstring 00.00.0000
13687 \labelwidthstring 00.00.0000
13699 \labelwidthstring 00.00.0000
13712 \labelwidthstring 00.00.0000
13724 \labelwidthstring 00.00.0000
13736 \labelwidthstring 00.00.0000
13748 \labelwidthstring 00.00.0000
13760 \labelwidthstring 00.00.0000
13773 \labelwidthstring 00.00.0000
13785 \labelwidthstring 00.00.0000
13797 \labelwidthstring 00.00.0000
13810 \labelwidthstring 00.00.0000
13823 \labelwidthstring 00.00.0000
13836 \labelwidthstring 00.00.0000
13849 \labelwidthstring 00.00.0000
13862 \labelwidthstring 00.00.0000
13875 \labelwidthstring 00.00.0000
13887 \labelwidthstring 00.00.0000
13899 \labelwidthstring 00.00.0000
13911 \labelwidthstring 00.00.0000
13919 menu-open Documents
13923 \labelwidthstring 00.00.0000
13935 \labelwidthstring 00.00.0000
13947 \labelwidthstring 00.00.0000
13959 \labelwidthstring 00.00.0000
13971 \labelwidthstring 00.00.0000
13983 \labelwidthstring 00.00.0000
13991 buffer-toggle-read-only
13995 \labelwidthstring 00.00.0000
14007 \labelwidthstring 00.00.0000
14019 \labelwidthstring 00.00.0000
14031 \labelwidthstring 00.00.0000
14042 \labelwidthstring 00.00.0000
14053 \labelwidthstring 00.00.0000
14064 \labelwidthstring 00.00.0000
14075 \labelwidthstring 00.00.0000
14086 \labelwidthstring 00.00.0000
14097 \labelwidthstring 00.00.0000
14108 \labelwidthstring 00.00.0000
14119 \labelwidthstring 00.00.0000
14130 \labelwidthstring 00.00.0000
14141 \labelwidthstring 00.00.0000
14152 \labelwidthstring 00.00.0000
14163 \labelwidthstring 00.00.0000
14174 \labelwidthstring 00.00.0000
14185 \labelwidthstring 00.00.0000
14192 word-delete-forward
14196 \labelwidthstring 00.00.0000
14203 word-delete-backward
14207 \labelwidthstring 00.00.0000
14218 \labelwidthstring 00.00.0000
14225 end-of-sentence-period-insert
14229 \labelwidthstring 00.00.0000
14236 protected-space-insert
14240 \labelwidthstring 00.00.0000
14251 \labelwidthstring 00.00.0000
14262 \labelwidthstring 00.00.0000
14273 \labelwidthstring 00.00.0000
14284 \labelwidthstring 00.00.0000
14295 \labelwidthstring 00.00.0000
14306 \labelwidthstring 00.00.0000
14313 buffer-begin-select
14317 \labelwidthstring 00.00.0000
14328 \labelwidthstring 00.00.0000
14335 paragraph-up-select
14339 \labelwidthstring 00.00.0000
14346 paragraph-down-select
14350 \labelwidthstring 00.00.0000
14357 word-backward-select
14361 \labelwidthstring 00.00.0000
14368 word-forward-select
14372 \labelwidthstring 00.00.0000
14383 \labelwidthstring 00.00.0000
14390 word-delete-forward
14394 \labelwidthstring 00.00.0000
14405 \labelwidthstring 00.00.0000
14416 \labelwidthstring 00.00.0000
14427 \labelwidthstring 00.00.0000
14438 \labelwidthstring 00.00.0000
14445 break-paragraph-keep-layout
14449 \labelwidthstring 00.00.0000
14459 \begin_layout Subsection
14466 \labelwidthstring 00.00.0000
14477 \labelwidthstring 00.00.0000
14488 \labelwidthstring 00.00.0000
14499 \labelwidthstring 00.00.0000
14510 \labelwidthstring 00.00.0000
14521 \labelwidthstring 00.00.0000
14532 \labelwidthstring 00.00.0000
14543 \labelwidthstring 00.00.0000
14554 \labelwidthstring 00.00.0000
14565 \labelwidthstring 00.00.0000
14576 \labelwidthstring 00.00.0000
14587 \labelwidthstring 00.00.0000
14598 \labelwidthstring 00.00.0000
14609 \labelwidthstring 00.00.0000
14620 \labelwidthstring 00.00.0000
14631 \labelwidthstring 00.00.0000
14642 \labelwidthstring 00.00.0000
14653 \labelwidthstring 00.00.0000
14664 \labelwidthstring 00.00.0000
14675 \labelwidthstring 00.00.0000
14686 \labelwidthstring 00.00.0000
14697 \labelwidthstring 00.00.0000
14708 \labelwidthstring 00.00.0000
14715 protected-space-insert
14719 \labelwidthstring 00.00.0000
14730 \labelwidthstring 00.00.0000
14741 \labelwidthstring 00.00.0000
14752 \labelwidthstring 00.00.0000
14759 buffer-new-template
14763 \labelwidthstring 00.00.0000
14774 \labelwidthstring 00.00.0000
14785 \labelwidthstring 00.00.0000
14796 \labelwidthstring 00.00.0000
14807 \labelwidthstring 00.00.0000
14818 \labelwidthstring 00.00.0000
14829 \labelwidthstring 00.00.0000
14840 \labelwidthstring 00.00.0000
14847 end-of-sentence-period-insert
14851 \labelwidthstring 00.00.0000
14862 \labelwidthstring 00.00.0000
14873 \labelwidthstring 00.00.0000
14880 hyphenation-point-insert
14884 \labelwidthstring 00.00.0000
14895 \labelwidthstring 00.00.0000
14902 protected-space-insert
14906 \labelwidthstring 00.00.0000
14917 \labelwidthstring 00.00.0000
14928 \labelwidthstring 00.00.0000
14939 \labelwidthstring 00.00.0000
14950 \labelwidthstring 00.00.0000
14961 \labelwidthstring 00.00.0000
14972 \labelwidthstring 00.00.0000
14983 \labelwidthstring 00.00.0000
14994 \labelwidthstring 00.00.0000
15005 \labelwidthstring 00.00.0000
15016 \labelwidthstring 00.00.0000
15027 \labelwidthstring 00.00.0000
15038 \labelwidthstring 00.00.0000
15049 \labelwidthstring 00.00.0000
15060 \labelwidthstring 00.00.0000
15071 \labelwidthstring 00.00.0000
15078 word-delete-forward
15082 \labelwidthstring 00.00.0000
15089 word-delete-backward
15093 \labelwidthstring 00.00.0000
15104 \labelwidthstring 00.00.0000
15115 \labelwidthstring 00.00.0000
15126 \labelwidthstring 00.00.0000
15137 \labelwidthstring 00.00.0000
15144 paragraph-down-select
15148 \labelwidthstring 00.00.0000
15159 \labelwidthstring 00.00.0000
15166 buffer-begin-select
15170 \labelwidthstring 00.00.0000
15177 word-backward-select
15181 \labelwidthstring 00.00.0000
15188 word-forward-select
15192 \labelwidthstring 00.00.0000
15199 paragraph-up-select
15203 \labelwidthstring 00.00.0000
15214 \labelwidthstring 00.00.0000
15221 break-paragraph-keep-layout
15225 \labelwidthstring 00.00.0000
15236 \labelwidthstring 00.00.0000
15247 \labelwidthstring 00.00.0000
15258 \labelwidthstring 00.00.0000
15269 \labelwidthstring 00.00.0000
15280 \labelwidthstring 00.00.0000
15291 \labelwidthstring 00.00.0000
15302 \labelwidthstring 00.00.0000
15313 \labelwidthstring 00.00.0000
15324 \labelwidthstring 00.00.0000
15335 \labelwidthstring 00.00.0000
15345 \begin_layout Subsection
15351 \begin_layout Standard
15352 These are LyX keyboard definitions for mathematics, similar to those of
15356 \begin_layout Standard
15357 The bindings file and the present documentation were prepared by Serge Winitzki
15358 with assistance from Jean-Marc Lasgouttes.
15359 Version 1.3, for LyX 1.2.x and 1.3.x.
15362 \begin_layout Standard
15363 These definitions make it a lot easier to type equations without using the
15364 mouse, especially for people familiar with Scientific Word.
15365 The standard LyX bindings such as
15376 \begin_layout Standard
15377 Tip: to find the "LyX bind name" for a key, look at the status bar after
15378 typing some non-existent key combination.
15380 to find how "Ctrl-&" is referenced, press Ctrl-S and then Ctrl-&: the status
15381 bar shows "C-s S-C-ampersand." (This does not work in LyX 1.3.0!)
15385 \labelwidthstring 00.00.0000
15394 -- Copy, cut, paste is as in Sciword,
15410 \labelwidthstring 00.00.0000
15419 -- Display equation toggle: type
15423 to insert a displayed formula (
15428 \begin_inset Quotes eld
15432 \begin_inset Quotes erd
15440 in a displayed formula to convert it back to an inline formula.
15444 \labelwidthstring 00.00.0000
15459 to insert a fraction (
15464 \begin_inset Quotes eld
15468 \begin_inset Quotes erd
15472 You can also select an expression and type
15476 to convert it to the numerator of a fraction.
15485 end of the denominator will delete the numerator and convert the denominator
15490 \labelwidthstring 00.00.0000
15502 \begin_inset Formula $\int$
15510 \begin_inset Quotes eld
15514 \begin_inset Quotes erd
15521 \labelwidthstring 00.00.0000
15528 line-delete-forward
15530 -- Emacs-like binding: delete forward of cursor to end of line.
15534 \labelwidthstring 00.00.0000
15543 -- A text/math toggle (
15548 \begin_inset Quotes eld
15552 \begin_inset Quotes erd
15555 ): switches to math in text mode, and also inserts roman text in math mode.
15565 \begin_inset Quotes eld
15569 \begin_inset Quotes erd
15576 \labelwidthstring 00.00.0000
15585 -- Add/remove numbering in a single equation.
15589 \labelwidthstring 00.00.0000
15598 -- Add/remove numbering at a line in equation arrays.
15601 \begin_layout Standard
15602 The above commands are toggles that control the numbering of equations (
15607 \begin_inset Quotes eld
15611 \begin_inset Quotes erd
15615 Note: when deleting a number in a labeled eqnarray, the label is not really
15616 removed (the TeX code becomes
15617 \begin_inset Quotes eld
15629 \begin_inset Quotes erd
15632 ) and this generates a (harmless) LaTeX warning.
15636 \labelwidthstring 00.00.0000
15645 -- Open a new document.
15650 \labelwidthstring 00.00.0000
15659 -- Insert a quote character " (
15664 \begin_inset Quotes eld
15668 \begin_inset Quotes erd
15673 \begin_inset Quotes eld
15677 \begin_inset Quotes erd
15680 double quote character that you get by default.
15684 \labelwidthstring 00.00.0000
15695 -- Square root sign
15696 \begin_inset Formula $\sqrt{x}$
15704 \begin_inset Quotes eld
15708 \begin_inset Quotes erd
15715 \labelwidthstring 00.00.0000
15727 \begin_inset Formula $\sqrt[n]{x}$
15734 \labelwidthstring 00.00.0000
15743 -- Another binding for a switch between the text and the math mode (
15748 \begin_inset Quotes eld
15752 \begin_inset Quotes erd
15756 Note that the roman text inserted in math mode is special.
15760 \labelwidthstring 00.00.0000
15773 the selected text (text mode only, use things like
15789 \labelwidthstring 00.00.0000
15798 -- W*ndows heritage.
15802 \labelwidthstring 00.00.0000
15811 -- Close the current document (again, a W*ndows heritage).
15815 \labelwidthstring 00.00.0000
15826 \labelwidthstring 00.00.0000
15837 \labelwidthstring 00.00.0000
15847 \begin_inset Quotes eld
15851 \begin_inset Quotes erd
15855 \begin_inset Quotes eld
15859 \begin_inset Quotes erd
15865 \begin_layout Standard
15866 Bracket delimiters: press
15870 -<bracket key> to insert a matching pair of delimiters.
15875 inserts a pair of parentheses
15876 \begin_inset Formula $\left[\right]$
15884 does the same thing.) It will switch to math mode if needed.
15885 The supported characters are ( [ { < |.
15886 It is the same to press the right or the left bracket.
15887 The corresponding delimiters are
15888 \begin_inset Formula $\left(\right)$
15892 \begin_inset Formula $\left[\right]$
15896 \begin_inset Formula $\left\{ \right\} $
15900 \begin_inset Formula $\left\langle \right\rangle $
15904 \begin_inset Formula $\left|\right|$
15909 \begin_inset Quotes eld
15913 \begin_inset Quotes erd
15916 and resize with their contents.
15917 Use Math Panel to get other or non-matching delimiters.
15918 Press backspace on the
15922 delimiter to remove both
15923 \begin_inset Quotes eld
15927 \begin_inset Quotes erd
15930 delimiters without removing their contents.
15934 \labelwidthstring 00.00.0000
15943 -- for convenience, pressing
15957 \labelwidthstring 00.00.0000
15968 \labelwidthstring 00.00.0000
15979 \labelwidthstring 00.00.0000
15990 \labelwidthstring 00.00.0000
16001 \labelwidthstring 00.00.0000
16012 \labelwidthstring 00.00.0000
16019 math-delim langle rangle
16021 -- angular delimiters
16022 \begin_inset Formula $\left\langle \right\rangle $
16025 , not to confuse with ordinary < > signs.
16029 \labelwidthstring 00.00.0000
16036 math-delim langle rangle
16039 \begin_layout Standard
16040 The bar bracket: on some keyboards (e.g.\InsetSpace ~
16041 some British ones), the bar character
16046 -something and on some wayward Unices to "brokenbar".
16047 So we define all of these keys as well.
16051 \labelwidthstring 00.00.0000
16062 \labelwidthstring 00.00.0000
16073 \labelwidthstring 00.00.0000
16084 \labelwidthstring 00.00.0000
16095 \labelwidthstring 00.00.0000
16105 \begin_layout Standard
16106 Accents are in most cases
16110 -<accent key>, e.g.\InsetSpace ~
16124 for tilde (you also need to press
16130 \begin_inset Quotes eld
16142 \begin_inset Quotes erd
16146 Some accents work only in math mode and others only in text mode.
16150 \labelwidthstring 00.00.0000
16159 -- overdot accent, ȧ (text mode only).
16163 \labelwidthstring 00.00.0000
16175 \begin_inset Formula $\dot{a}$
16178 (math mode only -- in physics this denotes a first derivative).
16182 \labelwidthstring 00.00.0000
16193 -- Vector accent over math
16194 \begin_inset Formula $\overrightarrow{x}$
16201 \labelwidthstring 00.00.0000
16210 -- umlaut accent, ä (text mode only)
16214 \labelwidthstring 00.00.0000
16225 -- double dot accent,
16226 \begin_inset Formula $\ddot{a}$
16229 (math mode only -- in physics this denotes a second derivative).
16230 To get a triple dot in math mode, use
16238 \labelwidthstring 00.00.0000
16247 -- grave accent à (text mode only, use
16257 \labelwidthstring 00.00.0000
16266 -- tilde accent ã (text mode only, use
16276 \labelwidthstring 00.00.0000
16285 -- acute accent á (text mode only, use
16295 \labelwidthstring 00.00.0000
16304 -- circumflex (caret) accent â (text mode only, use
16313 \begin_layout Standard
16315 The new key S-F2 for creating a LaTeX file seems handy.
16319 \labelwidthstring 00.00.0000
16328 -- Save current document.
16332 \labelwidthstring 00.00.0000
16339 buffer-export latex
16341 -- Write a LaTeX file for the current document.
16345 \labelwidthstring 00.00.0000
16354 -- Find and replace dialog.
16358 \labelwidthstring 00.00.0000
16375 \labelwidthstring 00.00.0000
16388 to quit LyX is the W*ndows w*ndow manager's mnemonic.
16391 \begin_layout Standard
16400 are used to switch fonts.
16405 to switch back to the normal font.
16406 The non-default font switches
16414 all work as toggles.
16415 They also work on the whole word if you put the cursor in the middle of
16416 the word, or if you select some text.
16420 \labelwidthstring 00.00.0000
16429 -- stop using any special font
16433 \labelwidthstring 00.00.0000
16450 \labelwidthstring 00.00.0000
16467 \labelwidthstring 00.00.0000
16484 \labelwidthstring 00.00.0000
16498 (Used sometimes for people's names.)
16501 \begin_layout Standard
16507 \begin_inset Quotes eld
16511 \begin_inset Quotes erd
16518 key (useful e.g.\InsetSpace ~
16519 if the keyboard has no working
16526 \begin_layout Standard
16527 Here are some Sciword-inspired mnemonics for frequently used math symbols.
16528 Many symbols start with a
16537 cannot be itself bound to anything.
16541 \labelwidthstring 00.00.0000
16553 \begin_inset Quotes eld
16557 \begin_inset Quotes erd
16561 \begin_inset Formula $\prime$
16565 This is frequently unnecessary: in most cases the normal apostrophe works
16568 \begin_inset Formula $x'+2x=0$
16571 , but in some cases this would generate a double superscript error in LaTeX.
16573 \begin_inset Formula $x^{\prime2}$
16577 \begin_inset Formula $x$
16580 prime squared) must be entered with the prime character.
16584 \labelwidthstring 00.00.0000
16592 command-sequence math-superscript; math-insert
16596 -- Insert a prime as a superscript (see example above).
16600 \labelwidthstring 00.00.0000
16609 -- Insert an upper index.
16616 \labelwidthstring 00.00.0000
16625 -- Insert a lower index.
16632 \labelwidthstring 00.00.0000
16644 -- Partial derivative symbol
16645 \begin_inset Formula $\partial$
16652 \labelwidthstring 00.00.0000
16664 -- Summation symbol
16665 \begin_inset Formula $\sum$
16668 (not the same as the Greek letter uppercase Sigma
16669 \begin_inset Formula $\Sigma$
16672 because it can resize and allows smart upper/lower limits).
16676 \labelwidthstring 00.00.0000
16689 \begin_inset Formula $\prod$
16692 (not the same as the Greek letter uppercase Pi,
16693 \begin_inset Formula $\Pi$
16700 \labelwidthstring 00.00.0000
16713 \begin_inset Formula $\infty$
16720 \labelwidthstring 00.00.0000
16733 \begin_inset Formula $\times$
16740 \labelwidthstring 00.00.0000
16750 -- Insert a stacked array
16751 \begin_inset Formula $\begin{array}{c}
16753 \end{array}\end{array}$
16757 (Frequently useful in formulae.)
16761 \labelwidthstring 00.00.0000
16772 \begin_inset Formula $\times$
16776 \begin_inset Formula $\begin{array}{ccc}
16781 (Then you can modify its size using the
16783 Edit\SpecialChar \menuseparator
16790 \labelwidthstring 00.00.0000
16803 \begin_inset Quotes eld
16807 \begin_inset Quotes erd
16811 \begin_inset Formula $\dagger$
16818 \labelwidthstring 00.00.0000
16831 \begin_inset Quotes eld
16835 \begin_inset Quotes erd
16839 \begin_inset Formula $\equiv$
16846 \labelwidthstring 00.00.0000
16858 \begin_inset Quotes eld
16861 Approximate equality
16862 \begin_inset Quotes erd
16866 \begin_inset Formula $\approx$
16873 \labelwidthstring 00.00.0000
16885 \begin_inset Quotes eld
16889 \begin_inset Quotes erd
16893 \begin_inset Formula $\sim$
16900 \labelwidthstring 00.00.0000
16912 \begin_inset Formula $\rightarrow$
16916 \begin_inset Formula $\lim_{x\rightarrow0}$
16923 \labelwidthstring 00.00.0000
16935 \begin_inset Formula $\leq$
16942 \labelwidthstring 00.00.0000
16953 -- Greater-or-equal
16954 \begin_inset Formula $\geq$
16961 \labelwidthstring 00.00.0000
16974 \begin_inset Quotes eld
16978 \begin_inset Quotes erd
16982 \begin_inset Formula $\ll$
16985 (useful in physics)
16989 \labelwidthstring 00.00.0000
17002 \begin_inset Quotes eld
17006 \begin_inset Quotes erd
17010 \begin_inset Formula $\gg$
17016 \begin_layout Subsection
17017 Standard math bindings
17021 \labelwidthstring 00.00.0000
17035 \labelwidthstring 00.00.0000
17047 \labelwidthstring 00.00.0000
17059 \labelwidthstring 00.00.0000
17073 \labelwidthstring 00.00.0000
17085 \labelwidthstring 00.00.0000
17097 \labelwidthstring 00.00.0000
17111 \labelwidthstring 00.00.0000
17123 \labelwidthstring 00.00.0000
17135 \labelwidthstring 00.00.0000
17147 \labelwidthstring 00.00.0000
17161 \labelwidthstring 00.00.0000
17175 \labelwidthstring 00.00.0000
17189 \labelwidthstring 00.00.0000
17203 \labelwidthstring 00.00.0000
17217 \labelwidthstring 00.00.0000
17231 \labelwidthstring 00.00.0000
17243 \labelwidthstring 00.00.0000
17257 \labelwidthstring 00.00.0000
17269 \labelwidthstring 00.00.0000
17281 \labelwidthstring 00.00.0000
17293 \labelwidthstring 00.00.0000
17305 \labelwidthstring 00.00.0000
17319 \labelwidthstring 00.00.0000
17331 \labelwidthstring 00.00.0000
17343 \labelwidthstring 00.00.0000
17355 \labelwidthstring 00.00.0000
17363 math-delim langle rangle
17367 \labelwidthstring 00.00.0000
17375 math-delim rangle langle
17379 \labelwidthstring 00.00.0000
17391 \labelwidthstring 00.00.0000
17405 \labelwidthstring 00.00.0000
17418 \begin_layout Subsection
17423 \labelwidthstring 00.00.0000
17435 \labelwidthstring 00.00.0000
17447 \labelwidthstring 00.00.0000
17459 \labelwidthstring 00.00.0000
17471 \labelwidthstring 00.00.0000