]> git.lyx.org Git - lyx.git/blobdiff - lib/doc/Additional.lyx
Note about using the mini-buffer to enter accented characters.
[lyx.git] / lib / doc / Additional.lyx
index ab77858d5f97504c80bb91d7120609a3e9bf8d7a..696fba15b76e5ea4058a15e69e99c15d72cf81bb 100644 (file)
@@ -1,5 +1,5 @@
 #LyX 2.0.0svn created this file. For more info see http://www.lyx.org/
-\lyxformat 370
+\lyxformat 376
 \begin_document
 \begin_header
 \textclass scrbook
@@ -51,6 +51,7 @@ logicalmkup
 theorems-ams
 theorems-ams-extended
 \end_modules
+\maintain_unincluded_children false
 \begin_local_layout
 Format 7
 InsetLayout CharStyle:MenuItem
@@ -68,6 +69,7 @@ End
 \end_local_layout
 \language english
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
@@ -103,6 +105,7 @@ End
 \use_geometry false
 \use_amsmath 0
 \use_esint 0
+\use_mhchem 1
 \cite_engine basic
 \use_bibtopic false
 \use_indices false
@@ -122,6 +125,8 @@ End
 \paperpagestyle headings
 \tracking_changes false
 \output_changes false
+\html_use_mathml true
+\html_be_strict true
 \end_header
 
 \begin_body
@@ -187,20 +192,29 @@ User's Guide
 \emph default
  is already quite lengthy, and it contains information on all of the basic
  features one needs to know in order to prepare most documents.
- However, the LyX Team has worked to LyX extensible through various configuratio
-n files and external packages.
+ However, the LyX Team has worked to make LyX extensible through various
+ configuration files and external packages.
  That means that if you want to support the Fizzwizzle LaTeX package, you
  can create a layout file (or module) for it without having to alter LyX
  itself.
- We've already had contributions of several new features this way.
- This is the place where all of those get documented.
+ We've already had contributions of several new features this way, and some
+ of them are documented here.
+ There are also some more `advanced' features, such as how to control the
+ presentation of bibliographies and how to work with multi-part documents,
+ that are not covered in the 
+\emph on
+User's Guide
+\emph default
+ and are discussed here.
 \end_layout
 
 \begin_layout Standard
 This manual also documents some special features, like fax support, version
  control, and SGML support, which require additional software to work properly.
- Lastly, there's a chapter of LaTeX tools and tips, things you can use to
- spruce up your documents by directly using the powerful features of LaTeX.
+ There is also a chapter on LyX's support for HTML.
+ And lastly, there's a chapter of LaTeX tools and tips, things you can use
+ to spruce up your documents by directly using the powerful features of
+ LaTeX.
  After all, LyX 
 \emph on
 is
@@ -228,7 +242,7 @@ User's Guide
 \end_layout
 
 \begin_layout Standard
-Since all the topics in this manual depend heavily on LyX's interaction
+Since many of the topics in this manual depend heavily on LyX's interaction
  with LaTeX, this first chapter covers the inner workings of LyX and how
  to direct LyX to generate exactly the LaTeX code you want.
  It is obviously for more seasoned LyX users.
@@ -2094,7 +2108,8 @@ Customizing Bibliographies with BibTeX
 \end_layout
 
 \begin_layout Standard
-The basics how to use BibTeX are explained in section 
+The most basic information about how to use BibTeX with LyX is contained
+ in the section 
 \emph on
 Bibliography databases (BibTeX)
 \emph default
@@ -4112,6 +4127,352 @@ savelabelitemi}
 
 \end_layout
 
+\begin_layout Chapter
+LyX and the World Wide Web
+\end_layout
+
+\begin_layout Standard
+LyX has long supported the export of documents to various web-friendly formats,
+ such as HTML.
+ Before verson 1.7, however, HTML export was always accomplished by the use
+ of external converters.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+For details on the use of external converters with LyX, see the 
+\size normal
+\emph on
+Converters
+\emph default
+ section of the Customization manual.
+\end_layout
+
+\end_inset
+
+ These fall into two large groups: there are converters that use LaTeX as
+ an intermediate format, such as 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+htlatex
+\end_layout
+
+\end_inset
+
+, 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+html2latex
+\end_layout
+
+\end_inset
+
+, and 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+plastex
+\end_layout
+
+\end_inset
+
+, relying upon LyX to produce the LaTeX; and there is a converter that works
+ directly on LyX files, 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+eLyXer
+\end_layout
+
+\end_inset
+
+.
+ All of these have different advantages and disadvantages.
+\end_layout
+
+\begin_layout Standard
+The LaTeX-based converters have the advantage that, in principle, they know
+ everything about the exported document that LaTeX does.
+ Such converters do not care, for example, if a certain block of code was
+ produced by LyX or was Evil Red Text.
+ They know about 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+aux
+\end_layout
+
+\end_inset
+
+ files, counters, and references, and can often make use of the 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+bbl
+\end_layout
+
+\end_inset
+
+ files generated by BibTeX.
+ On the other hand, LaTeX is a very hard language to parse---it is sometimes
+ said that only TeX itself understands TeX---and LaTeX-based converters
+ will often choke on what seem to be quite simple constructs; complex ones
+ can throw them completely, and as of this writing, for example, the 
+\emph on
+Embedded Objects
+\emph default
+ manual will not export with 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+htlatex
+\end_layout
+
+\end_inset
+
+, though the others will.
+ The other issue concerns how math is handled.
+ These converters typically convert the formulae into little pictures that
+ are then linked from the HTML document.
+ Since these are actually generated by LaTeX, they are accurate.
+ But they do not scale well, and just getting them to look as if they are
+ actually meant to be in your document---so that the font sizes seem to
+ be roughly the same---can be a challenge.
+\end_layout
+
+\begin_layout Standard
+Alex Fernandez's 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+eLyXer
+\end_layout
+
+\end_inset
+
+ solves some of these problems.
+ In particular, its rendering of math tends to look better than 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+htlatex
+\end_layout
+
+\end_inset
+
+'s, at least in simpler cases, since it renders math using a neat combination
+ of HTML and CSS rather than converting the formulae to images.
+ But more complex formula tend to be rendered less well than with 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+htlatex
+\end_layout
+
+\end_inset
+
+, since there is no reasonable way of scaling parentheses in HTML, for example.
+ More importantly (as of version 0.39, at least), 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+eLyXer
+\end_layout
+
+\end_inset
+
+ has no support for math macros, for user-defined paragraph or character
+ styles, or for tables of contents and figures.
+ These limitations make 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+eLyXer
+\end_layout
+
+\end_inset
+
+ unsuitable for many of the documents more advanced LyX users would produce.
+ In principle, of course, all of these problems could be solved, but the
+ LyX developers have decided to follow a different path and made LyX itself
+ capable of writing XHTML, just as it is capable of writing LaTeX, DocBook,
+ and plaintext.
+\end_layout
+
+\begin_layout Standard
+As of this writing, XHTML output remains under development and should probably
+ be regarded as 
+\begin_inset Quotes eld
+\end_inset
+
+experimental
+\begin_inset Quotes erd
+\end_inset
+
+.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+The file 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+development/HTML.notes
+\end_layout
+
+\end_inset
+
+, which can be found in the LyX source tree or 
+\begin_inset CommandInset href
+LatexCommand href
+name "accessed online"
+target "http://www.lyx.org/trac/browser/lyx-devel/trunk/development/HTML/HTML.notes"
+
+\end_inset
+
+, usually contains up-to-date information about the state of XHTML output.
+\end_layout
+
+\end_inset
+
+ Still, the developers have chosen this approach because it has several
+ potential advantages over the other two.
+\end_layout
+
+\begin_layout Standard
+These advantages are primarily due to the fact that the XHTML output routines,
+ since they are part of LyX, know everything LyX knows about the document
+ being exported.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Another advantege is that, since these routines are internal to LyX, they
+ are immune to changes in LyX's file format, or to changes in the semantics
+ of existing insets.
+\end_layout
+
+\end_inset
+
+ So they know about the table of contents (as displayed in the Outline),
+ about the counters associated with different paragraph styles, and about
+ user-defined styles.
+ The XHTML output routines know what LyX knows about internationalization,
+ too, so they will output 
+\begin_inset Quotes eld
+\end_inset
+
+Chaper 1
+\begin_inset Quotes erd
+\end_inset
+
+ or 
+\begin_inset Quotes eld
+\end_inset
+
+
+\lang ngerman
+Kapitel
+\lang english
+ 1
+\begin_inset Quotes erd
+\end_inset
+
+, depending upon the language in effect at the time.
+\end_layout
+
+\begin_layout Standard
+Quite generally, the output routines know everything LyX knows about document
+ layout, that is, about the document is to be rendered on screen.
+ We can use this information when we output the document as XHTML.
+ In particular, LyX 
+\emph on
+automatically
+\emph default
+ generates CSS style information corresponding to the layout information
+ it uses to render the document on screen: if section headings are supposed
+ to be sans-serif and bold as seen in LyX, then (by default) they will be
+ sans-serif and bold when viewed in a web browser, too.
+ And this is true not just for pre-defined styles, like Section, but for
+ any style, including user-defined styles.
+  Indeed, the XHTML output routines make no distinction between user-defined
+ paragraph and character styles and LyX's own pre-defined styles: in each
+ case, everything LyX knows about the styles is contained in the layout
+ files.
+ And much the same is true as regards pre-defined textual insets, such as
+ footnotes, and custom versions.
+\end_layout
+
+\begin_layout Standard
+The result is that XHTML output can be customized and extended in 
+\emph on
+exactly
+\emph default
+ the same way LaTeX output can be customized and extended: through layout
+ files and modules.
+ See chapter five of the 
+\emph on
+Customization 
+\emph default
+manual for the details.
+\end_layout
+
+\begin_layout Standard
+As for math, LyX renders math using MathML.
+ This has advantages and disadvantages.
+ The advantage is that MathML is a dialect of XML designed specifically
+ for mathematics on the web, and it typically renders very well in browsers
+ that support it.
+ The first disadvantage is that not all browsers support MathML, and support
+ is not complete even in the Gecko-based browsers, such as Firefox.
+ A second disadvantage, as compared to rendering math by images, is that
+ LyX can only output MathML for LaTeX constructs that it knows about, which
+ means that the use of ERT in math---e.g., the command 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+BGassert
+\end_layout
+
+\end_inset
+
+ from the 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+begriff.sty
+\end_layout
+
+\end_inset
+
+ package---will produce nothing helpful.
+ Eventually, therefore, LyX will offer the user the option to use MathML
+ or images, and it will offer this choice on a case by case basis.
+\end_layout
+
 \begin_layout Chapter
 The LyX Server
 \end_layout
@@ -4152,12 +4513,7 @@ UserDir
 
 \end_inset
 
-
-\begin_inset Foot
-status collapsed
-
-\begin_layout Plain Layout
-On Windows, 
+, (except on Windows, where 
 \emph on
 local
 \emph default
@@ -4177,12 +4533,7 @@ pipe
 
 \end_inset
 
-.
-\end_layout
-
-\end_inset
-
- and have the names 
+) and have the names 
 \begin_inset Quotes eld
 \end_inset
 
@@ -5579,19 +5930,6 @@ lyxeditor.bat
 \end_inset
 
  wrapper accordingly.
- You are advised to select in 
-\begin_inset Flex CharStyle:MenuItem
-status collapsed
-
-\begin_layout Plain Layout
-Preferences\SpecialChar \menuseparator
-Paths
-\end_layout
-
-\end_inset
-
- a temporary directory whose name does not contain spaces, otherwise inverse
- search will fail.
 \end_layout
 
 \begin_layout Standard
@@ -5638,8 +5976,6 @@ lyxeditor.bat
 
  is the previous wrapper.
  If SumatraPDF.exe is not in your command PATH, use its full file name.
- Again, make sure that the LyX temporary directory name does not contain
- spaces, otherwise inverse search will fail.
 \end_layout
 
 \begin_layout Standard
@@ -18566,7 +18902,7 @@ status collapsed
 
 \end_inset
 
- files and so on administration becomes more complicate.
+ files and so on administration becomes more complicated.
  LyX now supports updating the whole tree in which resides the document
 \begin_inset Foot
 status collapsed
@@ -19158,6 +19494,212 @@ Control
  client program from a command prompt.
 \end_layout
 
+\begin_layout Subsubsection
+SSH tunel used with SVN under Windows
+\end_layout
+
+\begin_layout Standard
+Compared to linux setting svn client to communicate over ssh under Windows
+ is rather troublesome task.
+ We will at least make some hints how to setup client side but former knowledge
+ about ssh and Windows command line is needed, also be prepared for a great
+ deal of frustration...
+\end_layout
+
+\begin_layout Enumerate
+Get svn client for windows, as described in previous sections.
+ When it is fresh install run some svn command (e.g.
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+svn --version
+\end_layout
+
+\end_inset
+
+) to have created config files, which you will need to change later on.
+\end_layout
+
+\begin_layout Enumerate
+Choose ssh client for Windows.
+ There are more possibilities, we will use the one from Putty tools
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+\begin_inset Flex URL
+status collapsed
+
+\begin_layout Plain Layout
+
+http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+.
+ You will need to automatize connection, so client doesn't ask for any password
+ from you.
+ To keep things easy we will use only keys without any additional password
+ protection etc.
+\end_layout
+
+\begin_deeper
+\begin_layout Enumerate
+Generate keys by 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+puttygen
+\end_layout
+
+\end_inset
+
+.
+ Save your private .ppk key file and put the public one on the server side.
+ In case the SVN server runs on linux, note that the format of the public
+ key is not compatible with linux openssh and you will need to direcly copy-past
+e the key from the “
+\begin_inset Flex CharStyle:Emph
+status collapsed
+
+\begin_layout Plain Layout
+Public key for pasting into OpenSSH authorized_keys file:
+\end_layout
+
+\end_inset
+
+” edit field into the server's 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+~/.ssh/authorized_keys
+\end_layout
+
+\end_inset
+
+/ 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+authorized_keys2
+\end_layout
+
+\end_inset
+
+ file.
+\end_layout
+
+\begin_layout Enumerate
+Get the Putty's 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+plink
+\end_layout
+
+\end_inset
+
+.
+ In the SVN config file
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Exact path depends on Windows version, usually somewhere around 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+c:
+\backslash
+Documents and Settings
+\backslash
+user
+\backslash
+Application Data
+\backslash
+Subversion
+\backslash
+config
+\end_layout
+
+\end_inset
+
+ / 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+AppData
+\backslash
+Roaming
+\backslash
+Subversion
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\end_inset
+
+, section [tunnels], setup ssh command, e.g.
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+ssh=c:/path/plink.exe -i c:/path/private_key.ppk
+\end_layout
+
+\end_inset
+
+.
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+It will usually take a lot of time to get exact command right and it depends
+ on many things.
+ For example do not have some remote server saved as a default session in
+ Putty etc.
+ If things fail, try to connect via plink without SVN first.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_deeper
+\begin_layout Enumerate
+Checkout the SVN archive, e.g.
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+svn co svn+ssh://user@server/repository_path
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
 \begin_layout Subsection
 Further tuning
 \end_layout