#LyX 1.3 created this file. For more info see http://www.lyx.org/ \lyxformat 221 \textclass book \begin_preamble \usepackage{multicol} \IfFileExists{isolatin.def} {\usepackage[isolatin]{inputenc}} {\usepackage[latin1]{inputenc}} \end_preamble \language english \inputencoding default \fontscheme default \graphics none \paperfontsize default \spacing single \papersize Default \paperpackage a4 \use_geometry 0 \use_amsmath 0 \use_natbib 0 \use_numerical_citations 0 \paperorientation portrait \secnumdepth 3 \tocdepth 3 \paragraph_separation indent \defskip medskip \quotes_language english \quotes_times 2 \papercolumns 1 \papersides 2 \paperpagestyle headings \layout Title Customizing LyX: Features for the Advanced User \layout Author by the LyX Team \begin_inset Foot collapsed true \layout Standard \noindent Principal maintainer of this file is \noun on Mike Ressler \noun default . If you have comments or error corrections, please send them to the LyX Documentation mailing list, . \end_inset \layout Standard \begin_inset LatexCommand \tableofcontents{} \end_inset \layout Chapter Introduction \layout Standard This manual covers the customization features present in LyX. In it, we discuss issues like keyboard shortcuts, screen previewing options, printer options, sending commands to LyX via the LyX Server, internationalizati on, installing new LaTeX classes and LyX layouts, etc. We can't possibly hope to touch on everything you can change---our developers add new features faster than we can document them---but we will explain the most common customizations and hopefully point you in the right direction for some of the more obscure ones. \layout Chapter LyX configuration files \layout Standard \begin_inset LatexCommand \label{chap:config} \end_inset This chapter aims to help you to find your way through the LyX configuration files. Before continuing to read this chapter, you should find out where your LyX library directory is by using \family sans \bar under H \bar default elp\SpecialChar \menuseparator About\SpecialChar ~ Ly \bar under X \family default \bar default . This directory is the place where LyX places its system-wide configuration files, and we will simply name it \family typewriter LyXDir \family default in the remainder of this document. \layout Section What's in \family typewriter LyXDir \family default ? \layout Standard \family typewriter LyXDir \family default and its sub-directories contain a number of files and that can be used to customise LyX's behaviour. You can change many of these files from within LyX itself through the \family sans \bar under T \bar default ools\SpecialChar \menuseparator \bar under P \bar default references \family default dialog. Most customization that you might want to do to LyX is possible through this dialog. However, many other inner aspects of LyX can be customized by modifying the files in \family typewriter LyXDir \family default . They fall in different categories, described in the following subsections. \layout Subsection Automatically generated files \layout Standard These files are generated when you configure LyX. They contain various default values that are guessed by inspection. In general, it is not a good idea to modify them, since they might be overwritt en at any time. \layout List \labelwidthstring 00.00.0000 \family typewriter \series medium lyxrc.defaults \family default \series default contains defaults for various commands. \layout List \labelwidthstring 00.00.0000 \family typewriter \series medium packages.lst \family default \series default contains the list of packages that have been recognized by LyX. It is currently unused by the LyX program itself, but the information extracted , and more, is made available with \family sans \bar under H \bar default elp\SpecialChar \menuseparator L \bar under a \bar default TeX\SpecialChar ~ Configuration \family default . \layout List \labelwidthstring 00.00.0000 \family typewriter \series medium textclass.lst \family default \series default is the list of text classes that have been found in your \family typewriter layout/ \family default directory, along with the associated LaTeX document class and their description. \layout List \labelwidthstring 00.00.0000 \family typewriter doc/LaTeXConfig.lyx \family default is automatically generated during configuration from the file \family typewriter LaTeXConfig.lyx.in \family default . \layout Subsection Directories \layout List \labelwidthstring 00.00.0000 \family typewriter \series medium bind/ \family default \series default this directory contains files with the extension \family typewriter .bind \family default that define the keybindings used in LyX (see section\SpecialChar ~ \begin_inset LatexCommand \ref{sec:bindings} \end_inset ). If there exists an internationalized version of the bindfile named \family typewriter $LANG_xxx.bind \family default , that will be used first. See Chapter\SpecialChar ~ \begin_inset LatexCommand \ref{chap:i18n} \end_inset , and section \begin_inset LatexCommand \ref{sec:bindings} \end_inset for details. \layout List \labelwidthstring 00.00.0000 \family typewriter \series medium clipart/ \family default \series default contains graphics files that can be included in documents. \layout List \labelwidthstring 00.00.0000 \family typewriter \series medium doc/ \family default \series default contains LyX documentation files (including the one you are currently reading). The file \family typewriter LaTeXConfig.lyx \family default deserves special attention, as noted above. If there exists an internationalized version of the help-document with \family typewriter $LANG_ \family default prepended to the name, that will be used first. See Chapter\SpecialChar ~ \begin_inset LatexCommand \ref{chap:i18n} \end_inset for details. \layout List \labelwidthstring 00.00.0000 \family typewriter \series medium examples/ \family default \series default contains example files that explain how to use some features. In the file browser, press the \family sans Examples \family default button to get there. \layout List \labelwidthstring 00.00.0000 \family typewriter images/ \family default contains image files that are used by the \family sans Document \family default dialog. In addition, it also contains the individual icons used in the toolbar and the banners that can be shown when LyX is launched. \layout List \labelwidthstring 00.00.0000 \family typewriter \series medium kbd/ \family default \series default contains keyboard keymapping files. See Chapter\SpecialChar ~ \begin_inset LatexCommand \ref{sec:keymap} \end_inset for details. \layout List \labelwidthstring 00.00.0000 \family typewriter \series medium layouts/ \family default \series default contains the text class files described in Chapter\SpecialChar ~ \begin_inset LatexCommand \ref{chap:textclass} \end_inset . \layout List \labelwidthstring 00.00.0000 \family typewriter reLyX/ \family default contains lots of files that together make up reLyX, the translator of \begin_inset Quotes eld \end_inset well behaved \begin_inset Quotes erd \end_inset LaTeX into LyX. \layout List \labelwidthstring 00.00.0000 \family typewriter scripts/ \family default contains some files that demonstrate the capabilities of the \family sans External\SpecialChar ~ Template \family default feature. \layout List \labelwidthstring 00.00.0000 \family typewriter templates/ \family default contains the standard LyX template files described in Chapter\SpecialChar ~ \begin_inset LatexCommand \ref{sec:templates} \end_inset . \layout List \labelwidthstring 00.00.0000 \family typewriter tex/ \family default contains some LaTeX cls files distributed with LyX. \layout List \labelwidthstring 00.00.0000 \family typewriter ui/ \family default contains files with the extension \family typewriter .ui \family default that define the user interface to LyX. That is, the files define which items appear in which menus and the items appearing on the toolbar. See Chapter\SpecialChar ~ \begin_inset LatexCommand \ref{sec:ui} \end_inset for details. \layout Subsection Files you don't want to modify \layout Standard These files are used internally by LyX and you generally do not need to modify them unless you are a developer. \layout List \labelwidthstring 00.00.0000 \family typewriter \series medium CREDITS \family default \series default this file contains the list of LyX developers. The contents are displayed with the menu entry \family sans \bar under H \bar default elp\SpecialChar \menuseparator About\SpecialChar ~ LyX \family default . \layout List \labelwidthstring 00.00.0000 \family typewriter \series medium chkconfig.ltx \family default \series default this is a LaTeX script used during the configuration process. Do not run directly. \layout List \labelwidthstring 00.00.0000 \family typewriter \series medium configure \family default \series default this is the script that is used to re-configure LyX. It creates configuration files in the directory it was run from. \layout Subsection Other files needing a line or two... \layout List \labelwidthstring 00.00.0000 \family typewriter encodings \family default this contains tables describing how different character encodings can be mapped to unicode \layout List \labelwidthstring 00.00.0000 \family typewriter external_templates \family default this file contains the templates available to the new \family sans External\SpecialChar ~ Template \family default feature. \layout List \labelwidthstring 00.00.0000 \family typewriter languages \family default this file contains a list of all the languages currently supported by LyX. \layout List \labelwidthstring 00.00.0000 \family typewriter lyxrc.example \family default Deprecated and definitely obfuscated. This is the old style preferences file. It will probably disappear in the near future. \layout Section Your local configuration directory \layout Standard Even if you are using LyX as an unprivileged user, you might want to change LyX configuration for your own use. The \family typewriter UserDir \family default directory contains all your personal configuration files. This is the directory described as \begin_inset Quotes eld \end_inset user directory \begin_inset Quotes erd \end_inset in \family sans \bar under H \bar default elp\SpecialChar \menuseparator About\SpecialChar ~ LyX \family default . This directory is used as a mirror of \family typewriter LyXDir \family default , which means that every file in \family typewriter UserDir \family default is a replacement for the corresponding file in \family typewriter LyXDir \family default . Any configuration file described in the above sections can be placed either in the system-wide directory, in which case it will affect all users, or in your local directory for your own use. \layout Standard To make things clearer, let's provide a few examples: \layout Itemize The preferences set in the \family sans \bar under T \bar default ools\SpecialChar \menuseparator \bar under P \bar default references \family default dialog are saved to a file \family typewriter preferences \family default in \family typewriter UserDir \family default . \layout Itemize When you reconfigure using \family sans \bar under T \bar default ools\SpecialChar \menuseparator \bar under R \bar default econfigure \family default , LyX runs \family typewriter configure \family default and the resulting files are written in your local configuration directory (see section\SpecialChar ~ \begin_inset LatexCommand \ref{sec:autodetected} \end_inset to have a list of the \family typewriter preferences \family default settings affected by this section). This means that any additional text class file that you might have added in \family typewriter UserDir/layouts \family default will be added to the list of classes in the \family sans \bar under L \bar default ayout\SpecialChar \menuseparator \bar under D \bar default ocument \family default dialog. \layout Itemize Similarly, if you have installed some LaTeX document classes in your home directory, that LaTeX can find with your \family typewriter TEXINPUTS \family default path, they will show up in your list of text classes. \begin_inset Foot collapsed true \layout Standard as long as LyX or yourself have a \family typewriter .layout \family default file for it, of course. \end_inset \layout Itemize If you get some updated documentation from LyX ftp site and cannot install it because you do not have sysadmin rights on your system, you can just copy the files in \family typewriter UserDir/doc/ \family default and the items in the \family sans \bar under H \bar default elp \family default menu will open them! \layout Section Running LyX with multiple configurations \layout Standard The configuration freedom of the local configuration directory may not suffice if you want to have more than one configuration at your disposal. For example, you may want to be use different key bindings or printer settings at different times. You can achieve this by having several such directories. You then specify which directory to use at run-time. \layout Standard Invoking LyX with the command line switch \family typewriter -userdir \family default \emph on \emph default instructs the program to read the configuration from that directory, and not from the default directory (you can determine the default directory by running LyX without this switch as described above). If this directory does not exist, LyX offers to create it for you, just like it does for the default directory on the first time you run the program. You can modify the configuration options in this additional \family typewriter Userdir \family default exactly as you would for the default directory. These directories are completely independent (but read on). Note that setting the environment variable \family typewriter LYX_USERDIR_13x \family default to some value has exactly the same effect \family typewriter . \layout Standard Having several configurations also requires more maintenance: if you want to add a new layout to \family typewriter Userdir/layouts \family default which you want available from all your configurations, you must add it to each directory separately. You can avoid this with the following trick: after LyX creates the additional directory, most of the subdirectories (see above) are empty. If you want the new configuration to mirror an existing one, replace the empty subdirectory with a symbolic link to the matching subdirectory in the existing configuration. Take care with the \family typewriter \series medium doc/ \family default \series default subirectory, however, since it contains a file written by the configuration script (also accessible through \family sans \bar under T \bar default ools\SpecialChar \menuseparator \bar under R \bar default econfigure \begin_inset LatexCommand \ref{sec:autodetected} \end_inset ) \family default which is configuration-specific. \layout Chapter The \family sans \bar under P \bar default references \family default dialog \layout Section Using the dialog for the first time \layout Standard The \family typewriter UserDir/preferences \family default file will contain only changes that you have made to the default behaviour, some of which is hard-coded into LyX and some of which is contained in the system file \family typewriter LyXDir/lyxrc.defaults \family default . Note that in both files lines beginning with a \begin_inset Quotes eld \end_inset \family typewriter # \family default \begin_inset Quotes erd \end_inset are just comments and not interpreted. However, only system administrators should edit \family typewriter LyXDir/lyxrc \family default . Users should use the \family sans \bar under T \bar default ools\SpecialChar \menuseparator \bar under P \bar default references \family default dialog to create and modify their own \family typewriter UserDir/preferences \family default file. \layout Standard We hope that the \family sans \bar under T \bar default ools\SpecialChar \menuseparator \bar under P \bar default references \family default dialog will be largely self-explanatory. Almost all the commands have an associated comment, so you shouldn't have too much trouble modifying it to taste. Before we highlight a few of the more important commands below, however, a word of warning: \family sans Apply \family default ing some of your changes (e.g., screen fonts) will have an instant effect. Others (e.g. changing the bind file) will not. If nothing appears to have changed, just \family sans Save \family default the changes and restart LyX. \layout Section On-screen fonts \layout Standard The font used to display your documents on the LyX screen is very important, since you'll be reading all your documents with this font. Therefore it is important that the font is as readable and good-looking as possible. The LyX team tried to provide the best possible default font for you, but since practically all X11 systems are different, it's likely that the default fonts will be sub-optimal on your system. Fortunately, you can do something about this. Before we explain how to do this, you should learn a bit more about fonts so that you are better prepared for choosing your fonts, because it is a trade-off that is specific to your preferences and the capabilities of your system. \layout Standard Notice that this section only deals with the fonts on the \emph on screen \emph default inside the LyX window. The fonts that appear on the \emph on paper \emph default \emph on output \emph default are independent from these fonts, and are determined by the document class. Read the \emph on User's Guide \emph default to learn how to change the font of the printed version of your document. \layout Standard Basically, screen fonts come in two different kinds: scalable outline fonts and non-scalable bitmap fonts. This distinction seems a bit arbitrary, since non-scalable fonts are actually scalable in most modern font renderers. The difference lies in the \emph on quality \emph default of the scaling, and the \emph on speed \emph default of display. The most important decision is thus whether you should use non-scalable bitmap fonts or scalable outline fonts. \layout Standard The scalable fonts are built from \emph on outlines \emph default of the single glyphs (i.e. characters) in the font. This means that each glyph is defined using mathematical curves that are well suited for scaling to any requested size. This mathematical definition is interpreted by the font renderer and turned into a small picture composed of pixels according to which size and glyph, the programmer requests. This means that scalable fonts will look pretty good in all sizes. Well, almost all sizes. Since scalable fonts are defined in an abstract way, it can be hard to provide a good rendering at small sizes, where each pixel has to be very carefully computed to provide a good image. Technically it is possible to do this from the mathematical definition, but in order to keep the rendering reasonably fast, tradeoffs have to be made, and the result is that scalable fonts can be difficult to read at small sizes. \layout Standard Bitmap fonts on the other hand, are defined by bitmap graphics from the start, so they will look good at all the sizes they are meant for. However, they don't scale well, because in order to scale a glyph, each pixel is enlarged into several pixels. It is the same effect that happens if you try to enlarge a picture in \family typewriter xv \family default or any other picture manipulation program. In order to relieve this effect, bitmap fonts are typically provided in several fixed sizes typically from around 8 pixels high up to 34 pixels or so high in steps according to what is believed to be useful. The advantage of bitmap fonts is that no complicated computations are necessary to display each glyph, so bitmap fonts are thus faster displayed than scalable fonts. The disadvantage is that sizes that don't exists as fixed versions have to be scaled by doubling pixels, and thus look bad. \layout Standard The net result of all this, is that bitmap fonts are generally best for the small sizes, where they are available, while scalable fonts are generally best for large sizes. The logical conclusion would thus be to use bitmap fonts for the small sizes, and scalable fonts for the large sizes. Unfortunately, this is not a good idea, since bitmap fonts and scalable fonts are not designed to be used together, so the overall look of such a scheme would be bad. The best you can do is thus to try both schemes and decide for yourself what suits you. \layout Standard By default, LyX uses non-scalable bitmap fonts (when using the XForms frontend). For serif fonts, \emph on times \emph default is used, for sans serif fonts, \emph on helvetica \emph default is used, while \emph on courier \emph default is used as the monospaced/typewriter font. \layout Standard In the following, we will describe what to do if the text does not look good in LyX. We'll start with the most important parameters: DPI and font zoom. \layout Subsection DPI setting and Font Zoom \layout Standard LyX automatically tries to scale the fonts to look as close as the paper output size as possible, except for the so-called font zoom factor. \layout Standard In order for this to work on all systems, it relies on the screen DPI (dots per inch) setting to be correct. The DPI setting for your system is autodetected by LyX using the information the X server can provide. You can check what LyX autodetects the DPI setting to, by running LyX as \family typewriter lyx -dbg 2 \family default . \layout Standard On many systems, X is not set up correctly, so you should check that it is correct by hand. Run \begin_inset Quotes eld \end_inset \family typewriter xdpyinfo | more \family default \begin_inset Quotes erd \end_inset and write down what the DPI is for the resolution you use (this will be close to the value LyX detects). It is the number mentioned as \begin_inset Quotes eld \end_inset resolution \begin_inset Quotes erd \end_inset . Also write down the number of pixels you have in the width (the first number under \begin_inset Quotes eld \end_inset dimensions \begin_inset Quotes erd \end_inset ). \layout Standard Then get the good old ruler out of the closet, and measure the width of the visible screen-image on your monitor. Convert this measurement to inches if you used a centimeter ruler by dividing by 2.54. Now you can determine the correct DPI setting for your screen by dividing the number of pixels in the width by the width of the screen-image on the monitor. If this number is more than, say, 5 DPI from the detected value, you should either fix the X setup, or at least tell LyX that the DPI is different than the detected value. \layout Standard If you can't fix the X setup (which of course is best since other programs than LyX will benefit from this as well), you can tell LyX the correct DPI using the \family sans Preferences \family default dialog. \layout Standard If the text is too small or too big for your taste, you should fiddle with the font zoom setting. This setting is used to scale the point size of the text. If your DPI setting is correct, and the font zoom setting is set to 100, this means that LyX will try to display the text exactly the same size as it will appear on the paper-output. If you set the zoom factor to 200, the text will try to be 2 times as big as on paper. Of course, this will only happen if LyX can find a font that has the appropriat e size, which you can't count on. Since LyX is a WYSIWYM system anyways, this limitation isn't much of an issue. \layout Standard The default font zoom setting is 150, since a monitor is typically wider than a piece of paper, but you should try to fiddle with it through the \family sans Font\SpecialChar ~ \bar under Z \bar default oom \family default setting in the \family sans Preferences \family default dialog to find a size that you like. When you've found a setting that seems to work nicely for you (tip: use the \family sans \bar under A \bar default pply \family default button to keep the dialog open while you experiment), you can make this setting the default by using the \family sans \bar under S \bar default ave \family default button. \layout Standard While it is often possible to find a suitable size for the text on the screen, this doesn't necessarily mean that the fonts are the best ones available on your system. In order to help you get the most out of your system, you can use the font definition commands to fine-tune the look of the text in greater detail than merely size. \layout Subsection Font definition commands \layout Standard As mentioned, LyX uses non-scalable bitmap fonts by default with the XForms frontend. For serif fonts, \emph on times \emph default is used, for sans serif fonts, \emph on helvetica \emph default is used, while \emph on courier \emph default is used as the monospaced/typewriter font. \layout Standard You can change all of these from within the \family sans Preferences \family default dialog. The number of fonts that are available on different systems vary, but the program \family typewriter xfontsel \family default should be available everywhere. Use that program to find candidate fonts. When you've found a font that you like, try to insert the first two elements of the name (called \begin_inset Quotes eld \end_inset fndry \begin_inset Quotes erd \end_inset and \begin_inset Quotes eld \end_inset fmly \begin_inset Quotes erd \end_inset in \family typewriter xfontsel \family default ) in the appropriate field in the \family sans Preferences \family default dialog and press \family sans \bar under A \bar default pply \family default . LyX will then reformat your document using the new font, and if you like the font, you should \family sans \bar under S \bar default ave \family default it. One place to start for a new font is to see if the scalable font \begin_inset Quotes eld \end_inset utopia \begin_inset Quotes erd \end_inset is available. Tip: You can see whether a font is a bitmap font or a scalable font by checking the \begin_inset Quotes eld \end_inset resx \begin_inset Quotes erd \end_inset or \begin_inset Quotes eld \end_inset resy \begin_inset Quotes erd \end_inset fields in \family typewriter xfontsel \family default . If the value 0 is available, the font is scalable. If the value 0 isn't available, the font is a bitmap font. \layout Standard Before you go about scrapping a bitmap font because the larger sizes look \begin_inset Quotes eld \end_inset blocky \begin_inset Quotes erd \end_inset , you should toggle the \begin_inset Quotes eld \end_inset Use scalable fonts \begin_inset Quotes erd \end_inset button. This is only useful if you use bitmap fonts, because only these don't scale well. If you define this flag, LyX will only use the fixed font sizes that are available, and this guarantees that all bitmap fonts look well. (You can see which individual font sizes are available with the \family typewriter xlsfonts \family default command. Try \family typewriter man xlsfonts \family default .) However, the prize is that the difference between the size of the fonts on screen and the size of fonts on paper will be larger because LyX will have to be satisfied with the closest available size, and not try to scale a size to fit. Also, you can risk that some logically different sizes, such as \family sans Large \family default and \family sans Larger \family default , will be mapped to the same screen font, making it hard for you to see the difference on screen. We've decided not to use scalable fonts by default because of these artifacts, but since LyX is a WYSIWYM system, many people like to use the flag anyways, well-knowing that the font size on the screen can't be trusted. But remember that this flag only makes a difference when you use bitmap fonts. Scalable fonts won't be affected for reasons you should understand by now. \layout Standard One final note regarding this flag: you should know that there is nothing wrong with using bitmap and scalable fonts at the same time for different purposes. For instance, it's common to use the scalable \begin_inset Quotes eld \end_inset Utopia \begin_inset Quotes erd \end_inset for the serif text together with a bitmap version of \begin_inset Quotes eld \end_inset Helvetica \begin_inset Quotes erd \end_inset . And you can safely select the \begin_inset Quotes eld \end_inset Use scalable fonts \begin_inset Quotes erd \end_inset button without worries: It will only apply to the Helvetica font. \layout Standard Sometimes the artifacts introduced by use of the flag can be relieved by using the fine-detail screen font sizes which defines which point sizes the different logical font sizes correspond to. Run LyX as \family typewriter lyx -dbg 513 \family default to see exactly what concrete fonts the logical sizes map to, and try adjusting the corresponding entries in the \family sans Preferences \family default dialog until you've managed to hit the nail and get the fonts you want. This can be hard to do, because LyX uses the DPI setting and the font zoom settings to calculate which exact screen font size to ask the X server for, thus obfuscating the mapping. If you can't make it by trial-and-error, you can make the process more transparent if you set both the DPI setting and font zoom settings to 100---eve n when this is known to be wrong. This will of course make your scalable fonts look weird, so use with care. \layout Subsection Font encoding \layout Standard By default, LyX will use fonts meant to write Western European text, including all kinds of English. This is defined through the so-called \emph on font \emph default \emph on encoding \emph default . If you want to use LyX to write for instance Eastern European text, Cyrillic or any other language not covered by the ISO-8859-1 font encoding, you can define a different one with the encoding setting. This requires you to have special fonts installed. You can use \family typewriter xfontsel \family default to see whether this is the case: check the \begin_inset Quotes eld \end_inset rgstry \begin_inset Quotes erd \end_inset and \begin_inset Quotes eld \end_inset encdng \begin_inset Quotes erd \end_inset fields for ISO-8859-X values different from ISO-8859-1, and search for one that contains the national characters of your language. If you find any, enter this encoding in the dialog. If not, go searching the Web for appropriate fonts. For the Qt frontend, it's recommended you use an iso646 font set. \layout Standard When you've set LyX up to use a different font encoding, you should also consider changing the font used by dialog windows in LyX. For instance, the \family sans Table\SpecialChar ~ of\SpecialChar ~ Contents \family default dialog will not be understandable unless you tell LyX to use a different font for this. By default the menu font is set to \family typewriter -*-helvetica-medium-r \family default , but often Helvetica is not available in the font encoding you need, so the dialog allows this to be changed. \layout Standard As you can see, there are quite a few options that can be used to fine tune the look of your fonts. This should not scare you from fiddling with the settings, because after all, you will hopefully be using LyX for many hours in the future. And contrary to real WYSIWYG word processors where you are tied to using fonts that have to look good both on paper and on screen, LyX gives you the possibility of using fonts that are designed to look good on the screen while using a different set of fonts to look good on paper. \layout Section Bindings \begin_inset LatexCommand \label{sec:bindings} \end_inset \layout Standard Bindings are used to, well, bind a function to a key. Several prepackaged binding files are available: a CUA set of bindings (familiar as the typical set of PC and CDE set of keyboard shortcuts), an Emacs set of bindings, for those of us who follow the One True Way and refuse to lower our standards, \begin_inset Foot collapsed true \layout Standard I'm kidding here, of course! \end_inset as well as specialty bindings (broadway and hollywood) and other languages (French, German, etc.). \layout Standard If, however, you'd like to customise the keybindings to your own exacting tastes, then copy the best-fit file in \family typewriter LyXDir/bind/ \family default to your own \family typewriter UserDir/bind/ \family default and modify that. Don't forget to load this new file into LyX using the \family sans Preferences \family default dialog. (For the moment you'll have to restart LyX for these changes to take effect.) \layout Standard LyX supports internationalization of the user interface (see Chapter\SpecialChar ~ \begin_inset LatexCommand \ref{chap:i18n} \end_inset ). If your \emph on locale \emph default is set, with the environment variable \family typewriter $LANG \family default , LyX will try to use bindfiles by prepending \family typewriter $LANG_ \family default to their name. For example, you can put a translated copy of some standard bind file in your personal \family typewriter bind/ \family default directory, and LyX will use it automatically. \layout Standard The syntax of the \family typewriter .bind \family default files is straightforward: \layout Standard \family typewriter \backslash bind \layout Standard Both key combination and lyx-function (including any arguments) must be enclosed in "double quotes". All the LyX functions are listed in the \emph on Reference Guide \emph default . \layout Section User Interface \begin_inset LatexCommand \label{sec:ui} \end_inset \layout Standard The appearance of both the menu and toolbar may both be changed using the \family sans Preferences \family default dialog. Simply change the \family typewriter .ui \family default file in \family typewriter LyXDir/ui/ \family default . For the moment, only one file exists, \family typewriter default.ui \family default , but feel free to experiment. Just copy the file to the \family typewriter UserDir/ui/ \family default directory and play! Note that, for the moment, you'll have to restart LyX for these changes to take effect. \layout Standard The syntax of the \family typewriter .ui \family default files is straightforward: have a look at \family typewriter default.ui. The Menubar \family default , \family typewriter Menu \family default and \family typewriter Toolbar \family default entries must be ended with an explicit \family typewriter End \family default . They may contain \family typewriter Submenu \family default s, \family typewriter Item \family default s, \family typewriter OptItem \family default s, \family typewriter Separator \family default s, \family typewriter Icon \family default s and in the case of the \begin_inset Quotes eld \end_inset file \begin_inset Quotes erd \end_inset menus, a \family typewriter Lastfiles \family default entry. One small word of warning. \family typewriter Submenu \family default s may be inserted in a \family typewriter Menubar \family default or \family typewriter Menu \family default , but they are defined as \family typewriter Menu \family default s, not as \family typewriter Submenu \family default s. \layout Section Converters, Formats and Viewers \layout Standard LyX has a new and powerful mechanism to convert to and from any file format using external programs. Define a pair of formats, e.g. \family typewriter LaTeX \family default and \family typewriter PDF \family default . Now define a converter from one format to the other. In our example, two possible mechanisms exist. \layout Enumerate A direct conversion, from LaTeX to PDF using pdflatex \layout Enumerate A more convoluted route using intermediate formats and converters: LaTeX to DVI (using latex) to PostScript® (using dvips) to PDF (using ps2pdf). \layout Standard LyX will always choose the shortest possible route, so you must specify two different Format names for \family typewriter .pdf \family default files to be able to use either. Both are included by default in the \family sans Preferences \family default dialog. Have a look and then invent your own! \layout Standard Moreover, each Format can have a Viewer associated with it. For example, you might want to use \family typewriter ghostview \family default to examine PostScript® files, or \family typewriter xdvi \family default to preview the LaTeX output. You can alter the viewer to use (and what options to pass to it) via the \family sans \bar under T \bar default ools\SpecialChar \menuseparator \bar under P \bar default references:Converters \family default dialog. For example, to change the \family typewriter dvi \family default viewer, select the \family typewriter DVI \family default format in the dialog, change the viewer to be \family typewriter kdvi \family default (or whatever), and hit \family sans \bar under M \bar default odify \family default . \layout Section BibTeX and makeindex \layout Standard Both the bibliography generating command (default \family typewriter bibtex \family default ) and the index generating command (default \family typewriter makeindex \family default with options \family typewriter -c \family default and \family typewriter -q \family default ) can be changed. As an alternative for \family typewriter makeindex \family default , \family typewriter xindy \family default can be recommended. \layout Standard The command to enter is \layout Quote \family typewriter makeindex.sh -m $$lang \layout Standard where the placeholder \family typewriter $$lang \family default will be replaced by the chosen document (babel) language. For this, you must \layout Standard have installed the packages \family typewriter xindy \family default and \family typewriter make-rules \family default ( \family typewriter xindy-make-rules \family default ). Type \family typewriter makeindex.sh \family default at a shell prompt for a help page. \layout Section ASCII export options \layout Standard \added_space_top bigskip \noindent There are a couple of commands that can be used to \begin_inset Quotes eld \end_inset clean up \begin_inset Quotes erd \end_inset exported ASCII text files. Note that LyX automatically detects and uses the best settings for your system at installation time, but you can modify them if you disagree with its interpretation. \layout Description \family typewriter \series medium ASCII\SpecialChar ~ roff \family default \series default This option defines the command used to produce better ASCII tables with the \family typewriter groff/troff/nroff \family default UNIX-commands (refer to their manpages for more information about them). Setting this as empty tells LyX to use the internal (inferior) formatter. \layout Description \family typewriter \series medium ASCII\SpecialChar ~ line\SpecialChar ~ length \family default \series default With this command you can set the default line length of the ASCII output file. Setting it to 0 means endless lines. \layout Section Printer \layout Standard There are a bunch of configuration options that are used for interaction with the external print command from LyX. Normally the defaults are fine: if, however, your print command takes different option names, you can modify them here. \layout Subsection Changing Colors \layout Standard You can change the colors used by LyX on-screen using the new \family sans Preferences \family default dialog. Alternatively, if you're feeling particularly perverse you could use the \family typewriter set-color \family default bindable function (see the \emph on Reference Guide \emph default ). Input would have the format: \layout Standard \family typewriter set-color LyXName X11Color \layout Standard Here is a (partial) list of the functions and default colors: \layout Standard \align center \begin_inset Tabular \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none LyX Name \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none Purpose \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none Default Color (X11) \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none background \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none text background \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none black \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none foreground \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none text foreground \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none linen \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none latex \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none LaTeX code \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none DarkRed \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none math \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none Mathed formulae \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none DarkBlue \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none mathline \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none fraction Lines, brackets, etc. \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none Blue \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none mathbg \end_inset \begin_inset Text \layout Standard \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none AntiqueWhite \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none mathframe \end_inset \begin_inset Text \layout Standard \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none Magenta \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none mathcursor \end_inset \begin_inset Text \layout Standard \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none black \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none selection \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none selection background \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none LightBlue \end_inset \end_inset \layout Section The autodetected settings \layout Standard \begin_inset LatexCommand \label{sec:autodetected} \end_inset There are several items that are detected for you when you run \family sans \bar under T \bar default ools \bar under \SpecialChar \menuseparator R \bar default econfigure \family default . In this section, we list those which pertain to the user preferences. \layout Description \family typewriter \series medium \backslash ascii_roff_command \family default \series default uses either \family typewriter groff \family default or \family typewriter nroff \family default + \family typewriter tbl \family default , depending on what is available. \layout Description \family typewriter \series medium \backslash chktex_command \family default \series default is set to \family typewriter chktex \family default plus a bunch of options. \layout Description \family typewriter \series medium \backslash print_spool_command \family default \series default is set to \family typewriter lp \family default on systems (so-called System V) who have this command, and \family typewriter lpr \family default otherwise (BSD systems). \layout Description \family typewriter \series medium \backslash print_spool_printerprefix \family default \series default is set to \family typewriter -d \family default or \family typewriter -P \family default , depending on whether \family typewriter lp \family default or \family typewriter lpr \family default was found. \layout Description \family typewriter \series medium \backslash font_encoding \family default \series default is set to \family typewriter T1 \family default if the \family typewriter ec \family default fonts are found and LaTeX has support for these fonts built-in. You can set it manually if you only have the so-called \family typewriter dc \family default fonts. \layout Section The rest \layout Standard There are many other configuration options that can be used to customize LyX behavior. We still need to document them here, but again, most should be fairly obvious. Please ask on the mailing lists if you need some more information; it may even prompt us to expand this section. \layout Chapter Internationalizing LyX \begin_inset LatexCommand \label{chap:i18n} \end_inset \layout Standard LyX supports using a translated interface. Last time we checked, LyX provided text in 14 languages together with the default English text. The language of choice is called your \emph on locale \emph default . (For further reading on locale settings, see also the documentation for locale that comes with your operating system. For Linux, the manual page for locale(5) could be a good place to start). \layout Standard Notice that these translations will work, but do contain a few flaws. In particular, all dialogs have been designed with the English text in mind, which means that some of the translated text will be too large to fit within the space allocated. This is only a display problem and will not cause any harm. Also, you will find that some of the translations do not define short-cut keys for everything. Sometimes, there are simply not enough free letters to do it. Other times, the translator just hasn't got around to doing it yet. We'll try to fix these shortcomings in future versions of LyX. \layout Section Selecting an alternative language for the user interface \layout Standard This feature is disabled by default, meaning that the text will be English. To enable an alternative language, you have to set an appropriate environment variable. Use \family typewriter "setenv LANG xx" \family default \family roman for csh class shells \family default or \family typewriter "export LANG=xx" \family default \family roman for sh class shells \family default . Substitute the \family typewriter xx \family default with the two letter code for the language you want. For instance, \family typewriter no \family default is Norwegian. \layout Standard Normally, you'll want to put the appropriate line in \family typewriter ~/.Xsession \family default or \family typewriter ~/.xinitrc \family default so that the translation is on by default. Remember that if LyX is configured and compiled with \begin_inset Quotes eld \end_inset \family typewriter --disable-nls \family default \begin_inset Quotes erd \end_inset , this will not work. \layout Section Translating LyX \layout Subsection Translating the graphical user interface (text messages). \layout Standard LyX uses the GNU \family typewriter gettext \family default library to handle the internationalization of the interface. To have LyX speak your favorite language in all menus and dialogs, you need a \family typewriter po \family default -file for that language. When this is available, you'll have to generate a mo-file from it and install the \family typewriter mo \family default -file. The process of doing all of this is explained in the documentation for GNU \family typewriter gettext \family default , but in short, this is what you do ( \series bold xx \series default denotes the language code): \layout Standard \begin_inset ERT status Inlined \layout Standard \backslash begin{sloppypar} \end_inset \layout Itemize Copy \family typewriter LYX-SOURCE-DIR/po/lyx.pot \family default to \series bold xx \family typewriter \series default .po \family default (if \family typewriter lyx.pot \family default doesn't exist, it can be remade with \family typewriter make lyx.pot \family default in that directory, or you can use an existing po-file for some other language as a template). \layout Itemize Edit \family typewriter xx.po \begin_inset Foot collapsed true \layout Standard We recommend that you use Emacs to do this, since the \family typewriter gettext \family default distribution includes a nice mode that supports you in doing this. \end_inset \family default . For some menu- and widget-labels, there are also shortcut keys that should be translated. Those keys are marked after a `|', and should be translated according to the words and phrases of the \series bold xx \series default -language. There is a tool named \family typewriter scgen.pl \family default written in Prolog in \family typewriter LYX-SOURCE-DIR/development/tools/ \family default that may be useful to help determine short-cut keys. Note that XForms (version 0.86 at least) can't handle anything but 7-bit characters as shortcut keys. You should also fill also out the information at the beginning of the new \family typewriter po \family default -file with your email-address, etc., so people know where to reach you with suggestions and entertaining flames. \layout Itemize Generate \series bold xx \family typewriter \series default .mo \family default . This can be done with \newline \family typewriter msgfmt -o \family default \series bold xx \family typewriter \series default .mo < \family default \series bold xx \family typewriter \series default .po \layout Itemize Copy the \family typewriter mo \family default -file to your locale-tree, at the correct directory for application messages for the language \series bold xx \series default , and under the name \family typewriter lyx.mo \family default \newline (e.g. \family typewriter /usr/local/share/locale/ \family default \series bold xx \family typewriter \series default /LC_MESSAGES/lyx.mo \family default ) \layout Standard \begin_inset ERT status Inlined \layout Standard \backslash end{sloppypar} \end_inset \layout Standard Adding a new po-file to the \emph on distribution \emph default of LyX involves altering the configure scripts and more, but the way \family typewriter gettext \family default works, you don't actually need the source-code of LyX to translate it---having \family typewriter lyx.pot \family default (or an existing \family typewriter po \family default -file) and the \family typewriter gettext \family default tools suffices. \layout Standard If you've written a translation file for a language that LyX does not currently support, feel free to submit it for inclusion by sending a patch. In this case, we recommend that you read the \family typewriter README \family default provided in the \family typewriter LYX-SOURCE-DIR/po/ \family default directory for more instructions. \layout Subsubsection Ambigous messages \layout Standard Sometimes it turns out that one english message needs to be translated into different messages in the target language. One example is the message \family typewriter To \family default which has the german translation \family typewriter \lang german Nach \family default \lang english or \family typewriter \lang german Bis \family default \lang english . \family typewriter gettext \family default does not handle such ambigous translations. Therefore you have to add some context information to the message: Instead of \family typewriter To \family default it becomes \family typewriter To[[as in 'From format x to format y']] \family default and \family typewriter To[[as in 'From page x to page y']]. \family default Now the two occurences of \family typewriter To \family default are different for \family typewriter gettext \family default and can be translated correctly to \family typewriter \lang german Nach \family default \lang english and \family typewriter \lang german Bis \family default \lang english , respectively. \layout Standard Of course the context information needs to be stripped off the original message when no translation is used. Therefore you have to put it in double square brackets at the end of the message (see the example above). The translation mechanism of LyX ensures that everything in double square brackets at the end of messages is removed before displaying the message. \layout Subsection Translating the documentation. \layout Standard The online documentation (in the \family sans \bar under H \bar default elp \family default -menu) can (and should!) be translated. If there are translated versions of the documentation available \begin_inset Foot collapsed true \layout Standard As of February 2003, almost all of the docs have been translated into German and French. The \emph on Tutorial \emph default has been translated into at least 12 other languages, with other translations in progress. The library of translated documents is growing rapidly. \end_inset , and the locale is set accordingly, these will be used automagically by LyX. LyX looks for translated versions as \family typewriter LyXDir/doc/ \series bold xx \series default _DocName.lyx \family default , where \family typewriter \series bold xx \family default \series default denotes the language as set by the environmental variable \family typewriter $LANG \family default . If there are none, the default English versions will be displayed. Note that the translated versions must have the same filenames ( \family typewriter DocName \family default above) as the original. If you feel up to translating the documentation (an excellent way to proof-read the original documentation BTW!), there are a few things you should do right away: \layout Itemize Read \family typewriter DocStyle.lyx \family default , the guide to writing LyX documentation. Pay special attention to the translator's section. \layout Itemize Check out the documentation translation web page at \begin_inset LatexCommand \url[The LyX Developer's Web Site]{http://www.devel.lyx.org} \end_inset . That way, you can find out which (if any) documents have already been translate d into your language. You can also find out who (if anyone) is organizing the effort to translate the documentation into your language. If no one is organizing the effort, please let us know that you're interested. \layout Standard Once you get to actually translating, here's a few hints for you that may save you trouble: \layout Itemize Join the documentation team! There is information on how to do that in \family typewriter Intro.lyx \family default ( \family sans \bar under H \bar default elp\SpecialChar \menuseparator \bar under I \bar default ntroduction \family default ), which by the way is the first document you should translate. \layout Itemize Learn the typographic conventions for the language you are translating to. Typography is an ancient art and over the centuries, a great variety of conventions have developed throughout different parts of the world. Also study the professional terminology amongst typographers in your country. Inventing your own terminology will only confuse the users. \emph on (Warning! Typography is addictive!) \layout Itemize Make a copy of the document. This will be your working copy. You can use this as your personal translated help-file by placing it in your \family typewriter ~/.lyx/doc/ \family default -directory. \layout Itemize Sometimes the original document (from the LyX-team) will be updated. Use the ViewCVS tool available at \begin_inset LatexCommand \htmlurl{http://www.lyx.org/viewcvs.cgi/lyxdoc/} \end_inset to see what has been changed \begin_inset Foot collapsed true \layout Standard Alternatively, you can keep a copy of the latest version of the English document which you've translated. \end_inset . That way you can easily see which parts of the translated document need to be updated. \layout Itemize If you ever find an error in the original document, fix it and notify the rest of the documentation team of the changes! (You didn't forget to join the documentation team did you?) \layout Section International Keyboard Support \layout Standard \emph on [Editor's Note: The following section is by \shape smallcaps Ivan Schreter \shape default . It needs to be fixed to conform to the new Documentation Style sheet and to make use of the new v1.0 features. The whole thing also needs to be merged with the section following it.-jw] \layout Subsection Defining Own Keymaps: Keymap File Format \layout Standard Let's look at a keyboard definition file a little closer. It is a plain ASCII file defining \layout Itemize key-to-key or key-to-string translations \layout Itemize dead keys \layout Itemize dead keys exceptions \layout Standard To define key-to-key or key-to-string translation, use this command: \layout Quotation \family typewriter \backslash kmap \family default \family typewriter key \emph on \emph default outstring \layout Standard where \family typewriter key \family default is the key to be translated and \family typewriter outstring \family default is the string to be inserted into the document. To define dead keys, use: \layout Quotation \family typewriter \backslash kmod \family default \family typewriter key \family default \family typewriter deadkey \layout Standard where \family typewriter key \family default is keyboard key and \family typewriter deadkey \family default is dead key name. The following dead keys are supported (shortcut name is in parentheses): \layout Quotation \emph on Name \hfill Example \layout Quotation acute (acu) \hfill áéíóú \layout Quotation grave (gra) \hfill àèìòù \layout Quotation macron (mac) \hfill \i \={o} \layout Quotation tilde (til) \hfill ñÑ \layout Quotation underbar (underb) \hfill \begin_inset ERT status Inlined \layout Standard \backslash b o \end_inset \layout Quotation cedilla (ced) \hfill çÇ \layout Quotation underdot (underd) \hfill \begin_inset ERT status Inlined \layout Standard \backslash d o \end_inset \layout Quotation circumflex (circu) \hfill âêîôû \layout Quotation circle (circl) \hfill Å\i \r{u} \i \r{U} \layout Quotation tie (tie) \hfill \begin_inset ERT status Inlined \layout Standard \backslash t o \end_inset \layout Quotation breve (bre) \hfill \i \u{a} \begin_inset ERT status Inlined \layout Standard \backslash u o \end_inset \layout Quotation caron (car) \hfill \i \v{c} \i \v{s} \i \v{z} \layout Quotation hungarian umlaut (hug) \hfill \i \H{o} \i \H{u} \layout Quotation umlaut (uml) \hfill äöü \layout Quotation dot (dot) \hfill \i \.{z} \begin_inset ERT status Inlined \layout Standard \backslash .s \end_inset \layout Standard Since in many international keyboards there are exceptions to what some dead keys should do, you can define them using \layout Quotation \family typewriter \backslash kxmod \family default \family typewriter deadkey key outstring \layout Standard For example, on Slovak keyboard, if you enter caron-o, it generates circumflex-o , so you put in \layout Quotation \family typewriter \backslash kxmod \family default \family typewriter caron o " \backslash ^o" \layout Standard to make it work correctly. Also, you have to define as exceptions dead keys over i and j, to remove the dot from them before inserting an accent mark. I will change this when the time comes, but so far I haven't had time. \layout Standard Oh, and about characters: backslash is escaped, so to enter it, you'll need double backslash. Also, quotes and \family typewriter # \family default have different meaning. \family typewriter # \family default marks comments, quotes start and end LaTeX-style commands. To enter quote, you'll need to use \family typewriter \backslash " \family default , to enter \family typewriter # \family default , use \family typewriter \backslash # \family default . \layout Standard If you make a keyboard description file that works for your language, please mail it to me, so I can include it in the next keymap distribution. \layout Standard More keywords will be supported in keymap configuration file in future, like \layout Itemize \family typewriter \backslash kinclude filename \family default \emph on \hfill \family typewriter \emph default include \family default another file \layout Itemize \family typewriter \backslash kprog program \family default \emph on \hfill \family typewriter \emph default define \family default an external keymap translation program \layout Standard Also, it should look into \family typewriter lyxrc \family default file for defaults, too (for example, a \family typewriter \backslash kinclude \family default option to include default keyboard). \layout Section International Keymap Stuff \begin_inset LatexCommand \label{sec:keymap} \end_inset \layout Standard The next two sections describe the \family typewriter \shape up .kmap \family default \shape default and \family typewriter \shape up .cdef \family default \shape default file syntax in detail. These sections should help you design your own key map if the ones provided do not meet your needs. \layout Subsection The .kmap File \layout Standard A \family sans \shape up . \family typewriter kmap \family default \shape default file maps keystrokes to characters or strings. As the name suggests it sets a keyboard mapping. The \family typewriter .kmap \family default file keywords \family typewriter \shape up kmap \shape default , \shape up kmod \shape default , \shape up ksmod \family default \shape default , and \family typewriter \shape up kcomb \family default \shape default are described in this section. \layout List \labelwidthstring 00.00.0000 \family typewriter \shape up kmap \family default \shape default Map a character to a string \layout LyX-Code \backslash kmap \family roman \emph on char \emph default \emph on string \layout Standard This will ma \family roman p \emph on char \emph default to \emph on string \emph default . Note that in \emph on string \emph default , \shape up the double-quote (") \shape default and \shape up the backslash ( \backslash ) \shape default must be escaped with a preceding backslash ( \shape up \backslash \shape default ) \family default . \layout Standard An example of a \family sans \shape up kmap \family default \shape default statement to cause the symbol \family sans \shape up / \family default \shape default to be output for the keystroke \family sans \shape up & \family default \shape default is: \layout LyX-Code \backslash kmap & / \layout List \labelwidthstring 00.00.0000 \family typewriter \shape up kmod \family default \shape default Specify an accent character \layout LyX-Code \backslash kmod \family roman \emph on char accent allowed \layout Standard This will make the cha \family roman racter \emph on char \shape up be an accent \emph default on the \emph on allowed \emph default cha \family default racter(s). This is the dead key \begin_inset Foot collapsed true \layout Standard The term \family roman \emph on dead key \family default \emph default refers to a key that does not produce a character by itself, but when followed with another key, produces the desired accent character. For example, a German characte \family roman r with an umlaut like \emph on ä \emph default can be produced in this manner. \end_inset mechanism. \layout Standard If you \family roman hit \emph on char \emph default and then another key not in \emph on allowed \emph default , you will get a \emph on char \emph default followed by the other, unallowed key, as output. \family default Note that a \family sans \shape up Backspace \family default \shape default cancels a dead key, so if \family roman you hit \emph on char \family sans \shape up Backspace \family default \emph default , the cursor will not go one position backwards but will instead cancel the effect t \family roman hat \emph on char \emph default might have had on the next keystroke. \layout Standard The following example specifies that the character ' is to be an acute accent, allowed on the characters a, e, i, o, u, A, E, I, O, and U: \layout LyX-Code \backslash kmod ' acute aeiouAEIOU \layout List \labelwidthstring 00.00.0000 \family typewriter ksmod \family default Specify an exception to the accent character \layout LyX-Code \backslash kxmod \family sans \emph on \family roman accent char result \layout Standard This defines an exce \family roman ption for \emph on accent \emph default on \emph on char \emph default . T \shape up he \emph on accent \emph default must \family default have been assigned a keystroke with a previous \family typewriter \backslash kmo \shape default d \family default declar \family roman ation and \emph on char \emph default must not belong in the \emph on allowed \emph default set of \emph on accent \emph default . When \shape up you enter the \emph on accent char \emph default sequence, \emph on result \emph default is produced. If such a declaration does not exist in \family default the \family sans \family typewriter .kmap \family default \shape default file and yo \family roman u enter \emph on accent char \emph default , you get \emph on accent_key char \emph default where \emph on accent_key \emph default is the first arg \family default ument of the \family typewriter \shape up \backslash kmod \family default \shape default declaration. \layout Standard The following command produces causes äi to be produced when you enter acute-i ('i): \layout LyX-Code \backslash kxmod acute i " \backslash \backslash '{ \backslash \backslash i}" \layout List \labelwidthstring 00.00.0000 \family typewriter kcomb \family default Combine two accent characters \layout LyX-Code \backslash kcomb \family roman \emph on accent1 accent2 allowed \layout Standard This one is getting pretty esoteric. It allows you to combine the effect \family roman of \emph on accent1 \emph default and \emph on accent2 \emph default (in that order!) on \emph on allowed \emph default chars. The keystrokes for \emph on accent1 \emph default and \emph on accent2 \emph default must have be \family default en set with a \family typewriter \shape up \backslash kmod \family default \shape default command at \family roman a \emph on previous \emph default point in the \family default file. \layout Standard Consider this example from the \family typewriter \shape up greek.kmap \family default \shape default file: \layout LyX-Code \backslash kmod ; acute aeioyvhAEIOYVH \backslash kmod : umlaut iyIY \backslash kcomb acute umlaut iyIY \layout Standard This allows you to press \family sans \shape up ;:i \family default \shape default and get the effect of \family typewriter \shape up \backslash '{ \backslash "{i}} \family default \shape default . \family roman \shape up A backspace \family default \shape default in this case cancels the last dead key, so if you press \family sans \shape up ;: Backspace i \family default \shape default you get \family typewriter \shape up \backslash '{i} \family default \shape default . \layout Subsection The .cdef File \layout Standard After the \family typewriter \shape up .kmap \family sans \family default \shape default mapping is performed, a \family typewriter \shape up .cde \shape default f \family default file maps the strings that the symbols generate to characters in the current font. The LyX distribution currently includes at least the \family typewriter \shape up iso8859-1.cdef \family default \shape default and \family typewriter \shape up iso8859-2.cdef \family default \shape default files. \layout Standard In general the \family typewriter \shape up .cdef \family sans \family default \shape default file is a sequence of declarations of the form \layout LyX-Code \family roman \emph on char_index_in_set \emph default \emph on string \layout Standard For example, in order to map \family sans \shape up \backslash '{e} \family default \shape default to the corresponding character in the iso-8859-1 set (233), the following declaration is used \layout LyX-Code 233 " \backslash \backslash '{e}" \layout Standard with \family typewriter \backslash \family default and \family typewriter " \family default being escap \family roman ed in \emph on string \emph default . Note that \family default the same character can apply to more than one string. In the \family typewriter i \shape up so-8859-7.cdef \family sans \family default \shape default file you have \layout LyX-Code 192 " \backslash \backslash '{ \backslash \backslash \backslash "{i}}" \newline 192 " \backslash \backslash \backslash "{ \backslash \backslash '{i}}" \layout Standard If LyX cannot find a mapping for the string produced by the keystroke or a deadkey sequence, it will check if it looks like an accented char and try to draw an accent over the character on screen. \layout Subsection Dead Keys \layout Standard There is a second way to add support for international characters through so-called dead-keys. A dead-key works in combination with a letter to produce an accented character. Here, we'll explain how to create a really simple dead-key to illustrate how they work. \layout Standard Suppose you happen to need the circumflex character, \begin_inset Quotes eld \end_inset \i \^{} \begin_inset Quotes erd \end_inset . You could bind the \family sans ^ \family default -key [a.k.a.\SpecialChar ~ \family sans Shift-6 \family default ] to the LyX command \family typewriter accent-circumflex \family default in your \family typewriter lyxrc \family default file. Now, whenever you type the \family sans ^ \family default -key followed by a letter, that letter will have a circumflex accent on it. For example, the sequence \begin_inset Quotes eld \end_inset \family sans ^e \family default \begin_inset Quotes erd \end_inset produces the letter: \begin_inset Quotes eld \end_inset ê \begin_inset Quotes erd \end_inset . If you tried to type \begin_inset Quotes eld \end_inset \family sans ^t \family default \begin_inset Quotes erd \end_inset , however, LyX will complain with a beep, since a \begin_inset Quotes eld \end_inset \family sans t \family default \begin_inset Quotes erd \end_inset never takes a circumflex accent. Hitting \family sans Space \family default after a dead-key produces the bare-accent. Please note this last point! If you bind a key to a dead-key, you'll need to rebind the character on that key to yet another key. Binding the \family sans ,-key \family default to a cedilla is a bad idea, since you'll only get cedillas instead of commas. \layout Standard One common way to bind dead-keys is to use \family sans Meta- \family default , \family sans Ctrl- \family default , and \family sans Shift- \family default in combination with an accent, like \begin_inset Quotes eld \end_inset \family sans ~ \family default \begin_inset Quotes erd \end_inset or \begin_inset Quotes eld \end_inset \family sans , \family default \begin_inset Quotes erd \end_inset or \begin_inset Quotes eld \end_inset \family sans ^ \family default \begin_inset Quotes erd \end_inset . Another way involves using \family typewriter xmodmap \family default and \family typewriter xkeycaps \family default [remember them from section?] to set up the special \family typewriter Mode_Switch \family default key. The \family typewriter Mode_Switch \family default acts in some ways just like \family sans Shift \family default and permits you to bind keys to accented characters. You can also turn keys into dead-keys by binding them to something like \family typewriter usldead_cedilla \family default and then binding this symbolic key to the corresponding LyX command. \begin_inset Foot collapsed true \layout Standard Note from \noun on John Weiss \noun default : This is exactly what I do in my \family typewriter ~/.lyx/lyxrc \family default and my \family typewriter ~/.xmodmap \family default files. I have my \family sans Scroll\SpecialChar ~ Lock \family default key set up as \family typewriter Mode_Shift \family default and a bunch of these \begin_inset Quotes eld \end_inset \family typewriter usldead_* \family default \begin_inset Quotes erd \end_inset symbolic keys bound such things as \family sans Scroll\SpecialChar ~ Lock-^ \family default and \family sans Scroll\SpecialChar ~ Lock-~ \family default . This is how I produce my accented characters. \end_inset You can make just about anything into the \family typewriter Mode_Switch \family default key: One of the \family sans Ctrl- \family default keys, a spare function key, etc. As for the LyX commands that produce accents, check the entry for \family typewriter accent-acute \family default in the \emph on Reference Manual \emph default . You'll find the complete list there. \layout Subsection Saving your Language Configuration \layout Standard \begin_inset LatexCommand \label{sec:savlang} \end_inset You can edit your preferences so that your desired language environment is automatically configured when LyX starts up, via the \family sans \bar under E \bar default dit\SpecialChar \menuseparator \bar under P \bar default references \family default dialog. \layout Chapter Installing New Document Classes, Layouts, and Templates \begin_inset LatexCommand \label{chap:textclass} \end_inset \begin_inset OptArg collapsed true \layout Standard Installing New Document Classes \end_inset \layout Standard In this chapter, we describe the procedures for creating and installing new LyX layout and template files, as well as offer a refresher on correctly installing new LaTeX document classes. Some definitions: a document class is a LaTeX file (usually ending in \family typewriter .cls \family default or \family typewriter .sty \family default ) which describes the format of a document such as an article, report, journal preprint, etc. and all the commands needed to realize that format. A layout file is a LyX file which corresponds to a LaTeX document class and which tells LyX how to \begin_inset Quotes eld \end_inset draw \begin_inset Quotes erd \end_inset things on the screen to make the display look something like the final printed page. More precisely, a layout file describes a \begin_inset Quotes eld \end_inset text class \begin_inset Quotes erd \end_inset which is the internal construct LyX uses to render the screen display. \begin_inset Quotes eld \end_inset Layout \begin_inset Quotes erd \end_inset and \begin_inset Quotes eld \end_inset text class \begin_inset Quotes erd \end_inset can be used somewhat interchangeably, but it is better to refer to the file as the layout, and the thing living in LyX's memory as the text class. A template file is simply a LyX document which contains a set of predefined entries for a given document class which are generally required for that class. Templates are especially useful for things like journal manuscripts which are to be submitted electronically. \layout Section Installing a new LaTeX package \layout Standard Some installations may not include a LaTeX package that you would like to use within LyX. For example, you might need FoilTeX, a common (and very powerful) package for preparing slides or viewgraphs for overhead projectors. Here are the formal steps involved in getting the package up and running if you are using teTeX or some other web2c based distribution. \layout Enumerate Get the package from CTAN or wherever. \begin_inset Foot collapsed true \layout Standard See the \emph on Inventory of your LaTeX configuration \emph default manual for details of what CTAN is and where supported document classes can be found. \end_inset \layout Enumerate Read the file \family typewriter texmf.cnf \family default (this usually lives in the directory \family typewriter $TEXMF/web2c \family default , though you can run \family typewriter kpsewhich texmf.cnf \family default to locate it). It describes how to add a local \family typewriter texmf \family default directory; follow the instructions. You need to insert the name of your local \family typewriter texmf \family default directory in \family typewriter texmf.cnf \family default . Under Linux, \family typewriter /usr/local \family default is a logical place to install software that did not come with your distribution , so you might use \family typewriter /usr/local/texmf \family default . Usually, you will have to modify only two things: \begin_deeper \layout Enumerate Set \family typewriter TEXMFLOCAL \family default to the directory you chose; e.g. \newline \family typewriter TEXMFLOCAL = /usr/local/texmf \layout Enumerate Make sure \family typewriter TEXMF \family default includes the \family typewriter TEXMFLOCAL \family default variable; e.g. \newline \family typewriter TEXMF = {$HOMETEXMF,!!$TEXMFLOCAL,!!$TEXMFMAIN} \end_deeper \layout Enumerate Create your local \family typewriter texmf \family default directory (e.g. \family typewriter /usr/local/texmf \family default ). You must follow the directory structure of your existing \family typewriter texmf \family default directory (for example, latex packages should go under \family typewriter /usr/local/texmf/tex/latex/ \family default ). \layout Enumerate Install the package. For example, you would unpack the FoilTeX tarball and create \family typewriter /usr/local/texmf/tex/latex/foiltex \family default . The \family typewriter foiltex \family default directory contains various files. \layout Enumerate Run: \family typewriter texhash \family default . This should create \family typewriter /usr/local/texmf/ls-R \family default amongst others. \layout Enumerate From within LyX, do: \family sans \bar under T \bar default ools\SpecialChar \menuseparator \bar under R \bar default econfigure \family default . Restart LyX. \layout Standard Now you should see your new package---for example \family sans slides (FoilTeX) \family default ---under \family sans \bar under L \bar default ayout\SpecialChar \menuseparator \bar under D \bar default ocument \family default , field \family sans \bar under C \bar default lass \family default . Note that there are simpler ways of installing packages: you can add a link to the new package directory in the system LaTeX directory ( \family typewriter $TEXMF/tex/latex \family default , don't forget to then run \family typewriter texconfig \family default ), or sometimes simply set the \family typewriter $TEXINPUTS \family default environment variable to include the new package. However, the formal procedure described in \family typewriter texmf.cnf \family default is guaranteed to work, so you should follow it unless circumstances absolutely prevent it: such as, when you don't have superuser access. \layout Section Layouts \layout Standard This section describes how to write and install your own LyX layout files (also known as text classes) and walks through the \family typewriter article \family default text class format as an example. The \family typewriter .layout \family default files describe what paragraph styles are available for a given document class and how LyX should display them. We try to provide a thorough description of the process here; however, there are so many different types of documents supported by LaTeX classes we can't hope to cover every different possibility or problem you might encounter. \layout Standard When you plan to write a new layout, it is extremely helpful to look at the example layouts distributed with LyX. If you use a nice LaTeX document class that might be of interest for others, too, and have a nice corresponding LyX layout, feel free to contribute the stuff to us, so we may put it into the distribution. \layout Standard All the tags described in this chapter are case-insensitive; this means that \family typewriter Style \family default , \family typewriter style \family default and \family typewriter StYlE \family default are really the same command. The possible values are printed in brackets after the feature's name. The default value if a feature isn't specified inside a text class-description is typeset \family typewriter \emph on emphasized \family default \emph default . If the argument has a datatype like \begin_inset Quotes eld \end_inset string \begin_inset Quotes erd \end_inset or \begin_inset Quotes eld \end_inset float \begin_inset Quotes erd \end_inset , the default is shown like this: \family typewriter float= \emph on default \family default \emph default . \layout Subsection Supporting new document classes \layout Standard There are two situations you are likely to encounter when wanting to support a new LaTeX document class, involving LaTeX2e class ( \family typewriter .cls \family default ) and style ( \family typewriter .sty \family default ) files. \layout Subsection A layout for an \family sans sty \family default file \layout Standard If your new document class is provided as a style file that is used in conjuncti on with an existing, supported document class, start by copying the existing class's layout file into your local directory. For the sake of example we'll assume that the style file is called \family sans myclass.sty \family default and it is meant to be used with \family sans report.cls \family default which is a standard class. \layout LyX-Code cp report.layout ~/.lyx/layouts/myclass.layout \layout Standard Then edit \family typewriter myclass.layout \family default and change the line: \layout LyX-Code \backslash DeclareLaTeXClass{report} \layout Standard to read \layout LyX-Code \backslash DeclareLaTeXClass[report, myclass.sty]{report (myclass)} \layout Standard Then add: \layout LyX-Code Preamble \newline \backslash usepackage{myclass} \newline EndPreamble \layout Standard near the top of the file. \layout Standard Start LyX and select \family sans \bar under T \bar default ools\SpecialChar \menuseparator \bar under R \bar default econfigure \family default . Restart LyX and try creating a new document. You should see " \family sans report (myclass) \family default " as a document class option in the \family sans \bar under D \bar default ocument\SpecialChar \menuseparator \bar under S \bar default ettings \family default dialog. It is likely that some of the sectioning commands and such will differ from how the base class \begin_inset Foot collapsed true \layout Standard \family typewriter report \family default in this example \end_inset works, so you can fiddle around with the settings for the different sections if you wish. See below for more discussion on this. \layout Subsection Layout for a \family sans cls \family default file \layout Standard In this case, you will probably have to \begin_inset Quotes eld \end_inset roll your own \begin_inset Quotes erd \end_inset layout. We strongly suggest copying an existing layout file which uses a similar LaTeX class and modifying it if at all possible. At least use an existing file as a starting point so you can find out what items you need to worry about. Again, the specifics are covered below. \layout Section Declaring a new text class \layout Standard When it's finally time to get your hands dirty and create or edit your own layout file, the following sections describe what you're up against. Our advice is to go slowly, save and test often, listen to soothing music, and enjoy one or two of your favorite adult beverages; more if you are getting particularly stuck. It's really not that hard, except that the multitude of options can become overwhelming if you try to do to much in one sitting. Go have another adult beverage, just for good measure. \layout Standard Here we go! \layout Standard Lines in a layout file which begin with a \family typewriter # \family default are comments. There is one exception to this rule: all layouts should begin with lines like: \layout LyX-Code \size small #% Do not delete the line below; configure depends on this \layout LyX-Code \size small # \backslash DeclareLaTeXClass{article} \layout Standard The second line is used when you configure LyX. The layout file is read by the LaTeX script \family typewriter chkconfig.ltx \family default , in a special mode where \family typewriter # \family default is ignored. The first line is just a LaTeX comment, and the second one contains the declaration of the text class. If these lines appear in a file named \family typewriter article.layout \family default , then they define a text class of name \family typewriter article \family default (the name of the layout file) which uses the LaTeX document class \family typewriter article.cls \family default (the default is to use the same name as the layout). The string \begin_inset Quotes eld \end_inset article \begin_inset Quotes erd \end_inset that appears above is used as a description of the text class in the \family sans \bar under D \bar default ocument\SpecialChar \menuseparator \bar under S \bar default ettings \family default dialog. \layout Standard Let's assume that you wrote your own text class that uses the \family typewriter article.cls \family default documentclass, but where you changed the appearance of the section headings. If you put it in a file \family typewriter myarticle.layout \family default , the header of this file should be: \layout LyX-Code \size small #% Do not delete the line below; configure depends on this \layout LyX-Code \size small # \backslash DeclareLaTeXClass[article]{article (with my own headings)} \layout Standard This declares a text class \family typewriter myarticle \family default , associated with the LaTeX document class \family typewriter article.cls \family default and described as \begin_inset Quotes eld \end_inset article (with my own headings) \begin_inset Quotes erd \end_inset . If your text class depends on several packages, you can declare it as: \layout LyX-Code \size small #% Do not delete the line below; configure depends on this \layout LyX-Code \size small # \backslash DeclareLaTeXClass[article,foo.sty]{article (with my own headings)} \layout Standard This indicates that your text class uses the foo.sty package. Finally, it is also possible to declare classes for SGML and DocBook code. Typical declarations will look like \layout LyX-Code \size small #% Do not delete the line below; configure depends on this \layout LyX-Code \size small # \backslash DeclareSGMLClass{SGML (LinuxDoc)} \layout Standard or \layout LyX-Code #% Do not delete the line below; configure depends on this \layout LyX-Code # \backslash DeclareDocBookClass[article]{SGML (DocBook article)} \layout Standard Note that these declarations can also be given an optional parameter declaring the name of the document class (but not a list). \layout Standard When the text class has been modified to your taste, all you have to do is to copy it either in \family typewriter $LyXDir/layouts/ \family default or in \family typewriter $UserDir/layouts \family default and run \family sans \bar under T \bar default ools\SpecialChar \menuseparator \bar under R \bar default econfigure \family default . Exit LyX and restart it; then your new text class should be available along with the others. \layout Subsection General text class parameters \layout Standard These are the general parameters which describe the form of the entire document: \layout Standard \begin_inset ERT status Inlined \layout Standard \backslash begin{sloppypar} \end_inset \layout Description \family typewriter \series medium Columns \family default \series default [ \family typewriter \emph on 1 \emph default , 2 \family default ] Whether the class-default should have one or two columns. Can be changed in the \family sans \bar under D \bar default ocument\SpecialChar \menuseparator \bar under S \bar default ettings \family default \emph on \emph default dialog. This setting (same goes for \family typewriter Sides \family default , too) is important: if your text class has two columns by default but you forget to set it correctly, the \family typewriter twocolumn \family default LaTeX option will \emph on not \emph default be output when you select \family sans Two columns \family default in \family sans \bar under D \bar default ocument\SpecialChar \menuseparator \bar under S \bar default ettings. \layout Description \family typewriter \series medium Sides \family default \series default [ \family typewriter \emph on 1 \emph default , 2 \family default ] Whether the class-default should be printing on one or both sides of the paper. Can be changed in the \emph on \family sans \emph default \bar under D \bar default ocument\SpecialChar \menuseparator \bar under S \bar default ettings \family default dialog. \layout Description \family typewriter \series medium PageStyle \series default \family default [ \family typewriter \emph on plain \emph default , empty, headings \family default ] The class default pagestyle. Can be changed in the \family sans \bar under D \bar default ocument\SpecialChar \menuseparator \bar under S \bar default ettings \family default \emph on \emph default dialog. \layout Description \family typewriter \series medium MaxCounter \family default \series default [ \family typewriter \emph on Counter_Chapter \emph default , Counter_Section, Counter_Subsection, Counter_Subsubsection, Counter_Paragraph, \newline Counter_Subparagraph, Counter_EnumI, Counter_EnumII, \newline Counter_EnumIII, Counter_EnumIV \family default ] The highest level of automatic enumeration. Useful values are \family typewriter Counter_Chapter \family default for a book or report and \family typewriter Counter_Section \family default for an article. If there is no enumeration needed at all, for example inside a letter class, \family typewriter MaxCounter \family default should be set to \family typewriter Counter_EnumI \family default . \layout Description \family typewriter \series medium ClassOptions\SpecialChar \ldots{} End \family default \series default This section describes various global options supported by the document class. See Section\SpecialChar ~ \begin_inset LatexCommand \ref{sec:classoptions} \end_inset for a description. \layout Description \family typewriter \series medium ProvidesAmsmath \family default \series default [ \family typewriter \emph on 0 \emph default , 1 \family default ] Whether the class already loads the \family typewriter amsmath \family default package. This is the case of the \family typewriter amsart \family default and \family typewriter amsbook \family default document classes. \layout Description \family typewriter \series medium ProvidesMakeidx \family default \series default [ \family typewriter \emph on 0 \emph default , 1 \family default ] Whether the class already provides the functionality of the \family typewriter makeidx \family default package. This is the case of the \family typewriter amsart \family default and \family typewriter amsbook \family default document classes. \layout Description \family typewriter \series medium ProvidesUrl \family default \series default [ \family typewriter \emph on 0 \emph default , 1 \family default ] Whether the class already provides the functionality of the \family typewriter url \family default package. This is the case of the \family typewriter AASTeX \family default document class. \layout Description \family typewriter \series medium DefaultFont \family default \series default This is used to describe the default font of the document. See Section\SpecialChar ~ \begin_inset LatexCommand \ref{sec:fonts} \end_inset for a description. \layout Description \family typewriter \series medium DefaultStyle \family default \series default [ \family typewriter string \family default ] This is the style that will be assigned to new paragraphs, usually \family sans Standard \family default . This will default to the first defined style if not given, but you are highly encouraged to use this directive. \layout Description \family typewriter \series medium TitleLatexType \family default \series default [ \family typewriter \emph on CommandAfter \family default \emph default , \family typewriter Environment \family default ] Indicates what kind of markup is used to define the title of a document. \family typewriter CommandAfter \family default means that the macro with name \family typewriter TitleLaTeXCommand \family default will be inserted after the last layout which has \begin_inset Quotes eld \end_inset \family typewriter InTitle 1 \family default \begin_inset Quotes erd \end_inset . \family typewriter Environment \family default corresponds to the case where the block of paragraphs which have \begin_inset Quotes eld \end_inset \family typewriter InTitle 1 \family default \begin_inset Quotes erd \end_inset should be enclosed into the \family typewriter TitleLaTeXCommand \family default environment \family typewriter . \layout Description \family typewriter \series medium TitleLatexCommand \family default \series default [ \family typewriter string="maketitle" \family default ] The name of the command/environment mentionned above. \layout Description \family typewriter \series medium Preamble\SpecialChar \ldots{} EndPreamble \family default \series default A set of macro definitions that will be output at the beginning of the LaTeX files. Use this for global definitions. \layout Description \family typewriter \series medium Input \family default \series default As its name implies, this command allows you to include another layout definition file within yours to avoid duplicating commands. Common examples are the standard layout files, for example, \family typewriter stdclass.inc \family default , which contains most of the basic layouts. \layout Description \family typewriter \series medium Style\SpecialChar \ldots{} End \family default \series default This sequence defines a new style. See Section\SpecialChar ~ \begin_inset LatexCommand \ref{sec:style} \end_inset for details. \layout Description \family typewriter \series medium NoStyle \family default \series default This command deletes an existing style. This is particularly useful when you want to suppress a style that has be defined in an input file. \layout Description \family typewriter \series medium Float\SpecialChar \ldots{} End \family default \series default This sequance defines a new float. See Section\SpecialChar ~ \begin_inset LatexCommand \ref{sec:floats} \end_inset for details. \layout Description \family typewriter \series medium NoFloat \family default \series default This command deletes an existing float. This is particularly useful when you want to suppress a float that has be defined in an input file. \layout Description \family typewriter \series medium Counter\SpecialChar \ldots{} End \family default \series default This sequence defines a new counter. See Section\SpecialChar ~ \begin_inset LatexCommand \ref{sec:counter} \end_inset for details. \layout Standard \begin_inset ERT status Inlined \layout Standard \backslash end{sloppypar} \end_inset \layout Subsection \family typewriter ClassOptions \family default section \layout Standard \begin_inset LatexCommand \label{sec:classoptions} \end_inset The \family typewriter ClassOptions \family default section can contain the following entries: \layout Description \family typewriter \series medium FontSize \family default \series default [ \family typewriter string="10|11|12" \family default ] The list of available font sizes for the document's main font, separated by \begin_inset Quotes eld \end_inset \family typewriter | \family default \begin_inset Quotes erd \end_inset . \layout Description \family typewriter \series medium PageStyle \family default \series default [ \family typewriter string="empty|plain|headings|fancy" \family default ] The list of available page styles, separated by \begin_inset Quotes eld \end_inset \family typewriter | \family default \begin_inset Quotes erd \end_inset . \layout Description \family typewriter \series medium Other \family default \series default [ \family typewriter string="" \family default ] Some document class options, separated by a comma, that will be added to the optional part of the \family typewriter \backslash documentclass \family default command. \layout Subsection Specific Paragraph Layouts \layout Standard \begin_inset LatexCommand \label{sec:style} \end_inset A paragraph layout description looks like this \begin_inset Foot collapsed true \layout Standard Note that this will either define a new layout or modify an existing one. \end_inset : \layout LyX-Code Style \family roman \emph on name \layout LyX-Code ... \layout LyX-Code End \layout Standard where the following commands are allowed: \layout Standard \begin_inset ERT status Inlined \layout Standard \backslash begin{sloppypar} \end_inset \layout Description \family typewriter \series medium CopyStyle \family default \series default This is used to copy all the features of an existing layout into the current one. \layout Description \family typewriter \series medium LatexType \family default \series default [ \family typewriter \emph on Paragraph \emph default , Command, Environment, Item_Environment, \family default \family typewriter List_Environment \family default ] How the layout should be translated into LaTeX. \family typewriter Paragraph \family default means nothing special. \family typewriter Command \family default means \family typewriter \backslash \emph on LatexName \emph default {\SpecialChar \ldots{} } \family default and \family typewriter Environment \family default means \family typewriter \backslash begin{ \emph on LatexName \emph default }\SpecialChar \ldots{} \backslash end{ \emph on LatexName \emph default } \family default . \family typewriter Item_Environment \family default is the same as \family typewriter Environment \family default , except that a \family typewriter \backslash item \family default is generated for each paragraph of this environment. \family typewriter List_Environment \family default is the same as \family typewriter Item_Environment \family default , except that \family typewriter LabelWidthString \family default is passed as an argument to the environment. \family typewriter LabelWidthString \family default can be defined in the \family sans \bar under L \bar default ayout\SpecialChar \menuseparator \bar under P \bar default aragraph \family default dialog. \family typewriter \emph on LatexName \family default \emph default is perhaps a bit misleading, since these rules apply to SGML classes, too. Visit the SGML class files for specific examples. \layout Description \family typewriter \series medium InTitle \series default [1, 0] \family default If 1, marks the layout as being part of a title block (see also the \family typewriter TitleLatexType \family default and \family typewriter TitleLatexCommand \family default global entries) \layout Description \family typewriter \series medium LatexName \family default \series default The name of the corresponding LaTeX stuff. Either the environment or command name. \layout Description \family typewriter \series medium LatexParam \family default \series default The optional parameter for the corresponding \family typewriter \series medium LatexName \family default \series default stuff. This parameter cannot be changed from within LyX. \layout Description \family typewriter \series medium OptionalArgs \family default \series default [ \family typewriter int=0 \family default ] The number of optional arguments that can be used with this layout. This is useful for things like section headings, and only makes sense with LaTeX. \layout Description \family typewriter \series medium Margin \family default \series default [ \family typewriter \emph on Static \emph default , Manual, Dynamic, First_Dynamic, Right_Address_Box \family default ] \newline The kind of margin that the layout has on the left side. \family typewriter Static \family default just means a fixed margin. \family typewriter Manual \family default means that the left margin depends on the string entered in the \family sans \bar under E \bar default dit\SpecialChar \menuseparator \bar under P \bar default aragraph\SpecialChar ~ Settings \family default dialog. This is used to typeset nice lists without tabulators. \family typewriter Dynamic \family default means that the margin depends on the size of the label. This is used for automatic enumerated headlines. It is obvious that the headline \begin_inset Quotes eld \end_inset 5.4.3.2.1 Very long headline \begin_inset Quotes erd \end_inset must have a wider left margin (as wide as \begin_inset Quotes eld \end_inset 5.4.3.2.1 \begin_inset Quotes erd \end_inset plus the space) than \begin_inset Quotes eld \end_inset 3.2 Very long headline \begin_inset Quotes erd \end_inset , even if other word processors are not able to do this. \family typewriter First_Dynamic \family default is similar, but only the very first row of the paragraph is dynamic, while the others are static; this is used, for example, for descriptions. \family typewriter Right_Address_Box \family default means the margin is chosen in a way that the longest row of this paragraph fits to the right margin. This is used to typeset an address on the right edge of the page. \layout Description \family typewriter \series medium NextNoIndent \family default \series default [ \family typewriter 1, \emph on 0 \family default \emph default ] Whether the following Paragraph is allowed to indent its very first row. \family typewriter 1 \family default means that it is not allowed to do so, \family typewriter 0 \family default means it could do so if it wants to. \layout Description \family typewriter \series medium ParIndent \family default \series default [ \family typewriter string="" \family default ] The indent of the very first line of a paragraph. The argument is passed as a string. For example \family typewriter "MM" \family default means that the paragraph is indented with the width of \family typewriter "MM" \family default in \family typewriter the \family default normal font. You can get a negative width by prefixing the string with \family typewriter "-" \family default . This way was chosen so that the look is the same with each used screen font. The \family typewriter Parindent \family default will be fixed for a certain layout. The exception is Standard layout, since the indentation of a Standard layout paragraph can be prohibited with \family typewriter NextNoIndent \family default . Also, Standard layout paragraphs inside environments use the \family typewriter Parindent \family default of the environment, not their native one. For example, Standard paragraphs inside an enumeration are not indented. \layout Description \family typewriter \series medium Parskip \family default \series default [ \family typewriter float=0 \family default ] LyX allows to choose either \begin_inset Quotes eld \end_inset indent \begin_inset Quotes erd \end_inset or \begin_inset Quotes eld \end_inset skip \begin_inset Quotes erd \end_inset to typeset a document. When \begin_inset Quotes eld \end_inset indent \begin_inset Quotes erd \end_inset is chosen, this value is completely ignored. When \begin_inset Quotes eld \end_inset skip \begin_inset Quotes erd \end_inset is chosen, the parindent of a LaTeXtype \begin_inset Quotes eld \end_inset Paragraph \begin_inset Quotes erd \end_inset layout is ignored and all paragraphs are additionally separated by this parskip argument. The vertical space is calculated with \family typewriter value*DefaultHeight() \family default where \family typewriter DefaultHeight() \family default is the height of a row with the normal font. This way, the look stays the same with different screen fonts. \layout Description \family typewriter \series medium TopSep \family default \series default [ \family typewriter float=0 \family default ] The vertical space with which the very first of a chain of paragraphs with this layout is separated from the previous paragraph. If the previous paragraph has another layout, the separations are not simply added, but the maximum is taken. \layout Description \family typewriter \series medium BottomSep \family default \series default [ \family typewriter float=0 \family default ] The same as \family typewriter TopSep \family default for the very last paragraph. \layout Description \family typewriter \series medium Parsep \family default \series default [ \family typewriter float=0 \family default ] The vertical space between two paragraphs of this layout. \layout Description \family typewriter \series medium Itemsep \family default \series default [ \family typewriter float=0 \family default ] This is an extra space between the paragraphs of an environment layout. If you put other layouts into an environment, each is separated with the environment's \family typewriter Parsep \family default . But the whole items of the environment are additionally separated with this \family typewriter Itemsep \family default . \layout Description \family typewriter \series medium LeftMargin \family default \series default [ \family typewriter string="" \family default ] If you put layouts into environments, the leftmargins are not simply added, but added with a factor \begin_inset Formula $\frac{4}{depth+4}$ \end_inset . Note that this parameter is also used when the border is defined as \family typewriter Manual \family default or \family typewriter Dynamic \family default . Then it is added to the manual or dynamic border. This string has the same meaning as for \family typewriter ParIndent \family default . \layout Description \family typewriter \series medium RightMargin \family default \series default [ \family typewriter string="" \family default ] Similar to \family typewriter LeftMargin \family default . \layout Description \family typewriter \series medium Labeltype \family default \series default [ \family typewriter \emph on No_Label \emph default , Manual, Static, Top_Environment, \newline Centered_Top_Environment, Sensitive, Counter_Chapter, \newline Counter_Section, Counter_Subsection, Counter_Subsubsection, \newline Counter_Paragraph, Counter_Subparagraph, Counter_EnumI, \family default \family typewriter \newline Counter_EnumII, Counter_EnumIII, Counter_EnumIV \family default ] \newline \family typewriter Manual \family default means the label is the very first word (up to the first real blank). \family typewriter Static \family default means it is defined in the layout (see \family typewriter LabelString \family default ). \family typewriter Top_Environment \family default and \family typewriter Centered_Top_Environment \family default are special cases of \family typewriter Static \family default . The label will be printed above the paragraph, but only at the top of an environment or the top of a chain of paragraphs with this layout. Usage is for example the \family sans Abstract \family default layout or the \family sans Bibliography \family default layout. This is also the case for \family typewriter Manual \family default labels with latex type \family typewriter Environment \family default , in order to make layouts for theorems work correctly. \family typewriter Sensitive \family default is a special case for the caption-labels \begin_inset Quotes eld \end_inset Figure \begin_inset Quotes erd \end_inset and \begin_inset Quotes eld \end_inset Table \begin_inset Quotes erd \end_inset . \family typewriter Sensitive \family default means the (hardcoded) label string depends on the kind of float. The \family typewriter Counter_xxx \family default label types should be self explanatory. \layout Description \family typewriter \series medium Labelsep \family default \series default [ \family typewriter string="" \family default ] The horizontal space between the label and the text body. Only used for labels that are not above the text body. \layout Description \family typewriter \series medium LabelBottomsep \family default \series default [float=0] The vertical space between the label and the text body. Only used for labels that are above the text body ( \family typewriter Top_Environment \family default , \family typewriter Centered_Top_Environment \family default ). \layout Description \family typewriter \series medium LabelString \family default \series default [ \family typewriter string="" \family default ] The string used for a label with a \family typewriter Static \family default labeltype. When the border is \family typewriter Manual \family default this string is also used as a suggestion for the \family typewriter LabelWidthString \family default that can be set in the \family sans \bar under E \bar default dit\SpecialChar \menuseparator \bar under P \bar default aragraph\SpecialChar ~ Settings \family default dialog. When the labeltype is \family typewriter Counter_ \emph on xxx \family default \emph default , this string is prepended to the counter. \layout Description \family typewriter \series medium EndLabeltype \family default \series default [ \family typewriter \emph on No_Label \emph default , Box, Filled_Box, Static \family default ] The type of label that stands at the end of the paragraph (or sequence of paragraphs if \family typewriter LatexType \family default is \family typewriter Environment \family default , \family typewriter Item_Environment \family default or \family typewriter List_Environment \family default ). \family typewriter No_Label \family default means \begin_inset Quotes eld \end_inset nothing \begin_inset Quotes erd \end_inset , \family typewriter Box \family default (resp. \family typewriter \SpecialChar ~ Filled_Box \family default ) is a white (resp.\SpecialChar ~ black) square suitable for end of proof markers, \family typewriter Static \family default is an explicit text string. \layout Description \family typewriter \series medium EndLabelString \family default \series default [ \family typewriter string="" \family default ] The string used for a label with a \family typewriter Static \family default \family typewriter EndLabelType \family default . \layout Description \family typewriter \series medium Align \family default \series default [ \family typewriter \emph on block \emph default , left, right, center \family default ] Paragraph alignment. \layout Description \family typewriter \series medium AlignPossible \family default \series default [ \family typewriter \emph on block \emph default , left, right, center \family default ] A comma separated \emph on list \emph default of possible aligns. Some LaTeX styles prohibit certain alignments, since those wouldn't make sense. For example a right-aligned or centered enumeration isn't possible. \layout Description \family typewriter \series medium Fill_Top \family default \series default [ \family typewriter \emph on 0 \emph default ,1 \family default ] With this parameter the \family sans Fill \family default value of the \begin_inset Quotes eld \end_inset Vertical space above \begin_inset Quotes erd \end_inset list of the \family sans \bar under E \bar default dit\SpecialChar \menuseparator \bar under P \bar default aragraph\SpecialChar ~ Settings \family default dialog can be set when initializing a paragraph with this layout \begin_inset Foot collapsed true \layout Standard \emph on Note from Jean-Marc: \emph default I'm not sure that this setting has much use, and it should probably be removed in later versions. \end_inset . \layout Description \family typewriter \series medium Fill_Bottom \family default \series default [ \family typewriter \emph on 0 \emph default ,1 \family default ] Similar to \family typewriter Fill_Top \family default . \layout Description \family typewriter \series medium NeedProtect \family default \series default [ \family typewriter \emph on 0 \emph default ,1 \family default ] Whether fragile commands in this layout should be \family typewriter \backslash protect \family default 'ed. \layout Description \family typewriter \series medium Newline \family default \series default [ \family typewriter 0, \emph on 1 \family default \emph default ] Whether newlines are translated into LaTeX newlines ( \family typewriter \backslash \backslash \family default ) or not. The translation can be switched off to allow more comfortable LaTeX editing inside LyX. \layout Description \family typewriter \series medium PassThru \family default \series default [ \family typewriter \emph on 0 \emph default , 1 \family default ] Whether the contents of this paragraph should be output in raw form, meaning without special translations that LaTeX would require. This somehow replaces the older \family typewriter Latex \family default font property. \layout Description \family typewriter \series medium FreeSpacing \family default \series default [ \family typewriter \emph on 0 \emph default , 1 \family default ] Usually LyX doesn't allow you to insert more than one space between words, since a space is considered as the separation between two words, not a character or symbol of its own. This is a very fine thing but sometimes annoying, for example when typing program code or plain LaTeX code. For this reason, \family typewriter FreeSpacing \family default can be enabled. Note that LyX will create protected blanks for the additional blanks when in another mode than LaTeX-mode. \layout Description \family typewriter \series medium KeepEmpty \family default \series default [ \family typewriter \emph on 0 \emph default , 1 \family default ] Usually LyX does not allow you to leave a paragraph empty, since it would lead to empty LaTeX output. There are some cases where this could be desirable however: in a letter template, the required fields can be provided as empty fields, so that people do not forget them; in some special classes, a layout can be used as some kind of break, which does not contain actual text. \layout Description \family typewriter \series medium Spacing \family default \series default [ \family typewriter \emph on single \emph default , onehalf, double, other \family default \emph on value \emph default ] This defines what the default spacing should be in the layout. The arguments \family typewriter single \family default , \family typewriter onehalf \family default and \family typewriter double \family default correspond respectively to a multiplier value of 1, 1.25 and 1.667. If you specify the argument \family typewriter other \family default , then you should also provide a numerical argument which will be the actual multiplier value. Note that, contrary to other parameters, \family typewriter Spacing \family default implies the generation of specific LaTeX code, using the package \family typewriter setspace.sty \family roman . \layout Description \family typewriter \series medium Font \series default [ \family default The font used for both the text body \emph on and \emph default the label. See section\SpecialChar ~ \begin_inset LatexCommand \ref{sec:fonts} \end_inset . Note that defining this font automatically defines the \family typewriter LabelFont \family default to the same value. \layout Description \family typewriter \series medium TextFont \family default \series default The font used for the text body . See section\SpecialChar ~ \begin_inset LatexCommand \ref{sec:fonts} \end_inset . \layout Description \family typewriter \series medium LabelFont \family default \series default The font used for the label. See section\SpecialChar ~ \begin_inset LatexCommand \ref{sec:fonts} \end_inset . \layout Description \family typewriter \series medium Preamble\SpecialChar \ldots{} EndPreamble \family default \series default A set of macro definitions that will be output at the beginning of the LaTeX files when the layout is used. Use this to define the macros needed by this particular layout. \layout Description \family typewriter \series medium DependsOn \family default \series default the name of a style which preamble should be output \emph on before \emph default the one mentionned above. This allows to ensure some ordering of the preamble snippets when macros definitions depend on one another \begin_inset Foot collapsed true \layout Standard Note that, besides that functionality, there is no way to ensure any ordering of preambles. The ordering that you see in a given version of LyX may change without warning in later versions). \end_inset . \layout Standard \begin_inset ERT status Inlined \layout Standard \backslash end{sloppypar} \end_inset \layout Subsection Floats \layout Standard \begin_inset LatexCommand \label{sec:floats} \end_inset Since version 1.3.0 of LyX, it is necessary to define the floats ( \family sans figure \family default , \family sans table \family default , \SpecialChar \ldots{} ) in the text class itself. If you are looking here to learn how to upgrade an existing text class, it will probably turn out that all you have to do is to add \layout LyX-Code Input stdfloats.inc \layout Standard at a reasonable location of the text class. \begin_inset Foot collapsed true \layout Standard Don't forget to also have a look at counters in next section. \end_inset If you want to implement a text class that proposes some other float types (like the AGU class bundled with LyX), the information below will hopefully help you: \layout Description \family typewriter \series medium Type \family default \series default [ \family typewriter string \family default = \begin_inset Quotes erd \end_inset \begin_inset Quotes erd \end_inset ] type - The \begin_inset Quotes eld \end_inset type \begin_inset Quotes erd \end_inset of the new class of floats, like program or algorithm. After the appropriate \family typewriter \backslash newfloat \family default , commands such as \family typewriter \backslash begin{program} \family default or \family typewriter \backslash end{algorithm*} \family default will be available. \layout Description \family typewriter \series medium GuiName \family default \series default [ \family typewriter string \family default = \begin_inset Quotes erd \end_inset \begin_inset Quotes erd \end_inset ] The string that will be used in the menus and also for the caption. \layout Description \family typewriter \series medium LaTeXBuiltin \family default \series default [ \family typewriter \emph on 0 \family default \emph default , \family typewriter 1 \family default ] Set to \family typewriter 1 \family default if the float is already defined by the documentclass. If this is set to \family typewriter 0 \family default , the float will be defined using the LaTeX package \family typewriter float \family default . \layout Description \family typewriter \series medium NumberWithin \family default \series default [ \family typewriter string \family default = \begin_inset Quotes erd \end_inset \begin_inset Quotes erd \end_inset ] This (optional) argument determines whether floats of this class will be numbered within some sectional unit of the document. For example, if within is equal to \family typewriter chapter \family default , the floats will be numbered within chapters. \layout Description \family typewriter \series medium Style \family default \series default [ \family typewriter string \family default = \begin_inset Quotes erd \end_inset \begin_inset Quotes erd \end_inset ] The style used when defining the float using \family typewriter \backslash newfloat \family default . \layout Description \family typewriter \series medium Placement \family default \series default [ \family typewriter string \family default = \begin_inset Quotes erd \end_inset \begin_inset Quotes erd \end_inset ] The default placement for the given class of floats. They are like in standard LaTeX: \family typewriter t \family default , \family typewriter b \family default , \family typewriter p \family default and \family typewriter h \family default for top, bottom, page, and here, respectively. \begin_inset Foot collapsed true \layout Standard Note that the order of these letters in the string is irrelevant, like in LaTeX. \end_inset On top of that there is a new type, \family typewriter H \family default , which does not really correspond to a float, since it means: put it \begin_inset Quotes eld \end_inset here \begin_inset Quotes erd \end_inset and nowhere else. Note, however that the \family typewriter H \family default specifier is special and, because of implementation details cannot be used in non-builtin float types. If you do not understand what this means, just use \family typewriter "tbp" \family default . \layout Description \family typewriter \series medium Extension \family default \series default [ \family typewriter string \family default = \begin_inset Quotes erd \end_inset \begin_inset Quotes erd \end_inset ] The file name extension of an auxiliary file for the list of figures (or whatever). LaTeX writes the captions to this file. \layout Description \family typewriter \series medium ListName \family default \series default [ \family typewriter string \family default = \begin_inset Quotes erd \end_inset \begin_inset Quotes erd \end_inset ] The heading used for the list of floats. \layout Subsection Counters \layout Standard \begin_inset LatexCommand \label{sec:counter} \end_inset Since version 1.3.0 of LyX, it is necessary to define the counters ( \family sans chapter \family default , \family sans figure \family default , \SpecialChar \ldots{} ) in the text class itself. If you are looking here to learn how to upgrade an existing text class, it will probably turn out that all you have to do is to add \layout LyX-Code Input stdcounters.inc \layout Standard The definition of counters if presently a bit primitive in LyX, since many things are still hardcoded. The following two parameters can be used: \layout Description \family typewriter \series medium Name \family default \series default [ \family typewriter string \family default = \begin_inset Quotes erd \end_inset \begin_inset Quotes erd \end_inset ] The name of the counter \layout Description \family typewriter \series medium Within \family default \series default [ \family typewriter string \family default = \begin_inset Quotes erd \end_inset \begin_inset Quotes erd \end_inset ] If this is set to the name of another counter, the present counter will be reset everytime the other one is increased (is that unclear enough?). \layout Subsection Font description \layout Standard \begin_inset LatexCommand \label{sec:fonts} \end_inset A font description looks like that: \layout LyX-Code Font \family roman \emph on or \family default \emph default LabelFont \layout LyX-Code ... \layout LyX-Code EndFont \layout Standard and the following commands are available: \layout Description \family typewriter \series medium Family \family default \series default [ \family typewriter \emph on Roman \emph default , Sans, Typewriter \family default ] \layout Description \family typewriter \series medium Series \family default \series default [ \family typewriter \emph on Medium \emph default , Bold \family default ] \layout Description \family typewriter \series medium Shape \family default \series default [ \family typewriter \emph on Up \emph default , Italic, SmallCaps, Slanted \family default ] \layout Description \family typewriter \series medium Size \family default \series default [ \family typewriter tiny, small, \emph on normal \emph default , large, larger, largest, huge, giant \family default ] \layout Description \family typewriter \series medium Color \series default \family default [ \family typewriter \emph on none \emph default , black, white, red, green, blue, cyan, magenta, yellow \family default ] \layout Section Creating Templates \begin_inset LatexCommand \label{sec:templates} \end_inset \layout Standard Templates are created just like usual documents. The only difference is that usual documents contain all possible settings, including the fontscheme and the papersize. Usually a user doesn't want a template to overwrite his defaults in these cases. For that reason, the designer of a template should remove the corresponding commands like \family typewriter \backslash fontscheme \family default or \family typewriter \backslash papersize \family default from the template LyX file. This can be done with any simple text-editor, for example \family typewriter vi \family default or \family typewriter xedit \family default . \layout Standard Put the edited template files you create in \family typewriter $UserDir/templates/ \family default , copy the ones you use from the global template directory in \family typewriter $LyXDir/templates/ \family default to the same place, and redefine the template path in the \family sans \bar under E \bar default dit\SpecialChar \menuseparator \bar under P \bar default references \family default dialog (tabs \family sans Input \family default , \family sans Path \family default ). \layout Standard Note that there is a template which has a particular meaning: \family typewriter defaults.lyx \family default . This template is loaded everytime you create a new document with \family sans \bar under F \bar default ile \family default \SpecialChar \menuseparator \family sans \bar under N \bar default ew \family default in order to provide useful defaults. To create this template from inside LyX, all you have to do is to open a document with the correct settings, and use the \family sans Sa \bar under v \bar default e as Document Defaults \family default button. \layout Chapter Including External Material \layout Section Background \layout Standard One often requested feature from LyX users is to be able to interface LyX with XFig, Dia, or other similar applications that specialize in producing a certain kind of diagram, figure, schematic or whatever material might be relevant to include in your document. Previously, it was only possible to include boring, static, fixed images in LyX documents with the graphics feature, but there are several limitations attached to this approach: \layout Itemize If you want to change the figure, you have to invoke an external program by hand \layout Itemize LyX does not notice that the referenced files change, so the on-screen display can fast become obsolete, and this is aggravated by the lack of a means of updating the display \layout Itemize The graphics stuff does not provide any mechanisms for coping with different exported formats such as DocBook, HTML or raw Ascii \layout Standard The external material facility attempts to solve all of these problems \begin_inset Foot collapsed true \layout Standard Even if the graphics facility can't solve all problems, it is still valuable because it does provide in-line preview of the graphics, and supports advanced geometric transformations with a comfortable user interface. \end_inset . It does this by offering a general method to interface LyX to external applications. Instead of introducing a long list of different constructs tailored for each specific application, we chose to sacrifice the in-line displaying of the included material in order to provide a general construct to cover a wide range of applications. The result is the external material construct. External material presents itself in the document simply as a button, but don't let this fool you. When you click on it, a dialog will appear that allows you to chose exactly what material to include, and in the following sections you will learn that this is indeed a powerful mechanism that can solve all of the above problems, and more. \layout Section How does it work? \layout Standard The external material feature is based on the concept of a \emph on template \emph default . A template is a specification of how LyX should interface with a certain kind of material. As bundled, LyX comes with predefined templates for XFig figures, Dia diagrams, various raster format images, gnuplot, and more. You can check the actual list by using the \family sans Insert\SpecialChar \menuseparator External \family default \SpecialChar ~ \family sans Material \family default command. Furthermore, it is possible to roll your own template to support a specific kind of material. Later we'll describe in more detail what is involved, and hopefully you will submit all the templates you create so we can include them in a later LyX version. \layout Standard Another basic idea of the external material feature is to distinguish between the original file that serves as a base for final material and the produced file that is included in your exported or printed document. For example, consider the case of a figure produced with XFig. The XFig application itself works on an original file with the \family typewriter .fig \family default extension. Within XFig, you create and change your figure, and when you are done, you save the \family typewriter fig \family default -file. When you want to include the figure in your document, you invoke \family typewriter transfig \family default in order to create a PostScript file that can readily be included in your LaTeX file. In this case, the \family typewriter .fig \family default file is the original file, and the PostScript file is the produced file. \layout Standard This distinction is important in order to allow updating of the material while you are in the process of writing the document. Furthermore, it provides us with the flexibility that is needed to support multiple export formats. For instance, in the case of an Ascii resulting file, it is not exactly an award-winning idea to include the figure as raw PostScript. Instead, you'd either prefer to just include a reference to the figure, or try to invoke some graphics to Ascii converter to make the final result look similar to the real graphics. The external material management allows you to do this, because it is parameter ized on the different export formats that LyX supports. \layout Standard Besides supporting the production of different products according to the exported format, it supports tight integration with editing and viewing applications. In the case of an XFig figure, you are able to invoke \family typewriter xfig \family default on the original file with a single click from within the external material dialog in LyX, and also preview the produced PostScript file with \family typewriter ghostview \family default with another click. No more fiddling around with the command line and/or file browsers to locate and manipulate the original or produced files. In this way, you are finally able to take full advantage of the many different applications that are relevant to use when you write your documents, and ultimately be more productive. \layout Standard So, all in all, LyX has information about a number of different programs to use behind the scenes in order to realize all of this machinery. This information, in fact, is exactly what is contained in the templates. To each template, there is associated a list of command lines that are used to invoke applications, convert the original file to the produced file, and more. This mechanism allows the advanced user to extend the capabilities of LyX without fiddling with the source code. It requires some footwork to define all the different commands and flags, but luckily, the LyX team did all the hard work and specified these for you. \layout Standard But before the trees grow into the skies, we have to admit that we did take one tiny short-cut. Since you can produce many different kinds of files to go with each exported format, one could also expect that it would be possible to preview each product. The LyX team decided against this in order to keep the user interface simple. Instead of providing a button for each exported file format, we decided to introduce the concept of the primary file format and just have one button. When you press \family sans View \family default \SpecialChar ~ \family sans result \family default in the external material dialog, you will get a view of the produced file in the primary file format. And the primary file format is specified by your document class. For most document classes, the primary file format is LaTeX, but for the DocBook document classes, the primary file format is DocBook. So, when you view the produced file, keep in mind that it will only be a preview of what the main result will be. If you want to see how other exported formats turn out, you have to export them and preview them by hand. \layout Section The external material dialog \layout Standard You insert external material from the \family sans \bar under I \bar default nsert \family default menu. When you do this, a button is inserted into your document, and the external material dialog is shown. This dialog allows you to describe exactly what material should be included, and also how it should be included. Furthermore, it provides access to the external applications to either view, edit or produce the material that is used in the resulting file. \layout Standard At the top of this dialog, there is a drop-down list where you can chose which template should be used. Just below the template drop-down, there's a text area with a short blurb about the chosen template that should help you use it. Most often, it will provide a short description of the template, and a few hints on how to parameterize the use of it. Further down, you'll find a filename input field along with a \begin_inset Quotes eld \end_inset Browse \begin_inset Quotes erd \end_inset button that allows you to chose which file should be included with the standard file browser. Thus this field specifies the original file. Since the produced file is automatically generated when needed, there is no need to give access to it in the user interface. \layout Standard At the bottom of the dialog, you'll find a general input box called \family sans Parameters \family default . This box is generally used to parameterize the specific template. The specific use should be covered in the help blurb associated with the template, but it typically allows you to define variations on how the produced file should be generated. \layout Standard At the right side of the dialog, you'll find three buttons: \family sans Edit \family default \SpecialChar ~ \family sans file \family default , \family sans View \family default \SpecialChar ~ \family sans result \family default , and \family sans Update \family default \SpecialChar ~ \family sans result \family default . These in turn allow you to edit your original file with the appropriate editing application, view the produced file as included in the primary format document, and finally force an update of the resulting material in the primary format. Normally, the \family sans Update \family default \SpecialChar ~ \family sans result \family default button will be disabled, because most templates are configured to automatically update the produced file when needed. In those cases, there is no need to force the production of a new produced file. However, some templates are configured to not be automatically producing the residual product, because the cost of producing the produced file might be so large that it would be a pain to do it all the time. Those types are known as \emph on manual \emph default external material. In those cases, you can use the button to force the production of the produced file exactly when you need it, and thus control the amount of work that is done. In fact, it is \emph on your \emph default responsibility to do this to keep the produced files current at all times: before printing, before exporting, before viewing, etc. At some time in the future, it might be possible that LyX will help you with this task.Any changes in the template, filename or parameters are actually applied whenever you press \family sans Edit file \family default , \family sans View \family default \SpecialChar ~ \family sans result \family default or \family sans Update \family default \SpecialChar ~ \family sans result \family default buttons. \layout Section Examples \layout Standard In this section, we should include some examples of use of the external material. Those examples could include: \layout Itemize External raster images \layout Itemize External XFig figures \layout Itemize Chess diagrams \layout Itemize Sound samples \layout Itemize The use of makefiles \layout Itemize Recursive external LyX templates \layout Section The external template configuration file \layout Standard It is relatively easy to add custom external template definitions to LyX. However, be aware this doing this in an careless manner most probably \emph on will \emph default introduce an easily exploitable security hole. So before you do this, please read the discussion about security which will follow later. \layout Standard Having said that, we encourage you to submit any interesting templates that you create. \layout Standard The external templates are defined in the \family typewriter lib/external_templates \family default file. You can place your own version in \family typewriter .lyx/external_templates \family default . At some point in time, hopefully somebody will document the template contents, and the syntax used to define your templates. \layout Section The substitution mechanism \layout Standard When the external material facility invokes an external program, it is done on the basis of a command defined in the template configuration file. These commands can contain various macros that are expanded before execution. Execution always take place in the directory of the containing document. \layout Standard Also, whenever external material is to be displayed, the name will be produced by the substitution mechanism. \layout Standard The available macros are the following: \layout Description $$FName The filename of the file specified in the external material dialog. \layout Description $$Basename The filename without the extension. \layout Description $$Tempname A name and full path to a temporary file which will be automatically deleted whenever the containing document is closed, or the external material insertion deleted. \layout Description $$Contents( \begin_inset Quotes eld \end_inset filename.ext \begin_inset Quotes erd \end_inset ) This macro will expand to the contents of the file with the name \family typewriter filename.ext \family default . \layout Description $$Sysdir This macro will expand to the absolute path of the system directory. This is typically used to point to the various helper scripts that are bundled with LyX. \layout Standard In addition to these, the facility will expand general environment variables with a syntax like \family typewriter ${PATH} \family default . \layout Section Security discussion \layout Standard The external material feature interfaces with a lot of external programs and does so automatically, so we have to consider the security implications of this. In particular, since you have the option of including your own filenames and/or parameter strings and those are expanded into a command, it seems that it would be possible to create a malicious document which executes arbitrary commands when a user views or prints the document. This is something we definately want to avoid. \layout Standard However, since the external program commands are specified in the template configuration file only, there are no security issues if LyX is properly configured with safe templates only. This is so because the external programs are invoked with the \family typewriter execvp \family default -system call rather than the \family typewriter system \family default system-call, so it's not possible to execute arbitrary commands from the filename or parameter section via the shell. \layout Standard This also implies that you are restricted in what command strings you can use in the external material templates. In particular, pipes and redirection are not readily available. This has to be so if LyX should remain safe. If you want to use some of the shell features, you should write a safe script to do this in a controlled manner, and then invoke the script from the command string. In the \family typewriter lib/scripts \family default directory of the LyX installation, you can find a safe wrapper script \family typewriter general_command_wrapper.py \family default that supports redirection of input and output. That can serve as an example for how to write safe template scripts. For a more advanced example that uses \family typewriter fork \family default and friends, take a look at the \family typewriter pic2ascii.py \family default converter script. \layout Standard It is possible to design a template that interacts directly with the shell, but since this would allow a malicious user to execute arbitrary commands by writing clever filenames and/or parameters, we generally recommend that you only use safe scripts that work with the \family typewriter execvp \family default system call in a controlled manner. Of course, for use in a controlled environment, it can be tempting to just fall back to use ordinary shell scripts. If you do so, be aware that you \emph on will \emph default provide an easily exploitable security hole in your system. Of course it stands to reason that such unsafe templates will never be included in the standard LyX distribution, although we do encourage people to submit new templates in the open source tradition. But LyX as shipped from the official distribution channels will never have unsafe templates. \layout Standard Including external material provides a lot of power, and you have to be careful not to introduce security hazards with this power. A subtle error in a single line in an innocent looking script can open the door to huge security problems. So if you do not fully understand the issues, we recommend that you consult a knowledgable security professional or the LyX development team if you have any questions about whether a given template is safe or not. And do this before you use it in an uncontrolled environment. \layout Chapter The LyX Server \layout Section Introduction \layout Standard The LyX server is a method implemented in LyX that will enable other programs to talk to LyX, invoke LyX commands, and retrieve information about the LyX internal state. This is only intended for advanced users, but they should find it useful. \layout Section Starting the LyX Server \layout Standard The LyX server works through the use of a pair of named pipes. These are usually located in your home directory and have the names \begin_inset Quotes eld \end_inset \family typewriter .lyxpipe.in \family default \begin_inset Quotes erd \end_inset and \begin_inset Quotes eld \end_inset \family typewriter .lyxpipe.out \family default \begin_inset Quotes erd \end_inset . External programs write into \family typewriter .lyxpipe.in \family default and read back data from \family typewriter .lyxpipe.out \family default . The stem of the pipe names can be defined in the \family sans \bar under T \bar default ools\SpecialChar \menuseparator \bar under P \bar default references \family default dialog, for example \family typewriter "/home/myhome/.lyxpipe" \family default . \layout Standard LyX will add the ' \family typewriter .in \family default ' and ' \family typewriter .out \family default ' to create the pipes. The above setting also has the effect of activating the LyX server. If one of the pipes already exists, LyX will assume that another LyX process is already running and will not start the server. To have several LyX processes with servers at the same time, you have to change the configuration between the start of the programs. \layout Standard If you are developing a client program, you might find it useful to enable debugging information from the LyX server. Do this by starting LyX as \family typewriter lyx -dbg lyxserver. \layout Standard Warning: if LyX crashes, it may not manage to remove the pipes; in this case you must remove them manually. If LyX starts and the pipes exist already, it will not start any server. \layout Standard Other than this, there are a few points to consider: \layout Itemize Both server and clients must run on UNIX or OS/2 machines. Communications between LyX on UNIX and clients on OS/2 or vice versa is not possible right now. \layout Itemize On OS/2, only one client can connect to LyXServer at a time. \layout Itemize On OS/2, clients must open inpipe with \family typewriter O_WRONLY \family default mode. \layout Standard You can find a complete example client written in C in the source distribution as \family typewriter development/server_monitor.c \family default . \layout Section Normal communication \layout Standard To issue a LyX call, the client writes a line of ASCII text into the input pipe. This line has the following format: \layout Quote LYXCMD: \emph on clientname \emph default : \emph on function \emph default : \emph on argument \layout Standard Here \emph on clientname \emph default is a name that the client can choose arbitrarily. Its only use is that LyX will echo it if it sends an answer - so a client can dispatch results from different requesters. \layout Standard \emph on function \emph default is the function you want LyX to perform. It is the same as the commands you'd use in the minibuffer. \layout Standard \emph on argument \emph default is an optional argument which is meaningful only to some functions (for instance \begin_inset Quotes eld \end_inset self-insert \begin_inset Quotes erd \end_inset which will insert the argument as text at the cursor position.) \layout Standard The answer from LyX will arrive in the output pipe and be of the form \layout Quote INFO: \emph on clientname \emph default : \emph on function \emph default : \emph on data \layout Standard where \emph on clientname \emph default and \emph on function \emph default are just echoed from the command request, while \emph on data \emph default is more or less useful information filled according to how the command execution worked out. Some commands will return information about the internal state of LyX, such as \begin_inset Quotes eld \end_inset font-state \begin_inset Quotes erd \end_inset , while other will return an empty data-response. This means that the command execution went fine. \layout Standard In case of errors, the response from LyX will have this form \layout Quote ERROR: \emph on clientname \emph default : \emph on function \emph default : \emph on error message \layout Standard where the \emph on error message \emph default should contain an explanation of why the command failed. \layout Standard Examples: \layout LyX-Code echo "LYXCMD:test:beginning-of-buffer:" >~/.lyxpipe.in \layout LyX-Code echo "LYXCMD:test:get-xy:" >~/.lyxpipe.in \newline read a <~/.lyxpipe.out \newline echo $a \layout Section Notification \layout Standard LyX can notify clients of events going on asynchronously. Currently it will only do this if the user binds a key sequence with the function \begin_inset Quotes eld \end_inset notify \begin_inset Quotes erd \end_inset . The format of the string LyX sends is as follows: \layout Quote \family typewriter NOTIFY: \family default \emph on key-sequence \layout Standard where \emph on key-sequence \emph default is the printed representation of the key sequence that was actually typed by the user. \layout Standard This mechanism can be used to extend LyX's command set and implement macros: bind some key sequence to \begin_inset Quotes eld \end_inset notify \begin_inset Quotes erd \end_inset , start a client that listens on the out pipe, dispatches the command according to the sequence and starts a function that may use LyX calls and LyX requests to issue a command or a series of commands to LyX. \layout Section The simple LyX Server Protocol \layout Standard LyX implements a simple protocol that can be used for session management. All messages are of the form \layout Quote LYXSRV: \emph on clientname \emph default : \emph on protocol message \layout Standard where \emph on protocol message \emph default can be \begin_inset Quotes eld \end_inset hello \begin_inset Quotes erd \end_inset or \begin_inset Quotes eld \end_inset bye \begin_inset Quotes erd \end_inset . If \begin_inset Quotes eld \end_inset hello \begin_inset Quotes erd \end_inset is received from a client, LyX will report back to inform the client that it's listening to it's messages, while \begin_inset Quotes eld \end_inset bye \begin_inset Quotes erd \end_inset sent from LyX will inform clients that LyX is closing. \layout Chapter \start_of_appendix Bindings \layout Standard This appendix is a huge cross-reference to all the English language keybindings. Originally, we simply wanted to list all of the key bindings followed by the function it's bound to. That way, a user can look up a key to find out what it does. We then decided, what the hey, why not include the default toolbar and menu bindings, too. Please note this section is likely to be very out of date. \layout Standard The form is really self-explanatory, but here are a few tips: all entries are arranged roughly alphabetically for a given modifier ( \family sans C-a \family default , \family sans C-b \family default , etc.). For the general keyboard layout, simpler prefixes precede the more complex ( \family sans C-s \family default before \family sans C-S-c \family default ). All entries were gleaned from the default user interface and binding files located in the directories \family typewriter \SpecialChar \ldots{} /share/lyx/ui \family default and \family typewriter \SpecialChar \ldots{} /share/lyx/bind \family default ; they should be treated as the final word on the bindings. \layout Standard As a final note, be aware that some window managers (such as FVWM) take control of some of the function keys or motion keys. \family sans C-right \family default is listed here as generating \family typewriter word-forward \family default , but FVWM grabs it and uses it to change virtual desktops instead. Very annoying unless you instruct your window manager to stop intercepting such sequences. \layout Section Toolbar \layout LyX-Code Toolbar \layout LyX-Code Layouts \layout LyX-Code Icon "buffer-open" \layout LyX-Code Icon "buffer-write" \layout LyX-Code Icon "buffer-print" \layout LyX-Code Separator \layout LyX-Code Icon "cut" \layout LyX-Code Icon "copy" \layout LyX-Code Icon "paste" \layout LyX-Code Separator \layout LyX-Code Icon "font-emph" \layout LyX-Code Icon "font-noun" \layout LyX-Code Icon "font-free" \layout LyX-Code Separator \layout LyX-Code Icon "tex-mode" \layout LyX-Code Icon "math-mode" \layout LyX-Code Separator \layout LyX-Code Icon "footnote-insert" \layout LyX-Code Icon "marginpar-insert" \layout LyX-Code Icon "depth-next" \layout LyX-Code Separator \layout LyX-Code Icon "figure-insert" \layout LyX-Code Icon "dialog-tabular-insert" \layout LyX-Code End \layout Section Menu \layout Subsection File \layout List \labelwidthstring 00.00.0000 \family sans M-f\SpecialChar ~ a \family typewriter buffer-write-as \layout List \labelwidthstring 00.00.0000 \family sans M-f\SpecialChar ~ c \family default \family typewriter buffer-close \layout List \labelwidthstring 00.00.0000 \family sans M-f\SpecialChar ~ d \family default \family typewriter buffer-reload \layout List \labelwidthstring 00.00.0000 \family sans M-f\SpecialChar ~ e \family default \family typewriter file_export \family default submenu \layout List \labelwidthstring 00.00.0000 \family sans M-f\SpecialChar ~ f \family typewriter buffer-export fax \layout List \labelwidthstring 00.00.0000 \family sans M-f\SpecialChar ~ i \family default \family typewriter file_import \family default submenu \layout List \labelwidthstring 00.00.0000 \family sans M-f\SpecialChar ~ n \family typewriter buffer-new \layout List \labelwidthstring 00.00.0000 \family sans M-f\SpecialChar ~ o \family default \family typewriter buffer-open \layout List \labelwidthstring 00.00.0000 \family sans M-f\SpecialChar ~ p \family default \family typewriter buffer-print \layout List \labelwidthstring 00.00.0000 \family sans M-f\SpecialChar ~ s \family default \family typewriter buffer-write \layout List \labelwidthstring 00.00.0000 \family sans M-f\SpecialChar ~ t \family typewriter buffer-new-template \layout List \labelwidthstring 00.00.0000 \family sans M-f\SpecialChar ~ v \family typewriter file_vc \family default submenu \begin_deeper \layout List \labelwidthstring 00.00.0000 \family sans h \family typewriter vc-history \layout List \labelwidthstring 00.00.0000 \family sans i \family typewriter vc-check-in \layout List \labelwidthstring 00.00.0000 \family sans l \family typewriter vc-revert \layout List \labelwidthstring 00.00.0000 \family sans o \family typewriter vc-check-out \layout List \labelwidthstring 00.00.0000 \family sans r \family typewriter vc-register \layout List \labelwidthstring 00.00.0000 \family sans u \family typewriter vc-undo-last \end_deeper \layout List \labelwidthstring 00.00.0000 \family sans M-f\SpecialChar ~ x \family typewriter lyx-quit \layout Subsection Edit \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ a \family default \family typewriter paste \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ c \family default \family typewriter cut \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ d \family default \family typewriter redo \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ e \family default \family typewriter error-remove-all \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ f \family default \family typewriter find-replace \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ h \family default \family typewriter buffer-chktex \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ i \family default \family typewriter edit_floats \family default submenu \begin_deeper \layout List \labelwidthstring 00.00.0000 \family sans a \family default \family typewriter tabular-feature append-row \layout List \labelwidthstring 00.00.0000 \family sans b \family default \family typewriter tabular-feature toggle-line-bottom \layout List \labelwidthstring 00.00.0000 \family sans c \family default \family typewriter tabular-feature align-center \layout List \labelwidthstring 00.00.0000 \family sans d \family default \family typewriter tabular-feature delete-column \layout List \labelwidthstring 00.00.0000 \family sans e \family default \family typewriter tabular-feature align-left \layout List \labelwidthstring 00.00.0000 \family sans i \family default \family typewriter tabular-feature align-right \layout List \labelwidthstring 00.00.0000 \family sans l \family default \family typewriter tabular-feature toggle-line-left \layout List \labelwidthstring 00.00.0000 \family sans m \family default \family typewriter tabular-feature multicolumn \layout List \labelwidthstring 00.00.0000 \family sans n \family default \family typewriter tabular-feature valign-center \layout List \labelwidthstring 00.00.0000 \family sans o \family default \family typewriter tabular-feature valign-top \layout List \labelwidthstring 00.00.0000 \family sans r \family default \family typewriter tabular-feature toggle-line-right \layout List \labelwidthstring 00.00.0000 \family sans t \family default \family typewriter tabular-feature toggle-line-top \layout List \labelwidthstring 00.00.0000 \family sans u \family default \family typewriter tabular-feature append-column \layout List \labelwidthstring 00.00.0000 \family sans v \family default \family typewriter tabular-feature valign-bottom \layout List \labelwidthstring 00.00.0000 \family sans w \family default \family typewriter tabular-feature delete-row \end_deeper \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ l \family default \family typewriter math-panel \begin_deeper \layout List \labelwidthstring 00.00.0000 \family sans a \family typewriter floats-operate openfoot \layout List \labelwidthstring 00.00.0000 \family sans c \family typewriter floats-operate closefoot \layout List \labelwidthstring 00.00.0000 \family sans f \family typewriter floats-operate openfig \layout List \labelwidthstring 00.00.0000 \family sans m \family typewriter melt \layout List \labelwidthstring 00.00.0000 \family sans o \family typewriter open-stuff \layout List \labelwidthstring 00.00.0000 \family sans t \family typewriter floats-operate closefig \end_deeper \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ o \family default \family typewriter copy \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ p \family default \family typewriter dialog-preferences \family sans \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ r \family default \family typewriter reconfigure \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ s \family default \family typewriter spellchecker \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ t \family default \family typewriter edit_tabular \family default submenu \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ u \family typewriter undo \layout List \labelwidthstring 00.00.0000 \family sans M-e\SpecialChar ~ x \family typewriter edit_paste \family default submenu \begin_deeper \layout List \labelwidthstring 00.00.0000 \family sans l \family default \family typewriter primary-selection-paste \layout List \labelwidthstring 00.00.0000 \family sans p \family default \family typewriter primary-selection-paste paragraph \end_deeper \layout Subsection Insert \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ a \family default \family typewriter insert_floats \family default submenu \begin_deeper \layout List \labelwidthstring 00.00.0000 \family sans a \family default \family typewriter buffer-float-insert algorithm \layout List \labelwidthstring 00.00.0000 \family sans d \family default \family typewriter buffer-float-insert wide-tab \layout List \labelwidthstring 00.00.0000 \family sans f \family default \family typewriter buffer-float-insert figure \layout List \labelwidthstring 00.00.0000 \family sans t \family default \family typewriter buffer-float-insert table \layout List \labelwidthstring 00.00.0000 \family sans w \family default \family typewriter buffer-float-insert wide-fig \end_deeper \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ b \family default \family typewriter dialog-tabular-insert \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ c \family default \family typewriter citation-insert \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ d \family default \family typewriter math-display \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ e \family default \family typewriter buffer-child-insert \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ f \family default \family typewriter footnote-insert \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ g \family default \family typewriter figure-insert \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ h \family default \family typewriter math-mode \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ i \family default \family typewriter index-insert \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ l \family default \family typewriter label-insert \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ m \family default \family typewriter marginpar-insert \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ n \family default \family typewriter note-insert \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ o \family default \family typewriter insert_toc \family default submenu \begin_deeper \layout List \labelwidthstring 00.00.0000 \family sans a \family default \family typewriter loa-insert \layout List \labelwidthstring 00.00.0000 \family sans b \family default \family typewriter bibtex-insert \layout List \labelwidthstring 00.00.0000 \family sans c \family default \family typewriter toc-insert \layout List \labelwidthstring 00.00.0000 \family sans f \family default \family typewriter lof-insert \layout List \labelwidthstring 00.00.0000 \family sans i \family default \family typewriter index-print \layout List \labelwidthstring 00.00.0000 \family sans t \family default \family typewriter lot-insert \end_deeper \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ r \family default \family typewriter reference-insert \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ s \family default \family typewriter insert_special \family default submenu \begin_deeper \layout List \labelwidthstring 00.00.0000 \family sans b \family default \family typewriter protected-space-insert \layout List \labelwidthstring 00.00.0000 \family sans e \family default \family typewriter end-of-sentence-period-insert \layout List \labelwidthstring 00.00.0000 \family sans h \family default \family typewriter hfill-insert \layout List \labelwidthstring 00.00.0000 \family sans i \family default \family typewriter dots-insert \layout List \labelwidthstring 00.00.0000 \family sans l \family default \family typewriter break-line \layout List \labelwidthstring 00.00.0000 \family sans m \family default \family typewriter menu-separator-insert \layout List \labelwidthstring 00.00.0000 \family sans p \family default \family typewriter hyphenation-point-insert \layout List \labelwidthstring 00.00.0000 \family sans q \family default \family typewriter quote-insert \layout List \labelwidthstring 00.00.0000 \family sans s \family default \family typewriter command-sequence math-insert ^;math-mode; \layout List \labelwidthstring 00.00.0000 \family sans u \family default \family typewriter command-sequence math-insert _;math-mode; \end_deeper \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ t \family default \family typewriter insert_file \family default submenu \begin_deeper \layout List \labelwidthstring 00.00.0000 \family sans l \family default \family typewriter file-insert-ascii lines \layout List \labelwidthstring 00.00.0000 \family sans p \family default \family typewriter file-insert-ascii paragraphs \layout List \labelwidthstring 00.00.0000 \family sans x \family default \family typewriter file-insert \end_deeper \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ u \family default \family typewriter url-insert \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ w \family default \family typewriter index-insert-last \layout List \labelwidthstring 00.00.0000 \family sans M-i\SpecialChar ~ x \family default \family typewriter external-insert \layout Subsection Layout \layout List \labelwidthstring 00.00.0000 \family sans M-l\SpecialChar ~ a \family default \family typewriter appendix \layout List \labelwidthstring 00.00.0000 \family sans M-l\SpecialChar ~ b \family default \family typewriter font-bold \layout List \labelwidthstring 00.00.0000 \family sans M-l\SpecialChar ~ c \family default \family typewriter layout-character \layout List \labelwidthstring 00.00.0000 \family sans M-l\SpecialChar ~ d \family default \family typewriter layout-document \layout List \labelwidthstring 00.00.0000 \family sans M-l\SpecialChar ~ e \family default \family typewriter font-emph \layout List \labelwidthstring 00.00.0000 \family sans M-l\SpecialChar ~ l \family default \family typewriter layout-preamble \layout List \labelwidthstring 00.00.0000 \family sans M-l\SpecialChar ~ n \family default \family typewriter font-noun \layout List \labelwidthstring 00.00.0000 \family sans M-l\SpecialChar ~ p \family default \family typewriter layout-paragraph \layout List \labelwidthstring 00.00.0000 \family sans M-l\SpecialChar ~ s \family default \family typewriter layout-save-default \layout List \labelwidthstring 00.00.0000 \family sans M-l\SpecialChar ~ t \family default \family typewriter layout-tabular \layout List \labelwidthstring 00.00.0000 \family sans M-l\SpecialChar ~ v \family default \family typewriter depth-increment \layout List \labelwidthstring 00.00.0000 \family sans M-l\SpecialChar ~ x \family default \family typewriter tex-mode \layout Subsubsection L \family sans ayout\SpecialChar \menuseparator Character \family default \layout List \labelwidthstring 00.00.0000 \family sans M-c\SpecialChar ~ b \family typewriter font-bold \layout List \labelwidthstring 00.00.0000 \family sans M-c\SpecialChar ~ c \family typewriter font-noun \layout List \labelwidthstring 00.00.0000 \family sans M-c\SpecialChar ~ e \family typewriter font-emph \layout List \labelwidthstring 00.00.0000 \family sans M-c\SpecialChar ~ m \family typewriter math-mode \layout List \labelwidthstring 00.00.0000 \family sans M-c\SpecialChar ~ p \family default \family typewriter font-code \layout List \labelwidthstring 00.00.0000 \family sans M-c\SpecialChar ~ r \family typewriter font-roman \layout List \labelwidthstring 00.00.0000 \family sans M-c\SpecialChar ~ s \family typewriter font-sans \layout List \labelwidthstring 00.00.0000 \family sans M-c\SpecialChar ~ t \family typewriter tex-mode \layout List \labelwidthstring 00.00.0000 \family sans M-c\SpecialChar ~ u \family typewriter font-underline \layout List \labelwidthstring 00.00.0000 \family sans M-c\SpecialChar ~ space \family typewriter font-default \layout List \labelwidthstring 00.00.0000 \family sans M-c\SpecialChar ~ Down \family typewriter word-lowcase \layout List \labelwidthstring 00.00.0000 \family sans M-c\SpecialChar ~ Up \family typewriter word-upcase \layout List \labelwidthstring 00.00.0000 \family sans M-c\SpecialChar ~ Right \family typewriter word-capitalize \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ h \family typewriter font-size huge \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ l \family default \family typewriter font-size large \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ n \family default \family typewriter font-size normal \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ s \family default \family typewriter font-size small \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ t \family default \family typewriter font-size tiny \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ 0 \family typewriter font-size huger \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ 1 \family default \family typewriter font-size tiny \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ 2 \family default \family typewriter font-size smallest \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ 3 \family typewriter font-size smaller \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ 4 \family default \family typewriter font-size small \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ 5 \family default \family typewriter font-size normal \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ 6 \family default \family typewriter font-size large \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ 7 \family default \family typewriter font-size larger \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ 8 \family typewriter font-size largest \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ 9 \family typewriter font-size huge \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ S-H \family default \family typewriter font-size huger \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ S-L \family default \family typewriter font-size larger \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ S-S \family default \family typewriter font-size smaller \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ plus \family typewriter font-size increase \layout List \labelwidthstring 00.00.0000 \family sans M-s\SpecialChar ~ minus \family typewriter font-size decrease \layout Subsection View \layout Subsection Navigate \layout Subsection Help \layout Subsection Paragraph Style \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ a \family default \family typewriter layout Abstract \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ b \family default \family typewriter layout Itemize \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ c \family default \family typewriter layout LyX-Code \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ d \family default \family typewriter layout Description \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ e \family default \family typewriter layout Enumerate \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ f \family default \family typewriter layout ShortFoilhead \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ i \family default \family typewriter layout Itemize \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ l \family default \family typewriter layout List \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ n \family default \family typewriter layout Enumerate \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ q \family default \family typewriter layout Quote \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ r \family default \family typewriter layout ShortRotatefoilhead \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ s \family default \family typewriter layout Standard \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ t \family default \family typewriter layout Title \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ v \family default \family typewriter layout Verse \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ space \family default \family typewriter drop-layouts-choice \layout List \labelwidthstring 00.00.0000 \family sans M-p \noun on \SpecialChar ~ 0 \family default \noun default \family typewriter layout Part \layout List \labelwidthstring 00.00.0000 \family sans M-p \noun on \SpecialChar ~ 1 \family default \noun default \family typewriter layout Chapter \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ 2 \family default \family typewriter layout Section \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ 3 \family default \family typewriter layout Subsection \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ 4 \family default \family typewriter layout Subsubsection \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ 5 \family default \family typewriter layout Paragraph \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ 6 \family default \family typewriter layout Subparagraph \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ asterisk\SpecialChar ~ 0 \family default \family typewriter layout Part* \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ asterisk\SpecialChar ~ 1 \family default \family typewriter layout Chapter* \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ asterisk\SpecialChar ~ 2 \family default \family typewriter layout Section* \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ asterisk\SpecialChar ~ 3 \family default \family typewriter layout Subsection* \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ asterisk\SpecialChar ~ 4 \family default \family typewriter layout Subsubsection* \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ asterisk\SpecialChar ~ 5 \family default \family typewriter layout Paragraph* \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ asterisk\SpecialChar ~ 6 \family default \family typewriter layout Subparagraph* \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ S-A \family default \family typewriter layout Author \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ S-B \family default \family typewriter layout Bibliography \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ S-C \family default \family typewriter layout Comment \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ S-D \family default \family typewriter layout Date \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ S-F \family default \family typewriter layout Foilhead \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ S-L \family default \family typewriter layout LaTeX \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ S-Q \family default \family typewriter layout Quotation \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ S-R \family default \family typewriter layout Rotatefoilhead \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ C-a \family default \family typewriter layout RightAddress \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ M-a \family default \family typewriter layout Address \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ M-c \family default \family typewriter layout Caption \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ Left \family default \family typewriter depth-decrement \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ Right \family default \family typewriter depth-increment \layout Standard These ones are kept for backwards compatibility, but only make sense on a qwerty keyboard: \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ S-at \family default \family typewriter layout Section* \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ S-dollar \family default \family typewriter layout Subsubsection* \layout List \labelwidthstring 00.00.0000 \family sans M-p\SpecialChar ~ S-numbersign \family default \family typewriter layout Subsection* \layout Section Keyboard \layout Subsection Specific to \family typewriter emacs.bind \layout List \labelwidthstring 00.00.0000 \family sans C-a \family default \family typewriter line-begin \layout List \labelwidthstring 00.00.0000 \family sans C-b \family default \family typewriter char-backward \layout List \labelwidthstring 00.00.0000 \family sans C-d \family default \family typewriter delete-forward \layout List \labelwidthstring 00.00.0000 \family sans C-e \family default \family typewriter line-end \layout List \labelwidthstring 00.00.0000 \family sans C-f \family default \family typewriter char-forward \layout List \labelwidthstring 00.00.0000 \family sans C-g \family default \family typewriter cancel \layout List \labelwidthstring 00.00.0000 \family sans C-h \family default \family typewriter hyphenation-point-insert \layout List \labelwidthstring 00.00.0000 \family sans C-i \family default \family typewriter hfill-insert \layout List \labelwidthstring 00.00.0000 \family sans C-k \family default \family typewriter line-delete-forward \layout List \labelwidthstring 00.00.0000 \family sans C-l \family default \family typewriter screen-recenter \layout List \labelwidthstring 00.00.0000 \family sans C-m \family default \family typewriter mark-toggle \layout List \labelwidthstring 00.00.0000 \family sans C-n \family default \family typewriter down \layout List \labelwidthstring 00.00.0000 \family sans C-o \family default \family typewriter open-stuff \layout List \labelwidthstring 00.00.0000 \family sans C-p \family default \family typewriter up \layout List \labelwidthstring 00.00.0000 \family sans C-q \family typewriter quote-insert \layout List \labelwidthstring 00.00.0000 \family sans C-s \family default \family typewriter find-replace \layout List \labelwidthstring 00.00.0000 \family sans C-u \family default \family typewriter font-underline \layout List \labelwidthstring 00.00.0000 \family sans C-v \family default \family typewriter screen-down \layout List \labelwidthstring 00.00.0000 \family sans C-w \family default \family typewriter cut \layout List \labelwidthstring 00.00.0000 \family sans C-y \family default \family typewriter paste \layout List \labelwidthstring 00.00.0000 \family sans C-S-Y \family default \family typewriter layout-paste \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ a \family default \family typewriter buffer-auto-save \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ b \family default \family typewriter buffer-previous \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ c \family default \family typewriter lyx-quit \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ d \family default \family typewriter buffer-new \layout List \labelwidthstring 00.00.0000 \family sans ?\SpecialChar ~ C-x\SpecialChar ~ f \family default \family typewriter buffer-open \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ g \family default \family typewriter buffer-view-ps \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ k \family default \family typewriter buffer-close \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ p \family default \family typewriter buffer-view \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ r \family default \family typewriter buffer-typeset \layout List \labelwidthstring 00.00.0000 \family sans ?\SpecialChar ~ C-x\SpecialChar ~ s \family default \family typewriter buffer-write \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ t \family default \family typewriter buffer-typeset \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ u \family default \family typewriter undo \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ v\SpecialChar ~ c \family default \family typewriter vc-undo-last \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ v\SpecialChar ~ h \family default \family typewriter vc-history \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ v\SpecialChar ~ i \family default \family typewriter vc-register \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ v\SpecialChar ~ u \family default \family typewriter vc-revert \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ v\SpecialChar ~ v \family default \family typewriter vc-check-in \layout List \labelwidthstring 00.00.0000 \family sans ?\SpecialChar ~ C-x\SpecialChar ~ w \family default \family typewriter buffer-write-as \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ bracketleft \family default \family typewriter screen-up \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ bracketright \family default \family typewriter screen-down \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ C-a \family default \family typewriter buffer-auto-save \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ C-b \family default \family typewriter menu-open Documents \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ C-c \family default \family typewriter lyx-quit \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ C-d \family default \family typewriter buffer-new \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ C-f \family default \family typewriter buffer-open \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ C-g \family default \family typewriter buffer-view-ps \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ C-p \family default \family typewriter buffer-view \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ C-q \family default \family typewriter buffer-toggle-read-only \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ C-s \family default \family typewriter buffer-write \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ C-t \family default \family typewriter buffer-typeset \layout List \labelwidthstring 00.00.0000 \family sans C-x\SpecialChar ~ C-w \family default \family typewriter buffer-write-as \layout List \labelwidthstring 00.00.0000 \family sans Home \family default \family typewriter buffer-begin \layout List \labelwidthstring 00.00.0000 \family sans End \family default \family typewriter buffer-end \layout List \labelwidthstring 00.00.0000 \family sans S-Home \family default \family typewriter line-begin-select \layout List \labelwidthstring 00.00.0000 \family sans S-End \family default \family typewriter line-end-select \layout List \labelwidthstring 00.00.0000 \family sans S-Up \family default \family typewriter up-select \layout List \labelwidthstring 00.00.0000 \family sans S-Down \family default \family typewriter down-select \layout List \labelwidthstring 00.00.0000 \family sans S-Next \family default \family typewriter screen-down-select \layout List \labelwidthstring 00.00.0000 \family sans S-Prior \family default \family typewriter screen-up-select \layout List \labelwidthstring 00.00.0000 \family sans S-Left \family default \family typewriter backward-select \layout List \labelwidthstring 00.00.0000 \family sans S-Right \family default \family typewriter forward-select \layout List \labelwidthstring 00.00.0000 \family sans C-Up \family default \family typewriter paragraph-up \layout List \labelwidthstring 00.00.0000 \family sans C-Down \family default \family typewriter paragraph-down \layout List \labelwidthstring 00.00.0000 \family sans C-Left \family default \family typewriter word-backward \layout List \labelwidthstring 00.00.0000 \family sans C-Right \family default \family typewriter word-forward \layout List \labelwidthstring 00.00.0000 \family sans C-Delete \family default \family typewriter word-delete-forward \layout List \labelwidthstring 00.00.0000 \family sans C-BackSpace \family default \family typewriter word-delete-backward \layout List \labelwidthstring 00.00.0000 \family sans C-Return \family default \family typewriter break-line \layout List \labelwidthstring 00.00.0000 \family sans C-period \family default \family typewriter end-of-sentence-period-insert \layout List \labelwidthstring 00.00.0000 \family sans C-space \family default \family typewriter protected-space-insert \layout List \labelwidthstring 00.00.0000 \family sans C-S-at \family default \family typewriter mark-on \layout List \labelwidthstring 00.00.0000 \family sans C-S-greater \family default \family typewriter reference-goto \layout List \labelwidthstring 00.00.0000 \family sans C-S-less \family default \family typewriter reference-back \layout List \labelwidthstring 00.00.0000 \family sans C-S-slash \family default \family typewriter undo \layout List \labelwidthstring 00.00.0000 \family sans C-S-underscore \family default \family typewriter undo \layout List \labelwidthstring 00.00.0000 \family sans C-S-quotedbl \family default \family typewriter quote-insert \layout List \labelwidthstring 00.00.0000 \family sans C-S-Home \family default \family typewriter buffer-begin-select \layout List \labelwidthstring 00.00.0000 \family sans C-S-End \family default \family typewriter buffer-end-select \layout List \labelwidthstring 00.00.0000 \family sans C-S-Up \family default \family typewriter paragraph-up-select \layout List \labelwidthstring 00.00.0000 \family sans C-S-Down \family default \family typewriter paragraph-down-select \layout List \labelwidthstring 00.00.0000 \family sans C-S-Left \family default \family typewriter word-backward-select \layout List \labelwidthstring 00.00.0000 \family sans C-S-Right \family default \family typewriter word-forward-select \layout List \labelwidthstring 00.00.0000 \family sans Escape \family default \family typewriter meta-prefix \layout List \labelwidthstring 00.00.0000 \family sans M-d \family default \family typewriter word-delete-forward \layout List \labelwidthstring 00.00.0000 \family sans M-w \family default \family typewriter copy \layout List \labelwidthstring 00.00.0000 \family sans M-x \family default \family typewriter command-execute \layout List \labelwidthstring 00.00.0000 \family sans M-S-W \family default \family typewriter layout-copy \layout List \labelwidthstring 00.00.0000 \family sans M-period \family default \family typewriter dots-insert \layout List \labelwidthstring 00.00.0000 \family sans M-Return \family default \family typewriter break-paragraph-keep-layout \layout List \labelwidthstring 00.00.0000 \family sans M-S-percent \family typewriter find-replace \layout Subsection Specific to \family typewriter cua.bind \layout List \labelwidthstring 00.00.0000 \family sans C-b \family default \family typewriter font-bold \layout List \labelwidthstring 00.00.0000 \family sans C-c \family default \family typewriter copy \layout List \labelwidthstring 00.00.0000 \family sans C-d \family default \family typewriter buffer-view \layout List \labelwidthstring 00.00.0000 \family sans C-e \family default \family typewriter font-emph \layout List \labelwidthstring 00.00.0000 \family sans C-f \family default \family typewriter find-replace \layout List \labelwidthstring 00.00.0000 \family sans C-g \family default \family typewriter error-next \layout List \labelwidthstring 00.00.0000 \family sans C-i \family default \family typewriter open-stuff \layout List \labelwidthstring 00.00.0000 \family sans C-k \family default \family typewriter font-noun \layout List \labelwidthstring 00.00.0000 \family sans C-l \family default \family typewriter tex-mode \layout List \labelwidthstring 00.00.0000 \family sans C-m \family default \family typewriter math-mode \layout List \labelwidthstring 00.00.0000 \family sans C-n \family default \family typewriter buffer-new \layout List \labelwidthstring 00.00.0000 \family sans C-o \family default \family typewriter buffer-open \layout List \labelwidthstring 00.00.0000 \family sans C-p \family default \family typewriter buffer-print \layout List \labelwidthstring 00.00.0000 \family sans C-q \family default \family typewriter lyx-quit \layout List \labelwidthstring 00.00.0000 \family sans C-r \family default \family typewriter buffer-reload \layout List \labelwidthstring 00.00.0000 \family sans C-s \family default \family typewriter buffer-write \layout List \labelwidthstring 00.00.0000 \family sans C-t \family default \family typewriter buffer-view-ps \layout List \labelwidthstring 00.00.0000 \family sans C-u \family default \family typewriter font-underline \layout List \labelwidthstring 00.00.0000 \family sans C-v \family default \family typewriter paste \layout List \labelwidthstring 00.00.0000 \family sans C-w \family default \family typewriter buffer-close \layout List \labelwidthstring 00.00.0000 \family sans C-x \family default \family typewriter cut \layout List \labelwidthstring 00.00.0000 \family sans C-z \family default \family typewriter undo \layout List \labelwidthstring 00.00.0000 \family sans C-space \family default \family typewriter protected-space-insert \layout List \labelwidthstring 00.00.0000 \family sans C-S-C \family default \family typewriter layout-copy \layout List \labelwidthstring 00.00.0000 \family sans C-S-D \family default \family typewriter buffer-typeset \layout List \labelwidthstring 00.00.0000 \family sans C-S-M \family default \family typewriter math-display \layout List \labelwidthstring 00.00.0000 \family sans C-S-N \family default \family typewriter buffer-new-template \layout List \labelwidthstring 00.00.0000 \family sans C-S-P \family default \family typewriter font-code \layout List \labelwidthstring 00.00.0000 \family sans C-S-S \family default \family typewriter buffer-write-as \layout List \labelwidthstring 00.00.0000 \family sans C-S-T \family default \family typewriter buffer-typeset-ps \layout List \labelwidthstring 00.00.0000 \family sans C-S-V \family default \family typewriter layout-paste \layout List \labelwidthstring 00.00.0000 \family sans C-S-Z \family default \family typewriter redo \layout List \labelwidthstring 00.00.0000 \family sans S-Insert \family default \family typewriter paste \layout List \labelwidthstring 00.00.0000 \family sans S-Delete \family default \family typewriter cut \layout List \labelwidthstring 00.00.0000 \family sans C-period \family default \family typewriter end-of-sentence-period-insert \layout List \labelwidthstring 00.00.0000 \family sans C-S-greater \family default \family typewriter reference-goto \layout List \labelwidthstring 00.00.0000 \family sans C-S-less \family default \family typewriter reference-back \layout List \labelwidthstring 00.00.0000 \family sans C-minus \family default \family typewriter hyphenation-point-insert \layout List \labelwidthstring 00.00.0000 \family sans C-S-quotedbl \family default \family typewriter quote-insert \layout List \labelwidthstring 00.00.0000 \family sans C-S-space \family default \family typewriter protected-space-insert \layout List \labelwidthstring 00.00.0000 \family sans M-x \family default \family typewriter command-execute \layout List \labelwidthstring 00.00.0000 \family sans S-Home \family default \family typewriter line-begin-select \layout List \labelwidthstring 00.00.0000 \family sans S-End \family default \family typewriter line-end-select \layout List \labelwidthstring 00.00.0000 \family sans S-Up \family default \family typewriter up-select \layout List \labelwidthstring 00.00.0000 \family sans S-Down \family default \family typewriter down-select \layout List \labelwidthstring 00.00.0000 \family sans S-Delete \family default \family typewriter cut \layout List \labelwidthstring 00.00.0000 \family sans S-Insert \family default \family typewriter paste \layout List \labelwidthstring 00.00.0000 \family sans S-Next \family default \family typewriter screen-down-select \layout List \labelwidthstring 00.00.0000 \family sans S-Prior \family default \family typewriter screen-up-select \layout List \labelwidthstring 00.00.0000 \family sans S-Left \family default \family typewriter backward-select \layout List \labelwidthstring 00.00.0000 \family sans S-Right \family default \family typewriter forward-select \layout List \labelwidthstring 00.00.0000 \family sans C-Home \family default \family typewriter buffer-begin \layout List \labelwidthstring 00.00.0000 \family sans C-End \family default \family typewriter buffer-end \layout List \labelwidthstring 00.00.0000 \family sans C-Up \family default \family typewriter paragraph-up \layout List \labelwidthstring 00.00.0000 \family sans C-Down \family default \family typewriter paragraph-down \layout List \labelwidthstring 00.00.0000 \family sans C-Delete \family default \family typewriter word-delete-forward \layout List \labelwidthstring 00.00.0000 \family sans C-BackSpace \family default \family typewriter word-delete-backward \layout List \labelwidthstring 00.00.0000 \family sans C-Insert \family default \family typewriter copy \layout List \labelwidthstring 00.00.0000 \family sans C-Return \family default \family typewriter break-line \layout List \labelwidthstring 00.00.0000 \family sans C-Left \family default \family typewriter word-backward \layout List \labelwidthstring 00.00.0000 \family sans C-Right \family default \family typewriter word-forward \layout List \labelwidthstring 00.00.0000 \family sans C-S-Down \family default \family typewriter paragraph-down-select \layout List \labelwidthstring 00.00.0000 \family sans C-S-End \family default \family typewriter buffer-end-select \layout List \labelwidthstring 00.00.0000 \family sans C-S-Home \family default \family typewriter buffer-begin-select \layout List \labelwidthstring 00.00.0000 \family sans C-S-Left \family default \family typewriter word-backward-select \layout List \labelwidthstring 00.00.0000 \family sans C-S-Right \family default \family typewriter word-forward-select \layout List \labelwidthstring 00.00.0000 \family sans C-S-Up \family default \family typewriter paragraph-up-select \layout List \labelwidthstring 00.00.0000 \family sans C-S-quotedbl \family default \family typewriter quote-insert \layout List \labelwidthstring 00.00.0000 \family sans M-Return \family default \family typewriter break-paragraph-keep-layout \layout List \labelwidthstring 00.00.0000 \family sans M-period \family default \family typewriter dots-insert \layout List \labelwidthstring 00.00.0000 \family sans M-S-Right \family default \family typewriter depth-increment \layout List \labelwidthstring 00.00.0000 \family sans M-S-Left \family default \family typewriter depth-decrement \layout List \labelwidthstring 00.00.0000 \family sans Escape \family default \family typewriter cancel \layout List \labelwidthstring 00.00.0000 \family sans F2 \family default \family typewriter buffer-write \layout List \labelwidthstring 00.00.0000 \family sans F3 \family typewriter buffer-open \layout List \labelwidthstring 00.00.0000 \family sans F5 \family default \family typewriter screen-recenter \layout List \labelwidthstring 00.00.0000 \family sans F7 \family default \family typewriter spellchecker \layout List \labelwidthstring 00.00.0000 \family sans F9 \family default \family typewriter meta-prefix \layout List \labelwidthstring 00.00.0000 \family sans C-F4 \family default \family typewriter buffer-close \layout List \labelwidthstring 00.00.0000 \family sans M-F4 \family default \family typewriter lyx-quit \layout Subsection Specific to \family typewriter sciword.bind \layout Standard These are LyX keyboard definitions for mathematics, similar to those of Scientific Word. \layout Standard The bindings file and the present documentation were prepared by Serge Winitzki with assistance from Jean-Marc Lasgouttes. Version 1.3, for LyX 1.2.x and 1.3.x. \layout Standard These definitions make it a lot easier to type equations without using the mouse, especially for people familiar with Scientific Word. The standard LyX bindings such as \family typewriter M-m \family default or \family typewriter M-o \family default are unmodified. \layout Standard Tip: to find the "LyX bind name" for a key, look at the status bar after typing some non-existent key combination. E.g. to find how "Ctrl-&" is referenced, press Ctrl-S and then Ctrl-&: the status bar shows "C-s S-C-ampersand." (This does not work in LyX 1.3.0!) \layout List \labelwidthstring 00.00.0000 \family sans C-c \family default \family typewriter copy \family default -- Copy, cut, paste is as in Sciword, \family typewriter C-c \family default , \family typewriter C-x \family default , and \family typewriter C-v \family default . \layout List \labelwidthstring 00.00.0000 \family sans C-d \family default \family typewriter math-display \family default -- Display equation toggle: type \family typewriter C-d \family default to insert a displayed formula ( \family typewriter d \family default for \begin_inset Quotes eld \end_inset displayed \begin_inset Quotes erd \end_inset ). You can also type \family typewriter C-d \family default in a displayed formula to convert it back to an inline formula. \layout List \labelwidthstring 00.00.0000 \family sans C-f \family default \family typewriter math-insert \backslash frac \family default -- Fractions: type \family typewriter C-f \family default to insert a fraction ( \family typewriter f \family default for \begin_inset Quotes eld \end_inset fraction \begin_inset Quotes erd \end_inset ). You can also select an expression and type \family typewriter C-f \family default to convert it to the numerator of a fraction. Note: pressing \family typewriter Backspace \family default at the \emph on left \emph default end of the denominator will delete the numerator and convert the denominator to a non-fraction. \layout List \labelwidthstring 00.00.0000 \family sans C-i \family default \family typewriter math-insert \backslash int \family default -- Inserts \begin_inset Formula $\int$ \end_inset ( \family typewriter i \family default for \begin_inset Quotes eld \end_inset integral \begin_inset Quotes erd \end_inset ) \layout List \labelwidthstring 00.00.0000 \family sans C-k \family default \family typewriter line-delete-forward \family default -- Emacs-like binding: delete forward of cursor to end of line. \layout List \labelwidthstring 00.00.0000 \family sans C-m \family default \family typewriter math-mode \family default -- A text/math toggle ( \family typewriter m \family default for \begin_inset Quotes eld \end_inset math \begin_inset Quotes erd \end_inset ): switches to math in text mode, and also inserts roman text in math mode. Also bound to \family typewriter C-t \family default ( \family typewriter t \family default for \begin_inset Quotes eld \end_inset text \begin_inset Quotes erd \end_inset ). \layout List \labelwidthstring 00.00.0000 \family sans C-n \family default \family typewriter math-number \family default -- Add/remove numbering in a single equation. \layout List \labelwidthstring 00.00.0000 \family sans S-C-N \family default \family typewriter math-nonumber \family default -- Add/remove numbering at a line in equation arrays. \layout Standard The above commands are toggles that control the numbering of equations ( \family typewriter N \family default for \begin_inset Quotes eld \end_inset number \begin_inset Quotes erd \end_inset ). Note: when deleting a number in a labeled eqnarray, the label is not really removed (the TeX code becomes \begin_inset Quotes eld \end_inset \family typewriter \backslash label{} \backslash nonumber \family default \begin_inset Quotes erd \end_inset ) and this generates a (harmless) LaTeX warning. \layout List \labelwidthstring 00.00.0000 \family sans C-o \family default \family typewriter file-open \family default -- Open a new document. (W*ndows) \layout List \labelwidthstring 00.00.0000 \family sans C-q \family default \family typewriter quote-insert \family default -- Insert a quote character " ( \family typewriter q \family default for \begin_inset Quotes eld \end_inset quote \begin_inset Quotes erd \end_inset ). This is not the \begin_inset Quotes eld \end_inset smart \begin_inset Quotes erd \end_inset double quote character that you get by default. \layout List \labelwidthstring 00.00.0000 \family sans C-r \family default \family typewriter math-insert \backslash sqrt \family default -- Square root sign \begin_inset Formula $\sqrt{x}$ \end_inset ( \family typewriter r \family default for \begin_inset Quotes eld \end_inset root \begin_inset Quotes erd \end_inset ). \layout List \labelwidthstring 00.00.0000 \family sans S-C-R \family default \family typewriter math-insert \backslash root \family default -- root sign \begin_inset Formula $\sqrt[n]{x}$ \end_inset . \layout List \labelwidthstring 00.00.0000 \family sans C-t \family default \family typewriter math-mode \family default -- Another binding for a switch between the text and the math mode ( \family typewriter t \family default is for \begin_inset Quotes eld \end_inset text \begin_inset Quotes erd \end_inset ). Note that the roman text inserted in math mode is special. \layout List \labelwidthstring 00.00.0000 \family sans C-u \family default \family typewriter font-underline \family default -- \bar under Underline \bar default the selected text (text mode only, use things like \family typewriter \backslash overline \family default or \family typewriter \backslash underbar \family default for math ). \layout List \labelwidthstring 00.00.0000 \family sans C-v \family default \family typewriter paste \family default -- W*ndows heritage. \layout List \labelwidthstring 00.00.0000 \family sans C-w \family default \family typewriter buffer-close \family default -- Close the current document (again, a W*ndows heritage). \layout List \labelwidthstring 00.00.0000 \family sans C-x \family default \family typewriter cut \layout List \labelwidthstring 00.00.0000 \family sans C-z \family default \family typewriter undo \layout List \labelwidthstring 00.00.0000 \family sans S-C-Z \family default \family typewriter redo \family default -- the \begin_inset Quotes eld \end_inset Redo \begin_inset Quotes erd \end_inset operation, or \begin_inset Quotes eld \end_inset undo the undo \begin_inset Quotes erd \end_inset . \layout Standard Bracket delimiters: press \family typewriter Ctrl \family default - to insert a matching pair of delimiters. For example, \family typewriter Ctrl-[ \family default inserts a pair of parentheses \begin_inset Formula $\left[\right]$ \end_inset . (Note: \family typewriter Ctrl-] \family default does the same thing.) It will switch to math mode if needed. The supported characters are ( [ { < |. It is the same to press the right or the left bracket. The corresponding delimiters are \begin_inset Formula $\left(\right)$ \end_inset \begin_inset Formula $\left[\right]$ \end_inset \begin_inset Formula $\left\{ \right\} $ \end_inset \begin_inset Formula $\left\langle \right\rangle $ \end_inset \begin_inset Formula $\left|\right|$ \end_inset . The delimiters are \begin_inset Quotes eld \end_inset smart \begin_inset Quotes erd \end_inset and resize with their contents. Use Math Panel to get other or non-matching delimiters. Press backspace on the \emph on left \emph default delimiter to remove both \begin_inset Quotes eld \end_inset smart \begin_inset Quotes erd \end_inset delimiters without removing their contents. \layout List \labelwidthstring 00.00.0000 \family sans C-9 \family default \family typewriter math-delim ( ) \family default -- for convenience, pressing \family typewriter Ctrl-9 \family default is the same as \family typewriter Ctrl-( \family default or \family typewriter Ctrl-) \layout List \labelwidthstring 00.00.0000 \family sans S-C-parenleft \family default \family typewriter math-delim ( ) \layout List \labelwidthstring 00.00.0000 \family sans C-0 \family default \family typewriter math-delim ( ) \layout List \labelwidthstring 00.00.0000 \family sans S-C-parenright \family default \family typewriter math-delim ( ) \layout List \labelwidthstring 00.00.0000 \family sans C-bracketleft \family default \family typewriter math-delim [ ] \layout List \labelwidthstring 00.00.0000 \family sans C-bracketright \family default \family typewriter math-delim [ ] \layout List \labelwidthstring 00.00.0000 \family sans C-S-less \family default \family typewriter math-delim langle rangle \family default -- angular delimiters \begin_inset Formula $\left\langle \right\rangle $ \end_inset , not to confuse with ordinary < > signs. \layout List \labelwidthstring 00.00.0000 \family sans C-S-greater \family default \family typewriter math-delim langle rangle \layout Standard The bar bracket: on some keyboards (e.g.\SpecialChar ~ some British ones), the bar character is bound to an \family typewriter Alt \family default -something and on some wayward Unices to "brokenbar". So we define all of these keys as well. \layout List \labelwidthstring 00.00.0000 \family sans C-S-bar \family default \family typewriter math-delim | | \layout List \labelwidthstring 00.00.0000 \family sans C-S-brokenbar \family default \family typewriter math-delim | | \layout List \labelwidthstring 00.00.0000 \family sans C-M-bar \family default \family typewriter math-delim | | \layout List \labelwidthstring 00.00.0000 \family sans S-C-braceleft \family default \family typewriter math-delim { } \layout List \labelwidthstring 00.00.0000 \family sans S-C-braceright \family default \family typewriter math-delim { } \layout Standard Accents are in most cases \family typewriter Ctrl \family default -, e.g.\SpecialChar ~ \family typewriter Ctrl-. \family default for overdot, \family typewriter Ctrl-' \family default for acute accent, \family typewriter Ctrl-~ \family default for tilde (you also need to press \family typewriter Shift \family default here) etc. For example, \begin_inset Quotes eld \end_inset \family typewriter Ctrl-' \family default \family typewriter a \family default \begin_inset Quotes erd \end_inset inserts á. Some accents work only in math mode and others only in text mode. \layout List \labelwidthstring 00.00.0000 \family sans C-period \family default \family typewriter accent-dot \family default -- overdot accent, \i \.{a} (text mode only). \layout List \labelwidthstring 00.00.0000 \family sans C-comma \family default \family typewriter math-insert \backslash dot \family default -- overdot accent, \begin_inset Formula $\dot{a}$ \end_inset (math mode only -- in physics this denotes a first derivative). \layout List \labelwidthstring 00.00.0000 \family sans C-equals \family default \family typewriter math-insert \backslash overrightarrow \family default -- Vector accent over math \begin_inset Formula $\overrightarrow{x}$ \end_inset . \layout List \labelwidthstring 00.00.0000 \family sans S-C-quotedbl \family default \family typewriter accent-umlaut \family default -- umlaut accent, ä (text mode only) \layout List \labelwidthstring 00.00.0000 \family sans S-C-colon \family default \family typewriter math-insert \backslash ddot \family default -- double dot accent, \begin_inset Formula $\ddot{a}$ \end_inset (math mode only -- in physics this denotes a second derivative). To get a triple dot in math mode, use \family typewriter \backslash dddot \layout List \labelwidthstring 00.00.0000 \family sans C-quoteleft \family default \family typewriter accent-grave \family default -- grave accent à (text mode only, use \family typewriter \backslash grave \family default for math) \layout List \labelwidthstring 00.00.0000 \family sans S-C-asciitilde \family default \family typewriter accent-tilde \family default -- tilde accent ã (text mode only, use \family typewriter \backslash tilde \family default for math) \layout List \labelwidthstring 00.00.0000 \family sans C-apostrophe \family default \family typewriter accent-acute \family default -- acute accent á (text mode only, use \family typewriter \backslash acute \family default for math) \layout List \labelwidthstring 00.00.0000 \family sans S-C-asciicircum \family default \family typewriter accent-circumflex \family default -- circumflex (caret) accent â (text mode only, use \family typewriter \backslash hat \family default for math). \layout Standard Function keys. The new key S-F2 for creating a LaTeX file seems handy. \layout List \labelwidthstring 00.00.0000 \family sans F2 \family default \family typewriter buffer-write \family default -- Save current document. \layout List \labelwidthstring 00.00.0000 \family sans S-F2 \family default \family typewriter buffer-export latex \family default -- Write a LaTeX file for the current document. \layout List \labelwidthstring 00.00.0000 \family sans F3 \family default \family typewriter find-replace \family default -- Find and replace dialog. \layout List \labelwidthstring 00.00.0000 \family sans C-F4 \family default \family typewriter buffer-close \family default -- same as \family typewriter C-w \family default . \layout List \labelwidthstring 00.00.0000 \family sans M-F4 \family default \family typewriter lyx-quit \family default -- \family typewriter Alt-F4 \family default to quit LyX is the W*ndows w*ndow manager's mnemonic. \layout Standard \family typewriter F4 \family default to \family typewriter F8 \family default are used to switch fonts. Use \family typewriter F4 \family default to switch back to the normal font. The non-default font switches \family typewriter F5 \family default - \family typewriter F8 \family default all work as toggles. They also work on the whole word if you put the cursor in the middle of the word, or if you select some text. \layout List \labelwidthstring 00.00.0000 \family sans F4 \family default \family typewriter font-default \family default -- stop using any special font \layout List \labelwidthstring 00.00.0000 \family sans F5 \family default \family typewriter font-bold \family default -- make \series bold bold \series default text. \layout List \labelwidthstring 00.00.0000 \family sans F6 \family default \family typewriter font-emph \family default -- make \emph on emphasized \emph default text. \layout List \labelwidthstring 00.00.0000 \family sans F7 \family default \family typewriter font-code \family default -- make \family typewriter typewritten \family default text. \layout List \labelwidthstring 00.00.0000 \family sans F8 \family default \family typewriter font-noun \family default -- make \noun on Caps/small caps \noun default text. (Used sometimes for people's names.) \layout Standard \family typewriter F9 \family default is bound as \begin_inset Quotes eld \end_inset meta-prefix \begin_inset Quotes erd \end_inset , same as the \family typewriter Alt \family default key (useful e.g.\SpecialChar ~ if the keyboard has no working \family typewriter Alt \family default ). \layout Standard Here are some Sciword-inspired mnemonics for frequently used math symbols. Many symbols start with a \family typewriter C-s \family default sequence. Therefore \family typewriter C-s \family default cannot be itself bound to anything. \layout List \labelwidthstring 00.00.0000 \family sans M-apostrophe \family default \family typewriter math-insert \backslash prime \family default -- The \begin_inset Quotes eld \end_inset prime \begin_inset Quotes erd \end_inset symbol \begin_inset Formula $\prime$ \end_inset in math mode. This is frequently unnecessary: in most cases the normal apostrophe works just fine, e.g. \begin_inset Formula $x'+2x=0$ \end_inset , but in some cases this would generate a double superscript error in LaTeX. For example: \begin_inset Formula $x^{\prime2}$ \end_inset ( \begin_inset Formula $x$ \end_inset prime squared) must be entered with the prime character. \layout List \labelwidthstring 00.00.0000 \family sans C-s\SpecialChar ~ apostrophe \family default \family typewriter command-sequence math-superscript; math-insert \backslash prime; \family default -- Insert a prime as a superscript (see example above). \layout List \labelwidthstring 00.00.0000 \family sans C-Up \family default \family typewriter math-insert ^ \family default -- Insert an upper index. Also, \family typewriter ^ \layout List \labelwidthstring 00.00.0000 \family sans C-Down \family default \family typewriter math-insert _ \family default -- Insert a lower index. Also, \family typewriter _ \layout List \labelwidthstring 00.00.0000 \family sans C-s\SpecialChar ~ d \family default \family typewriter math-insert \backslash partial \family default -- Partial derivative symbol \begin_inset Formula $\partial$ \end_inset . \layout List \labelwidthstring 00.00.0000 \family sans C-s\SpecialChar ~ e \family default \family typewriter math-insert \backslash sum \family default -- Summation symbol \begin_inset Formula $\sum$ \end_inset (not the same as the Greek letter uppercase Sigma \begin_inset Formula $\Sigma$ \end_inset because it can resize and allows smart upper/lower limits). \layout List \labelwidthstring 00.00.0000 \family sans C-s\SpecialChar ~ p \family default \family typewriter math-insert \backslash prod \family default -- Product symbol \begin_inset Formula $\prod$ \end_inset (not the same as the Greek letter uppercase Pi, \begin_inset Formula $\Pi$ \end_inset ). \layout List \labelwidthstring 00.00.0000 \family sans C-s\SpecialChar ~ i \family default \family typewriter math-insert \backslash infty \family default -- Infinity \begin_inset Formula $\infty$ \end_inset . \layout List \labelwidthstring 00.00.0000 \family sans C-s\SpecialChar ~ x \family default \family typewriter math-insert \backslash times \family default -- Cross product \begin_inset Formula $\times$ \end_inset . \layout List \labelwidthstring 00.00.0000 \family sans C-s\SpecialChar ~ v \family default \family typewriter math-matrix 1 2 \family default -- Insert a stacked array \begin_inset Formula $\begin{array}{c} \begin{array}{c} \\\end{array}\end{array}$ \end_inset . (Frequently useful in formulae.) \layout List \labelwidthstring 00.00.0000 \family sans C-s\SpecialChar ~ m \family default \family typewriter math-matrix 3 3 \family default -- Insert a 3 \begin_inset Formula $\times$ \end_inset 3 matrix \begin_inset Formula $\begin{array}{ccc} \\\\\end{array}$ \end_inset . (Then you can modify its size using the \family sans Edit\SpecialChar \menuseparator Math \family default menu.) \layout List \labelwidthstring 00.00.0000 \family sans C-s\SpecialChar ~ S-plus \family default \family typewriter math-insert \backslash dagger \family default -- The \begin_inset Quotes eld \end_inset dagger \begin_inset Quotes erd \end_inset \begin_inset Formula $\dagger$ \end_inset . \layout List \labelwidthstring 00.00.0000 \family sans C-s\SpecialChar ~ equal \family default \family typewriter math-insert \backslash equiv \family default -- \begin_inset Quotes eld \end_inset Identical equality \begin_inset Quotes erd \end_inset \begin_inset Formula $\equiv$ \end_inset . \layout List \labelwidthstring 00.00.0000 \family sans M-equal \family default \family typewriter math-insert \backslash approx \family default -- \begin_inset Quotes eld \end_inset Approximate equality \begin_inset Quotes erd \end_inset \begin_inset Formula $\approx$ \end_inset . \layout List \labelwidthstring 00.00.0000 \family sans M-minus \family default \family typewriter math-insert \backslash sim \family default -- The \begin_inset Quotes eld \end_inset of order \begin_inset Quotes erd \end_inset sign \begin_inset Formula $\sim$ \end_inset . \layout List \labelwidthstring 00.00.0000 \family sans C-minus \family default \family typewriter math-insert \backslash rightarrow \family default -- The arrow \begin_inset Formula $\rightarrow$ \end_inset as in \begin_inset Formula $\lim_{x\rightarrow0}$ \end_inset . \layout List \labelwidthstring 00.00.0000 \family sans S-M-less \family default \family typewriter math-insert \backslash leq \family default -- Less-or-equal \begin_inset Formula $\leq$ \end_inset . \layout List \labelwidthstring 00.00.0000 \family sans S-M-greater \family default \family typewriter math-insert \backslash geq \family default -- Greater-or-equal \begin_inset Formula $\geq$ \end_inset . \layout List \labelwidthstring 00.00.0000 \family sans C-s\SpecialChar ~ S-less \family default \family typewriter math-insert \backslash ll \family default -- \begin_inset Quotes eld \end_inset Much less than \begin_inset Quotes erd \end_inset \begin_inset Formula $\ll$ \end_inset (useful in physics) \layout List \labelwidthstring 00.00.0000 \family sans C-s\SpecialChar ~ S-greater \family default \family typewriter math-insert \backslash gg \family default -- \begin_inset Quotes eld \end_inset Much greater than \begin_inset Quotes erd \end_inset sign \begin_inset Formula $\gg$ \end_inset . \layout Subsection Standard math bindings \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ b \family default \family typewriter math-insert \backslash overline \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ d \family default \family typewriter math-display \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ e \family default \family typewriter math-insert ^ \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ f \family default \family typewriter math-insert \backslash frac \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ g \family default \family typewriter math-greek \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ h \family default \family typewriter accent-circumflex \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ i \family default \family typewriter math-insert \backslash int \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ l \family default \family typewriter math-limits \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ m \family default \family typewriter math-mode \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ n \family default \family typewriter math-number \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ o \family default \family typewriter math-insert \backslash oint \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ p \family default \family typewriter math-insert \backslash partial \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ r \family default \family typewriter math-insert \backslash sqrt \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ s \family default \family typewriter math-insert \backslash sqrt \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ u \family default \family typewriter math-insert \backslash sum \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ v \family default \family typewriter math-insert \backslash vec \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ x \family default \family typewriter math-insert _ \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ 8 \family default \family typewriter math-insert \backslash infty \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ S-G \family default \family typewriter math-greek-toggle \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ S-N \family default \family typewriter math-nonumber \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ S-period \family default \family typewriter accent-dot \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ S-asciitilde \family default \family typewriter accent-tilde \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ S-apostrophe \family default \family typewriter math-insert \backslash prime \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ S-parenleft \family default \family typewriter math-delim ( ) \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ S-bracketleft \family default \family typewriter math-delim [ ] \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ S-braceleft \family default \family typewriter math-delim { } \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ S-less \family default \family typewriter math-delim langle rangle \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ S-greater \family default \family typewriter math-delim rangle langle \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ S-bar \family default \family typewriter math-delim | | \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ S-plus \family default \family typewriter math-insert \backslash pm \layout List \labelwidthstring 00.00.0000 \family sans M-m\SpecialChar ~ S-equal \family default \family typewriter math-insert \backslash neq \layout Subsection Other Accelerators \layout List \labelwidthstring 00.00.0000 \family sans M-k\SpecialChar ~ o \family typewriter keymap-off \layout List \labelwidthstring 00.00.0000 \family sans M-k\SpecialChar ~ t \family typewriter keymap-toggle \layout List \labelwidthstring 00.00.0000 \family sans M-k\SpecialChar ~ x \family typewriter keymap-off \layout List \labelwidthstring 00.00.0000 \family sans M-k\SpecialChar ~ 1 \family typewriter keymap-primary \layout List \labelwidthstring 00.00.0000 \family sans M-k\SpecialChar ~ 2 \family typewriter keymap-secondary \the_end