]> git.lyx.org Git - lyx.git/blobdiff - lib/doc/Additional.lyx
Regenerate LFuns.lyx
[lyx.git] / lib / doc / Additional.lyx
index 6943535c3ad58455c4bedf0f1de127e21029d74b..565e4c0eaed12a6cf2b3d0ddf0aaa984954ec97d 100644 (file)
@@ -1,5 +1,5 @@
 #LyX 2.0.0svn created this file. For more info see http://www.lyx.org/
-\lyxformat 369
+\lyxformat 374
 \begin_document
 \begin_header
 \textclass scrbook
@@ -68,6 +68,7 @@ End
 \end_local_layout
 \language english
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
@@ -85,10 +86,10 @@ End
 \paperfontsize 12
 \spacing single
 \use_hyperref true
-\pdf_title "LyX's Extended manual"
+\pdf_title "LyX's Additional Features manual"
 \pdf_author "LyX Team"
-\pdf_subject "LyX's extended documentation"
-\pdf_keywords "LyX, Documentation, Extended"
+\pdf_subject "LyX's additional features documentation"
+\pdf_keywords "LyX, Documentation, Additional"
 \pdf_bookmarks true
 \pdf_bookmarksnumbered true
 \pdf_bookmarksopen false
@@ -103,10 +104,16 @@ End
 \use_geometry false
 \use_amsmath 0
 \use_esint 0
+\use_mhchem 1
 \cite_engine basic
 \use_bibtopic false
 \use_indices false
 \paperorientation portrait
+\suppress_date false
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
@@ -117,6 +124,8 @@ End
 \paperpagestyle headings
 \tracking_changes false
 \output_changes false
+\html_use_mathml true
+\html_be_strict true
 \end_header
 
 \begin_body
@@ -2043,8 +2052,7 @@ sloppypar
 Did you go overboard with the nesting? LyX (currently) doesn't check to
  make sure you're in the limits for nesting environments.
  If you nested a bunch of environments to the 
-\begin_inset Formula $17^{\mathrm{th}}
-$
+\begin_inset Formula $17^{\mathrm{th}}$
 \end_inset
 
  level, that's the problem.
@@ -4132,26 +4140,6 @@ push
  citations to LyX.
 \end_layout
 
-\begin_layout Standard
-Please note that, at present, 
-\emph on
-the server does not work natively on Windows
-\emph default
-
-\begin_inset Foot
-status collapsed
-
-\begin_layout Plain Layout
-There is no reason it cannot do so.
- But none of the developers on Windows have yet implemented this functionality
- there.
-\end_layout
-
-\end_inset
-
- but it does work with Cygwin versions of LyX.
-\end_layout
-
 \begin_layout Section
 Starting the LyX Server
 \end_layout
@@ -4168,7 +4156,27 @@ UserDir
 
 \end_inset
 
- and have the names 
+, (except on Windows, where 
+\emph on
+local
+\emph default
+ named pipes are special objects located in 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+
+\backslash
+
+\backslash
+.
+\backslash
+pipe
+\end_layout
+
+\end_inset
+
+) and have the names 
 \begin_inset Quotes eld
 \end_inset
 
@@ -4210,7 +4218,7 @@ lyxpipe.out
 status collapsed
 
 \begin_layout Plain Layout
-.lyxpipe.in
+lyxpipe.in
 \end_layout
 
 \end_inset
@@ -4220,7 +4228,7 @@ status collapsed
 status collapsed
 
 \begin_layout Plain Layout
-.lyxpipe.out
+lyxpipe.out
 \end_layout
 
 \end_inset
@@ -4247,7 +4255,25 @@ status collapsed
 
 \end_inset
 
+, or 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+"
+\backslash
+
+\backslash
 .
+\backslash
+pipe
+\backslash
+lyxpipe"
+\end_layout
+
+\end_inset
+
+ on Windows.
  You 
 \emph on
 must
@@ -4279,7 +4305,7 @@ status collapsed
 ' to create the pipes.
  If one of the pipes already exists, LyX will assume that another LyX process
  is already running and will not start the server.
If for some other reason, an unused 
On POSIX (Unix like) systems, if for some other reason, an unused 
 \begin_inset Quotes eld
 \end_inset
 
@@ -4291,6 +4317,16 @@ stale
  it.
  If this fails for some reason, you will need to delete the pipes manually
  and then restart LyX.
+ On Windows, pipes are deleted by the OS on program termination or crash,
+ so 
+\begin_inset Quotes eld
+\end_inset
+
+stale
+\begin_inset Quotes erd
+\end_inset
+
+ pipes should not be possible.
 \end_layout
 
 \begin_layout Standard
@@ -5370,7 +5406,7 @@ Reverse search is triggered by SHIFT-click.
 \end_layout
 
 \begin_layout Subsubsection*
-YAP (Cygwin)
+YAP (Windows)
 \end_layout
 
 \begin_layout Standard
@@ -5461,49 +5497,72 @@ status collapsed
 
 \end_inset
 
- if you want to use the shell script above, or as 
+.
+ The 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
--g %f %l
+lyxeditor.bat
 \end_layout
 
 \end_inset
 
- if you want to use the 
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-lyxclient
+ wrapper is used for communicating with LyX through the 
+\emph on
+lyxpipe
+\emph default
+ and is as follows:
 \end_layout
 
+\begin_layout LyX-Code
+@echo off
+\begin_inset Newline newline
 \end_inset
 
- program.
- Since yap is a native Windows application, the filename it provides should
- be converted to POSIX style before being passed to 
-\begin_inset Flex CharStyle:Code
-status collapsed
-
-\begin_layout Plain Layout
-lyxeditor.sh
-\end_layout
+echo LYXCMD:revdvi:server-goto-file-row:%1 %2> 
+\backslash
 
+\backslash
+.
+\backslash
+pipe
+\backslash
+lyxpipe.in
+\begin_inset Newline newline
 \end_inset
 
- or 
+type 
+\backslash
+
+\backslash
+.
+\backslash
+pipe
+\backslash
+lyxpipe.out
+\end_layout
+
+\begin_layout Standard
+Make sure that the LyXServer pipe path you specified in LyX is 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-lyxclient
+
+\backslash
+
+\backslash
+.
+\backslash
+pipe
+\backslash
+lyxpipe
 \end_layout
 
 \end_inset
 
-, and this is the purpose of the 
+, otherwise change the 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -5513,134 +5572,184 @@ lyxeditor.bat
 
 \end_inset
 
- wrapper, which is as follows:
+ wrapper accordingly.
 \end_layout
 
-\begin_layout LyX-Code
-@echo off
-\begin_inset Newline newline
-\end_inset
+\begin_layout Standard
+In yap, reverse search is triggered by double-click.
+\end_layout
 
-if "%1" == "-g" goto lyxclient
-\begin_inset Newline newline
-\end_inset
+\begin_layout Subsubsection*
+SumatraPDF (Windows)
+\end_layout
 
-bash -c 'lyxeditor.sh $(cygpath -a "%1") %2'
-\begin_inset Newline newline
-\end_inset
+\begin_layout Standard
+In order to use SumatraPDF for inverse search, enter 
+\begin_inset Flex CharStyle:Code
+status collapsed
 
-exit
-\begin_inset Newline newline
-\end_inset
+\begin_layout Plain Layout
+SumatraPDF -inverse-search "lyxeditor.bat %f %l"
+\end_layout
 
-:lyxclient
-\begin_inset Newline newline
 \end_inset
 
-bash -c 'lyxclient %1 $(cygpath -a "%2") %3'
-\end_layout
-
-\begin_layout Standard
-You have to make sure that both 
-\begin_inset Flex CharStyle:Code
+ in the viewer setting in 
+\begin_inset Flex CharStyle:MenuItem
 status collapsed
 
 \begin_layout Plain Layout
-lyxeditor.sh
+Preferences\SpecialChar \menuseparator
+File Handling\SpecialChar \menuseparator
+File formats\SpecialChar \menuseparator
+PDF (pdflatex)
 \end_layout
 
 \end_inset
 
- and 
+, where 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-lyxclient.exe
+lyxeditor.bat
 \end_layout
 
 \end_inset
 
- are in the command PATH, otherwise you have to use their full posix path
in the above batch file.
+ is the previous wrapper.
If SumatraPDF.exe is not in your command PATH, use its full file name.
 \end_layout
 
 \begin_layout Standard
-In yap, reverse search is triggered by double-click.
+Reverse search is triggered by double-click.
 \end_layout
 
 \begin_layout Subsubsection*
-SumatraPDF (Cygwin)
+YAP (Cygwin)
 \end_layout
 
 \begin_layout Standard
-In SumatraPDF, you can set the name of the program that communicates with
LyX by simply launching SumatraPDF a
-\begin_inset Flex CharStyle:Code
+First of all, make sure that yap is your default DVI viewer in the Windows
environment, then launch it, choose it
+\begin_inset Flex CharStyle:MenuItem
 status collapsed
 
 \begin_layout Plain Layout
-SumatraPDF -inverse-search "lyxeditor.bat -g %f %l"
+View\SpecialChar \menuseparator
+Options
 \end_layout
 
 \end_inset
 
- and then quit.
- The program will remember the setting and using the 
-\begin_inset Flex CharStyle:Code
-status collapsed
+ menu and select the 
+\begin_inset Quotes eld
+\end_inset
 
-\begin_layout Plain Layout
--inverse-search
-\end_layout
+Inverse DVI Search
+\begin_inset Quotes erd
+\end_inset
 
+ tab.
+ Click on the 
+\begin_inset Quotes eld
 \end_inset
 
- option will not be needed from now on
-\begin_inset Foot
-status collapsed
+New\SpecialChar \ldots{}
 
-\begin_layout Plain Layout
-It has been reported that SumatraPDF is not able to remember the settings
- if it is installed in the Program Files system folder.
- This problem can be avoided by installing it somewhere else, for example
- in 
+\begin_inset Quotes erd
+\end_inset
+
+ button and, in the window that opens, enter 
+\begin_inset Quotes eld
+\end_inset
+
+LyX Editor
+\begin_inset Quotes erd
+\end_inset
+
+ (or any other name you like) in the 
+\begin_inset Quotes eld
+\end_inset
+
+Name:
+\begin_inset Quotes erd
+\end_inset
+
+ field.
+ Now click on the button labeled 
+\begin_inset Quotes eld
+\end_inset
+
+\SpecialChar \ldots{}
+
+\begin_inset Quotes erd
+\end_inset
+
+ to open a file dialog and navigate to the directory containing the 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-/usr/local/bin
+lyxeditor.exe
 \end_layout
 
 \end_inset
 
-.
+ program (which is installed by default on Cygwin along with the LyX executable).
+ Select 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+lyxeditor.exe
 \end_layout
 
 \end_inset
 
- (in this way you will be using the lyxsocket; omit the 
+ and then specify the program arguments as 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
--g
+-g %f %l
 \end_layout
 
 \end_inset
 
- option if you want to use the lyxpipe and be sure that the 
+.
+ In this way, you will be using the 
+\emph on
+lyxsocket
+\emph default
+ for communicating with LyX.
+ If, for whatever reason, you want to use the 
+\emph on
+lyxpipe
+\emph default
+, omit the 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
 \begin_layout Plain Layout
-lyxeditor.sh
+-g
 \end_layout
 
 \end_inset
 
- script is in your command PATH).
- If SumatraPDF is not your default PDF viewer, you should enter 
+ option and be sure to specify the LyXServer pipe path in the LyX preferences.
+\end_layout
+
+\begin_layout Standard
+In yap, reverse search is triggered by double-click.
+\end_layout
+
+\begin_layout Subsubsection*
+SumatraPDF (Cygwin)
+\end_layout
+
+\begin_layout Standard
+In order to use SumatraPDF for inverse search, enter 
 \begin_inset Flex CharStyle:Code
 status collapsed
 
@@ -5695,12 +5804,44 @@ cd $(dirname $1)
 \begin_inset Newline newline
 \end_inset
 
-SumatraPDF.exe $(basename $1)
+SumatraPDF -inverse-search "lyxeditor -g %f %l" $(basename $1)
 \end_layout
 
 \begin_layout Standard
-This is needed because SumatraPDF is a native Windows application and does
- not understand the posix paths used by the Cygwin version of LyX.
+This wrapper script is needed because SumatraPDF is a native Windows application
+ and does not understand the posix paths used by the Cygwin version of LyX.
+ If SumatraPDF.exe is not in your command PATH, use its full posix path in
+ the script above.
+ The 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+-g
+\end_layout
+
+\end_inset
+
+ enables communication via the 
+\emph on
+lyxsocket
+\emph default
+.
+ Again, omit the 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+-g
+\end_layout
+
+\end_inset
+
+ option if you want to use the 
+\emph on
+lyxpipe
+\emph default
+, and be sure to specify the LyXServer pipe path in the LyX preferences.
 \end_layout
 
 \begin_layout Standard
@@ -7613,8 +7754,7 @@ Theorems (Order by Chapter)
 
 .
  These will number the results as 
-\begin_inset Formula $n.m
-$
+\begin_inset Formula $n.m$
 \end_inset
 
 , where the first number refers to the section (or chapter) and the second
@@ -14043,8 +14183,7 @@ Revtex
 4
 \family default
  textclass works with the American Physical Sociey's RevTeX 4.0 (the 
-\begin_inset Formula $\beta
-$
+\begin_inset Formula $\beta$
 \end_inset
 
  release of May, 1999) class.
 \end_inset
 
  instead of 
-\begin_inset Formula $\times
-$
+\begin_inset Formula $\times$
 \end_inset
 
  between numbers:
 \end_inset
 
 2x2 looks cheap compared to 
-\begin_inset Formula $2\times2
-$
+\begin_inset Formula $2\times2$
 \end_inset
 
 .
@@ -18192,7 +18329,24 @@ Control
  submenu.
  Please note that if you use password protected access to repository via
  ssh, you will be asked in terminal window.
- LyX was tested against SVN 1.4 and 1.5.
+ LyX was tested against SVN 1.5 and 1.6
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Most of the commands will work with 1.4 too, see 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:SVN-Repo-Update"
+
+\end_inset
+
+.
+\end_layout
+
+\end_inset
+
+
 \end_layout
 
 \begin_layout Subsubsection
@@ -18235,7 +18389,7 @@ Then you are asked interactively to supply an initial description of the
 \begin_layout Standard
 SVN command that is run: 
 \family typewriter
-snv add -q 
+svn add -q 
 \begin_inset Quotes eld
 \end_inset
 
@@ -18300,7 +18454,7 @@ Check Out For Edit
 \begin_layout Standard
 Updates the changes of this file from the repository.
  Be sure you understand SVN merging and conflicts resolving before using
- this function, because all conflicts has to be done manually by you!
+ this function, because all conflicts has to be resolved manually by you!
 \end_layout
 
 \begin_layout Standard
@@ -18354,6 +18508,133 @@ svn revert -q
 
 \end_layout
 
+\begin_layout Subsubsection
+\begin_inset CommandInset label
+LatexCommand label
+name "sub:SVN-Repo-Update"
+
+\end_inset
+
+Update of the local directory checkout from repository
+\begin_inset Foot
+status collapsed
+
+\begin_layout Plain Layout
+Note that this command will work only with subversion 
+\begin_inset Formula $\geqq1.5$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+All the commands above have one shortcomming - they deal with the current
+ document only.
+ Once your document contains pictures, includes external 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+.tex
+\end_layout
+
+\end_inset
+
+ 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
+
+\begin_layout Plain Layout
+One need to organize the files structure so that all external files are
+ in the same directory or subdirectories of the document.
+\end_layout
+
+\end_inset
+
+.
+ This become especially useful once you cooperate with people which neither
+ know about subversion management nor they have ambition to commit additional
+ material to the repository.
+\end_layout
+
+\begin_layout Standard
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+Update local directory from repository
+\end_layout
+
+\end_inset
+
+ command updates the whole directory and in case of merge conflicts local
+ version of the files are left, so no unintended data loss occurs.
+ If local changes are detected user is warned before update starts.
+\end_layout
+
+\begin_layout Labeling
+\labelwidthstring 00.00.0000
+SVN
+\begin_inset space ~
+\end_inset
+
+commands: 
+\begin_inset space ~
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+svn diff $path
+\end_layout
+
+\end_inset
+
+ (Ask if changes are detected.)
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+svn update --accept mine-full $path
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+where 
+\begin_inset Flex CharStyle:Code
+status collapsed
+
+\begin_layout Plain Layout
+$path
+\end_layout
+
+\end_inset
+
+ stands for the path to the document.
+\end_layout
+
 \begin_layout Subsubsection
 
 \family sans
@@ -18629,13 +18910,11 @@ $Rev: 59 $
  There are more problems with this approach.
  Firstly, the '$' character is used in TeX world for math equations, so
  any occurence of math formula 
-\begin_inset Formula $Rev
-$
+\begin_inset Formula $Rev$
 \end_inset
 
  become 
-\begin_inset Formula $Rev:59
-$
+\begin_inset Formula $Rev:59$
 \end_inset
 
  in your LyX document.
@@ -18858,6 +19137,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