]> git.lyx.org Git - lyx.git/blobdiff - src/LyXAction.cpp
Add LFUN_BRANCH_ADD_INSERT.
[lyx.git] / src / LyXAction.cpp
index 4b7e690691efc8c74fd4e9ac75c3d5d7ed487daa..0585e9e3c59310c883b9eb5f87a5646660cd385f 100644 (file)
@@ -35,7 +35,7 @@ namespace lyx {
      Here's the set of rules to apply when a new command name is introduced:
 
      1) Use the object.event order. That is, use `word-forward'
-       instead of `forward-word'.
+        instead of `forward-word'.
      2) Don't introduce an alias for an already named object. Same for events.
      3) Forward movement or focus is called `forward' (not `right').
      4) Backward movement or focus is called `backward' (not `left').
@@ -370,7 +370,7 @@ void LyXAction::init()
  * \li Action: Insert a tab into a listings inset.
  * \li Notion: It also works on a selection.
  * \li Syntax: tab-insert
- * \li Origin: vfvanravesteijn, Sep 30 2008
+ * \li Origin: vfr, Sep 30 2008
  * \endvar
  */
                { LFUN_TAB_INSERT, "tab-insert", SingleParUpdate, Edit },
@@ -380,16 +380,16 @@ void LyXAction::init()
                a listings inset.
  * \li Notion: It also works on a selection - it removes a tab or spaces from the
                beginning of each line spanned by the selection. This is useful if
-              you want to indent/unindent multiple lines in one action.
+               you want to indent/unindent multiple lines in one action.
  * \li Syntax: tab-delete
- * \li Origin: vfvanravesteijn, Sep 30 2008
+ * \li Origin: vfr, Sep 30 2008
  * \endvar
  */
                { LFUN_TAB_DELETE, "tab-delete", SingleParUpdate, Edit },
 /*!
  * \var lyx::FuncCode lyx::LFUN_QUOTE_INSERT
  * \li Action: Inserts quotes according to the type and quote-language preference.
- * \li Action: Currently  English, Swedish, German, Polish, French, Danish quotes
+ * \li Notion: Currently English, Swedish, German, Polish, French, Danish quotes
                are distinguished.
  * \li Syntax: quote-insert [<TYPE>]
  * \li Params: <TYPE>: 'single' for single quotes, otherwise double quotes will be used.
@@ -403,11 +403,19 @@ void LyXAction::init()
  * \li Notion: Apart from lfun arguments you can use the following method: \n
                1. input the type and argument of this inset, e.g. "menu paste", in
                the work area.\n
-              2. select the text and run info-insert lfun.
+               2. select the text and run info-insert lfun.
  * \li Syntax: info-insert <TYPE> <ARG>
- * \li Params: <TYPE>: shortcut|lyxrc|package|textclass|menu|buffer \n
+ * \li Params: <TYPE>: shortcut[s]|lyxrc|package|textclass|menu|buffer \n
                <ARG>: argument for a given type. Look into InsetInfo.h for detailed
-                     description.
+                      description. \n
+                     shortcut[s]: name of lfun (e.g math-insert \alpha) \n
+                     lyxrc: name of rc_entry (e.g. bind_file) \n
+                     package: name of latex package (e.g. listings) \n
+                     textclass: name of textclass (e.g. article) \n
+                     menu: name of lfun used in menu  \n
+                     icon: name of lfun used in toolbar \n
+                     buffer: "name"|"path"|"class"
+ * \li Sample: command-sequence info-insert buffer path; info-insert buffer name
  * \li Origin: bpeng, 7 Oct 2007
  * \endvar
  */
@@ -439,16 +447,16 @@ void LyXAction::init()
                class you're using has to load the character styles. There are
                a few contained in the Logical Markup module. You can also of
                course create some yourself. \n
-              For dissolving the element see #LFUN_INSET_DISSOLVE.
+               For dissolving the element see #LFUN_INSET_DISSOLVE.
  * \li Syntax: flex-insert <TYPE:Name>
  * \li Params: TYPE: CharStyle|Custom|Element|Standard \n
-                    Identifies whether this is a Character Style, a
-                    Custom Inset or an XML Element, and which dynamical 
-                    sub-menu this flex inset is in on the LyX menu tree. 
-                    If Standard (currently unused): none of these.
-              Name: This name must be defined either in your layout file
-                    or imported by some module. The definition is \n
-                    InsetLayout <TYPE:Name>
+                     Identifies whether this is a Character Style, a
+                     Custom Inset or an XML Element, and which dynamical 
+                     sub-menu this flex inset is in on the LyX menu tree. 
+                     If Standard (currently unused): none of these.\n
+               Name: This name must be defined either in your layout file
+                     or imported by some module. The definition is 
+                     InsetLayout <TYPE:Name>
  * \li Sample: flex-insert CharStyle:Code
  * \endvar
  */
@@ -514,7 +522,9 @@ void LyXAction::init()
  * \var lyx::FuncCode lyx::LFUN_INDEX_INSERT
  * \li Action: Inserts Index entry.
  * \li Notion: It automatically takes the word on the cursor position.
- * \li Syntax: index-insert
+ * \li Syntax: index-insert [<TYPE:Name>]
+ * \li Params: <TYPE:Name>: name of the index, if multiple indices are defined.
+               with an empty argument, the default index is selected.
  * \li Origin: leeming, 3 Aug 2000
  * \endvar
  */
@@ -522,7 +532,9 @@ void LyXAction::init()
 /*!
  * \var lyx::FuncCode lyx::LFUN_INDEX_PRINT
  * \li Action: Inserts list of Index entries on a new page.
- * \li Syntax: index-print
+ * \li Syntax: index-print [<TYPE:Name>]
+ * \li Params: <TYPE:Name>: name of the index, if multiple indices are defined.
+               with an empty argument, the default index is selected.
  * \li Origin: Lgb, 27 Feb 1997
  * \endvar
  */
@@ -572,6 +584,16 @@ void LyXAction::init()
  * \endvar
  */
                { LFUN_NOTES_MUTATE, "notes-mutate", Argument, Edit },
+/*!
+ * \var lyx::FuncCode lyx::LFUN_PHANTOM_INSERT
+ * \li Action: Inserts phantom on the current cursor postion,
+               move selection inside the inset.
+ * \li Syntax: phantom-insert [<TYPE>]
+ * \li Params: <TYPE>: <Phantom|HPhantom|VPhantom> default: Phantom
+ * \li Origin: uwestoehr, 30 Jan 2009
+ * \endvar
+ */
+               { LFUN_PHANTOM_INSERT, "phantom-insert", Noop, Edit },
 /*!
  * \var lyx::FuncCode lyx::LFUN_NEWLINE_INSERT
  * \li Action: Inserts a line break or new line.
@@ -581,7 +603,6 @@ void LyXAction::init()
  * \endvar
  */
                { LFUN_NEWLINE_INSERT, "newline-insert", Noop, Edit },
-
 /*!
  * \var lyx::FuncCode lyx::LFUN_ESCAPE
  * \li Action: Clears the selection. If no text is selected call #LFUN_FINISHED_FORWARD.
@@ -621,7 +642,7 @@ void LyXAction::init()
  */
                { LFUN_UP_SELECT, "up-select", ReadOnly | SingleParUpdate, Edit },
 /*!
- * \var lyx::FuncCode lyx::SCREEN_DOWN
+ * \var lyx::FuncCode lyx::LFUN_SCREEN_DOWN
  * \li Action: Moves the cursor one page in downward direction.
  * \li Syntax: screen-down
  * \endvar
@@ -669,6 +690,15 @@ void LyXAction::init()
  */
                { LFUN_SCREEN_RECENTER, "screen-recenter", ReadOnly, Edit },
 
+/*!
+ * \var lyx::FuncCode lyx::LFUN_SCREEN_SHOW_CURSOR
+ * \li Action: Repositions the screen such that the cursor is visible.
+ * \li Syntax: screen-show-cursor
+ * \li Origin: vfr, 25 Mar 2009
+ * \endvar
+ */
+               { LFUN_SCREEN_SHOW_CURSOR, "screen-show-cursor", ReadOnly, Edit },
+
 /*!
  * \var lyx::FuncCode lyx::LFUN_CHAR_BACKWARD
  * \li Action: Moves the cursor one position logically backwards.
@@ -784,7 +814,7 @@ void LyXAction::init()
 /*!
  * \var lyx::FuncCode lyx::LFUN_WORD_BACKWARD_SELECT
  * \li Action: Moves the cursor to the logically previous beginning of a word,
-                          adding the logically traversed text to the selection.
+               adding the logically traversed text to the selection.
  * \li Notion: See also #LFUN_WORD_BACKWARD.
  * \li Syntax: word-backward-select
  * \endvar
@@ -828,7 +858,7 @@ void LyXAction::init()
  * \li Syntax: word-find [<DATA>]
  * \li Params: <DATA>: data encoded from Find dialog (see #lyx::find2string()).
                        If no parameter is given, search with last find-dialog
-                      data is used for search (i.e. find-next).
+                       data is used for search (i.e. find-next).
  * \li Origin: Andre, Jan 7 2004
  * \endvar
  */
@@ -838,8 +868,8 @@ void LyXAction::init()
  * \li Action: Replace a string in the document.
  * \li Syntax: word-replace [<DATA>]
  * \li Params: <DATA>: data is of the form
-                       "<search> \n
-                        <replace> \n
+                       "<replace> \n
+                        <search> \n
                         <casesensitive> <matchword> <all> <forward>"
  * \li Origin: Andre, Jan 7 2004
  * \endvar
@@ -856,7 +886,8 @@ void LyXAction::init()
  * \endvar
  */
                { LFUN_WORD_FINDADV, "word-findadv", ReadOnly, Edit },
-/*! \var lyx::FuncCode lyx::LFUN_WORD_FORWARD
+/*!
+ * \var lyx::FuncCode lyx::LFUN_WORD_FORWARD
  * \li Action: Moves the cursor to the logically next beginning of a word.
  * \li Notion: This is not the action which should be bound to the arrow keys,
                because forward may be left or right, depending on the language.
@@ -869,7 +900,7 @@ void LyXAction::init()
 /*!
  * \var lyx::FuncCode lyx::LFUN_WORD_FORWARD_SELECT
  * \li Action: Moves the cursor to the logically next beginning of a word, 
-                          adding the logically traversed text to the selection.
+               adding the logically traversed text to the selection.
  * \li Notion: See also #LFUN_WORD_FORWARD.
  * \li Syntax: word-forward-select
  * \endvar
@@ -879,12 +910,12 @@ void LyXAction::init()
  * \var lyx::FuncCode lyx::LFUN_WORD_LEFT
  * \li Action: Moves the cursor to the next beginning of a word "on the left".
  * \li Notion: This is the action which should be taken when the (e.g., ctrl-)
-                          "left" key is pressed. Generally, it moves the cursor to the 
-                          next beginning of a word on the left. However, in Bidi text this 
-                          become slightly more complicated, and there are different modes
-                          of cursor movement. In "visual mode", this moves left, plain and
-                          simple. In "logical mode", movement is logically forward in RTL
-                          paragraphs, and logically backwards in LTR paragraphs.
+               "left" key is pressed. Generally, it moves the cursor to the 
+               next beginning of a word on the left. However, in Bidi text this 
+               become slightly more complicated, and there are different modes
+               of cursor movement. In "visual mode", this moves left, plain and
+               simple. In "logical mode", movement is logically forward in RTL
+               paragraphs, and logically backwards in LTR paragraphs.
  * \li Syntax: word-left
  * \li Origin: dov, 28 Oct 2007
  * \endvar
@@ -893,7 +924,7 @@ void LyXAction::init()
 /*!
  * \var lyx::FuncCode lyx::LFUN_WORD_LEFT_SELECT
  * \li Action: Moves the cursor to the next beginning of a word "on the left",
-                          adding *logically* traversed text to the selection.
+               adding *logically* traversed text to the selection.
  * \li Notion: See also #LFUN_WORD_LEFT for exact details of the movement.
  * \li Syntax: word-left-select
  * \li Origin: dov, 28 Oct 2007
@@ -904,13 +935,13 @@ void LyXAction::init()
  * \var lyx::FuncCode lyx::LFUN_WORD_RIGHT
  * \li Action: Moves the cursor to the next beginning of a word "on the right".
  * \li Notion: This is the action which should be taken when the (e.g., ctrl-)
-                          "right" key is pressed. Generally, it moves the cursor to the 
-                          next beginning of a word on the right. However, in Bidi text 
-                          this become slightly more complicated, and there are different
-                          modes of cursor movement. In "visual mode", this moves right,
-                          plain and simple. In "logical mode", movement is logically 
-                          forward in LTR paragraphs, and logically backwards in RTL 
-                          paragraphs.
+               "right" key is pressed. Generally, it moves the cursor to the 
+               next beginning of a word on the right. However, in Bidi text 
+               this become slightly more complicated, and there are different
+               modes of cursor movement. In "visual mode", this moves right,
+               plain and simple. In "logical mode", movement is logically 
+               forward in LTR paragraphs, and logically backwards in RTL 
+               paragraphs.
  * \li Syntax: word-right
  * \li Origin: dov, 28 Oct 2007
  * \endvar
@@ -919,7 +950,7 @@ void LyXAction::init()
 /*!
  * \var lyx::FuncCode lyx::LFUN_WORD_RIGHT_SELECT
  * \li Action: Moves the cursor to the next beginning of a word "on the right",
-                          adding *logically* traversed text to the selection.
+               adding *logically* traversed text to the selection.
  * \li Notion: See also #LFUN_WORD_RIGHT for exact details of the movement.
  * \li Syntax: word-right-select
  * \li Origin: dov, 28 Oct 2007
@@ -999,6 +1030,49 @@ void LyXAction::init()
  */
                { LFUN_BUFFER_END_SELECT, "buffer-end-select", ReadOnly, Edit },
 
+/*!
+ * \var lyx::FuncCode lyx::LFUN_INSET_BEGIN
+ * \li Action: Move the cursor to the beginning of the current inset 
+               if it is not already there, or at the beginning of the 
+               enclosing inset otherwise
+ * \li Syntax: inset-begin
+ * \li Origin: lasgouttes, 16 Mar 2009
+ * \endvar
+ */
+               { LFUN_INSET_BEGIN, "inset-begin", ReadOnly, Edit },
+/*!
+ * \var lyx::FuncCode lyx::LFUN_INSET_BEGIN_SELECT
+ * \li Action: Move the cursor to the beginning of the current inset 
+               if it is not already there, or at the beginning of the 
+               enclosing inset otherwise (adding the
+               traversed text to the selection).
+ * \li Syntax: inset-begin-select
+ * \li Origin: lasgouttes, 16 Mar 2009
+ * \endvar
+ */
+               { LFUN_INSET_BEGIN_SELECT, "inset-begin-select", ReadOnly, Edit },
+/*!
+ * \var lyx::FuncCode lyx::LFUN_INSET_END
+ * \li Action: Move the cursor to the end of the current inset 
+               if it is not already there, or at the end of the 
+               enclosing inset otherwise
+ * \li Syntax: inset-end
+ * \li Origin: lasgouttes, 16 Mar 2009
+ * \endvar
+ */
+               { LFUN_INSET_END, "inset-end", ReadOnly, Edit },
+/*!
+ * \var lyx::FuncCode lyx::LFUN_INSET_END_SELECT
+ * \li Action: Move the cursor to the end of the current inset 
+               if it is not already there, or at the end of the 
+               enclosing inset otherwise (adding the
+               traversed text to the selection).
+ * \li Syntax: inset-end-select
+ * \li Origin: lasgouttes, 16 Mar 2009
+ * \endvar
+ */
+               { LFUN_INSET_END_SELECT, "inset-end-select", ReadOnly, Edit },
+
 /*!
  * \var lyx::FuncCode lyx::LFUN_LINE_BEGIN
  * \li Action: Move the cursor to the begining of the (screen) line.
@@ -1053,9 +1127,10 @@ void LyXAction::init()
                { LFUN_CUT, "cut", Noop, Edit },
 /*!
  * \var lyx::FuncCode lyx::LFUN_PASTE
- * \li Action: Pastes material from the active clipboard.
- * \li Syntax: paste [<TYPE>]
- * \li Params: <TYPE>: pdf|png|jpeg|linkback
+ * \li Action: Pastes material (text or picture) from the active clipboard.
+ * \li Syntax: paste [<TYPE>|<NUM>]
+ * \li Params: <TYPE>: emf|pdf|png|jpeg|linkback|wmf \n
+               <NUM>: number of the selection in the internal clipboard stack to be pasted.
  * \endvar
  */
                { LFUN_PASTE, "paste", Noop, Edit },
@@ -1077,6 +1152,13 @@ void LyXAction::init()
  * \endvar
  */
                { LFUN_PRIMARY_SELECTION_PASTE, "primary-selection-paste", Noop, Edit },
+/*!
+ * \var lyx::FuncCode lyx::LFUN_SELECTION_PASTE
+ * \li Action: Pastes the text in permanent selection.
+ * \li Syntax: selection-paste
+ * \endvar
+ */
+               { LFUN_SELECTION_PASTE, "selection-paste", Noop, Edit },
 /*!
  * \var lyx::FuncCode lyx::LFUN_UNDO
  * \li Action: Undoes the last edit.
@@ -1095,7 +1177,7 @@ void LyXAction::init()
  * \var lyx::FuncCode lyx::LFUN_REPEAT
  * \li Action: Repeat the given command.
  * \li Syntax: repeat <COUNT> <LFUN-COMMAND>
- * \li Origin: Andre, 27 Oct 2003
+ * \li Origin: Andre, 27 Oct 2003
  * \endvar
  */
                { LFUN_REPEAT, "repeat", NoBuffer, Edit },
@@ -1154,6 +1236,30 @@ void LyXAction::init()
  * \endvar
  */
                { LFUN_FONT_UNDERLINE, "font-underline", Noop, Layout },
+/*!
+ * \var lyx::FuncCode lyx::LFUN_FONT_UULINE
+ * \li Action: Toggles double underline in the font (selection-wise).
+ * \li Syntax: font-underunderline
+ * \li Origin: sanda, 5 May 2009
+ * \endvar
+ */
+               { LFUN_FONT_UULINE, "font-underunderline", Noop, Layout },
+/*!
+ * \var lyx::FuncCode lyx::LFUN_FONT_UWAVE
+ * \li Action: Toggles wavy underline in the font (selection-wise).
+ * \li Syntax: font-underwave
+ * \li Origin: sanda, 5 May 2009
+ * \endvar
+ */
+               { LFUN_FONT_UWAVE, "font-underwave", Noop, Layout },
+/*!
+ * \var lyx::FuncCode lyx::LFUN_FONT_STRIKEOUT
+ * \li Action: Toggles strikeout (strike-through) in the font (selection-wise).
+ * \li Syntax: font-strikeout
+ * \li Origin: sanda, 3 May 2009
+ * \endvar
+ */
+               { LFUN_FONT_STRIKEOUT, "font-strikeout", Noop, Layout },
 /*!
  * \var lyx::FuncCode lyx::LFUN_FONT_EMPH
  * \li Action: Toggles the emphasis font style (selection-wise).
@@ -1230,9 +1336,9 @@ void LyXAction::init()
  * \li Syntax: textstyle-update <FONT_INFO>
  * \li Params: <FONT_INFO>: specifies font atributes, e.g. family, series, shape,
                             size, emph, noun, underbar, number, color, language,
-                           toggleall.\n
-                           Use lyx -dbg action for exact syntax of text-style
-                           dialog parameters.
+                            toggleall.\n
+                            Use lyx -dbg action for exact syntax of text-style
+                            dialog parameters.
  * \li Origin: leeming, 12 Mar 2003
  * \endvar
  */
@@ -1390,7 +1496,7 @@ void LyXAction::init()
  * \endvar
  */
                { LFUN_MARK_TOGGLE, "mark-toggle", ReadOnly, Edit },
-               
+
 /*!
  * \var lyx::FuncCode lyx::LFUN_MATH_DELIM
  * \li Action: Inserts math delimiters (e.g. parentheses, brackets) enclosing expression.
@@ -1430,6 +1536,14 @@ void LyXAction::init()
  * \li Action: Inserts math objects and symbols.
  * \li Syntax: math-insert <ARG>
  * \li Params: <ARG>: Symbol or LaTeX code to be inserted.
+ * \li Notion: When <ARG> is a _single_ math inset with more than one cell
+               (such as "x_y^z" or "\frac{x}{y}"), the content of cell(0) is
+               replaced by the current selection (only works if the selection
+               is in mathed). As an example, if "abc" is selected in mathed,
+               "math-insert \frac{x}{y}" replaces "abc" with "\frac{abc}{y}",
+               and "math-insert x_y^z" replaces "abc" with "abc_y^z".
+               If nothing is selected (or the selection is not in mathed),
+               math-insert works as expected.
  * \endvar
  */
                { LFUN_MATH_INSERT, "math-insert", Noop, Math },
@@ -1464,7 +1578,7 @@ void LyXAction::init()
  * \var lyx::FuncCode lyx::LFUN_MATH_MACRO
  * \li Action: Inserts a math macro definition at the cursor position in the text.
  * \li Syntax: math-macro <NAME> [<NARGS>] [def]
- * \li Params: <NAME>: The name of the macro, e.g. "mymacro".
+ * \li Params: <NAME>: The name of the macro, e.g. "mymacro".\n
                <NARGS>: The number of parameters of the macro. Default is 0.
                "def": Has no effect anymore, just for compatibility with former LyX versions.
  * \li Origin: ale, 10 May 1997;  sts, 21 Dec 2007
@@ -1485,10 +1599,14 @@ void LyXAction::init()
  * \var lyx::FuncCode lyx::LFUN_MATH_SPACE
  * \li Action: Inserts space into math expression.
  * \li Notion: Use spacebar after entering this space to change type of space.
- * \li Syntax: math-space [<TYPE>]
- * \li Params: <TYPE>: negative spaces: !|negmedspace|negthickspace \n
-                       positive spaces: ,|:|;|quad|qquad \n
-                       "," used by default.
+ * \li Syntax: math-space [<TYPE>] [<LEN>]
+ * \li Params: <TYPE>: negative spaces: !|negthinspace|negmedspace|negthickspace \n
+                       positive spaces: ,|thinspace|:|medspace|;|thickspace|enskip|quad|qquad \n
+                       custom space: hspace \n
+                       "," used by default.\n
+                       Note that ! is equivalent to negthinspace, , = thinspace,
+                       : = medspace, and ; = thickspace.\n
+               <LEN>: length for custom spaces (hspace)
  * \li Origin: Andre, 25 Jul 2001; sanda, 16 Jun 2008
  * \endvar
  */
@@ -1499,7 +1617,7 @@ void LyXAction::init()
  * \li Syntax: math-matrix <COLS> <ROWS> [<ALIGN>]
  * \li Params: <ALIGN>: Alignment is a word composed of the vertical alignment
                         (b, c or t) (i.e. 1 char) and the horizontal alignments 
-                       (l, c or r) (i.e. <COL> chars).
+                        (l, c or r) (i.e. <COL> chars).
  * \li Sample: math-matrix 3 3 bccc
  * \endvar
  */
@@ -1509,12 +1627,25 @@ void LyXAction::init()
  * \li Action: In text mode enters math mode (i.e. puts math insets on the current
                cursor position), in math mode enters text mode inside math expression.
  * \li Notion: If there is some selected text, it puts the text inside created math box.
- * \li Syntax: math-mode [<ARG>]
- * \li Params: <ARG>: eventual argument (LaTeX code) is passed to #LFUN_MATH_INSERT .
+ * \li Syntax: math-mode [on|<ARG>]
+ * \li Params: <ARG>: eventual argument (LaTeX code) is passed to #LFUN_MATH_INSERT .\n
+                "on": allow only entering of math mode from text mode.
  * \li Origin: Alejandro, 4 Jun 1996
  * \endvar
  */
                { LFUN_MATH_MODE, "math-mode", Noop, Math },
+/*!
+ * \var lyx::FuncCode lyx::LFUN_REGEXP_MODE
+ * \li Action: Enters regexp mode (i.e., puts regexp insets on the current
+               cursor position). Used by the advanced search dialog.
+ * \li Notion: If there is any selected text, then it is moved inside the created
+               regexp inset.
+ * \li Syntax: regexp-mode [<ARG>]
+ * \li Params: <ARG>: eventual argument (regular expression).
+ * \li Origin: Tommaso, 4 Oct 2008
+ * \endvar
+ */
+               { LFUN_REGEXP_MODE, "regexp-mode", Noop, Math },
 /*!
  * \var lyx::FuncCode lyx::LFUN_MATH_NUMBER_LINE_TOGGLE
  * \li Action: Toggles numbering of the current formula line.
@@ -1554,10 +1685,21 @@ void LyXAction::init()
  * \li Notion: Provides an interface to the LaTeX math mode font size commands.
  * \li Syntax: math-size <STYLE>
  * \li Params: <STYLE>: \displaystyle|\textstyle|\scriptstyle|\scriptscriptstyle
- * \li Origin: Alejandro, 15 Aug 1996; ps, 14 Jun 2008
+ * \li Origin: Alejandro, 15 Aug 1996; sanda, 14 Jun 2008
  * \endvar
  */
                { LFUN_MATH_SIZE, "math-size", Noop, Math },
+/*!
+ * \var lyx::FuncCode lyx::LFUN_MATH_FONT_STYLE
+ * \li Action: Changes the text style used in math.
+ * \li Syntax: math-font-style <STYLE>
+ * \li Params: <STYLE>: mathnormal|mathcal|mathfrak|mathrm|mathsf|mathbf
+               |textnormal|textrm|textsf|texttt|textbf|textmd|textit
+               |textsc|textsl|textup
+ * \li Origin: vfr, 9 jan 2009
+ * \endvar
+ */
+               { LFUN_MATH_FONT_STYLE, "math-font-style", Noop, Math },
 /*!
  * \var lyx::FuncCode lyx::LFUN_MATH_MACRO_UNFOLD
  * \li Action: Unfold a Math Macro.
@@ -1781,10 +1923,10 @@ void LyXAction::init()
                This function only modifies, and does not override, existing settings.
                Note that the "leftindent" indent setting is deprecated.
  * \li Syntax: paragraph-params [<INDENT>] [<SPACING>] [<ALIGN>] [<OTHERS>]
- * \li Params: <INDENT>:  \\noindent|\\indent|\\indent-toggle|\\leftindent LENGTH\n
-               <SPACING>: \\paragraph_spacing default|single|onehalf|double|other\n
-               <ALIGN>:   \\align block|left|right|center|default\n
-               <OTHERS>:  \\labelwidthstring WIDTH|\\start_of_appendix\n
+ * \li Params: <INDENT>:  \noindent|\indent|\indent-toggle|\leftindent LENGTH\n
+               <SPACING>: \paragraph_spacing default|single|onehalf|double|other\n
+               <ALIGN>:   \align block|left|right|center|default\n
+               <OTHERS>:  \labelwidthstring WIDTH|\start_of_appendix
  * \li Origin: rgh, Aug 15 2007
  * \endvar
  */
@@ -1852,16 +1994,37 @@ void LyXAction::init()
  * \endvar
  */
                { LFUN_OUTLINE_OUT, "outline-out", Noop, Edit },
+               
+/*!
+ * \var lyx::FuncCode lyx::LFUN_OUTLINE_DRAGMOVE
+ * \li Action: Moves the document section associated with the specified
+               heading to a specified location. Both the heading and the
+               target paragraph are specified by the paragraph ID numbers.
+ * \li Notion: The heading is a paragraph with style Part/Chapter/Section/
+               etc. Id number of the paragraph is not the sequential number
+               seen on the screen, but an internal number that is unique
+               for all opened buffers (documents).
+ * \li Syntax: outline-dragmove <PAR_ID_SECTION> <PAR_ID_DROP_POSITION>
+ * \li Params: <PAR_ID_SECTION>: paragraph id of the section heading which
+                                 is to be moved. \n
+               <PAR_ID_DROP_POSITION>: the paragraph id where the section
+                                       will be moved to.
+ * \li Origin: Rob Oakes, 22 June 2009
+ * \endvar
+ */
+               { LFUN_OUTLINE_DRAGMOVE, "outline-dragmove", Noop, Edit },
+
 /*!
  * \var lyx::FuncCode lyx::LFUN_INSET_EDIT
  * \li Action: Edit the inset at cursor with an external application,
*             if one is attributed.
              if one is attributed.
  * \li Syntax: inset-edit [<INSET_PARAMS>]
  * \li Params: <INSET_PARAMS>: Parameters for the inset. \n
                                Currently only the filename will be considered.
  * \li Origin: JSpitzm, 27 Apr 2006
  * \endvar
  */
                { LFUN_INSET_EDIT, "inset-edit", ReadOnly, Edit },
 
 /*!
@@ -1877,7 +2040,7 @@ void LyXAction::init()
  * \var lyx::FuncCode lyx::LFUN_TABULAR_FEATURE
  * \li Action: Sets various features to the table/cell on the current cursor position.
  * \li Notion: Various math-environment features are handled here as well, e.g.
-               add-vline-left/right for Grid/Cases environment
+               add-vline-left/right for the Grid/Array environment
  * \li Syntax: tabular-feature <FEATURE> [<ARG>]
  * \li Params: <FEATURE>: append-row|append-column|delete-row|delete-column|copy-row|copy-column|
                        toggle-line-top|toggle-line-bottom|toggle-line-left|toggle-line-right|
@@ -1890,8 +2053,9 @@ void LyXAction::init()
                        unset-lthead|set-ltfirsthead|unset-ltfirsthead|set-ltfoot|unset-ltfoot|
                        set-ltlastfoot|unset-ltlastfoot|set-ltnewpage|toggle-ltcaption|
                        set-special-column|set-special-multi|set-booktabs|unset-booktabs|
-                       set-top-space|set-bottom-space|set-interline-space|set-border-lines \n
-               <ARG>: additional argument for some commands, use debug mode to explore its values.
+                       set-top-space|set-bottom-space|set-interline-space|set-border-lines|
+                       tabular-valign-top|tabular-valign-middle|tabular-valign-bottom \n
+               <ARG>: additional argument for some commands, use debug mode to explore its values.
  * \li Origin: Jug, 28 Jul 2000
  * \endvar
  */
@@ -1925,8 +2089,8 @@ void LyXAction::init()
  * \li Action: Register the document as an file inside version control system (RCS, CVS).
  * \li Notion: File is registered inside cvs, svn or rcs repository acording to the existence
                of cvs/svn/rcs entries in the document's directory. \n
-              See LyX Additional Features Manual (Version Control Chapter) for additional
-              information.
+               See LyX Additional Features Manual (Version Control Chapter) for additional
+               information.
  * \li Syntax: vc-register
  * \li Origin: Lgb, 1 Jul 1997
  * \endvar
@@ -1967,6 +2131,33 @@ void LyXAction::init()
  * \endvar
  */
                { LFUN_VC_UNDO_LAST, "vc-undo-last", ReadOnly, System },
+/*!
+ * \var lyx::FuncCode lyx::LFUN_VC_COMMAND
+ * \li Action: Executes external command. This command is intended to support
+               additional VCS commands.
+ * \li Syntax: vc-command <FLAG> <PATH> <COMMAND>
+ * \li Params:  <FLAG>: Flags for the command can be combined together.\n
+                        U - dUmmy - no flags \n
+                        D - Doc - need document loaded to proceed \n
+                        I - dIrty - mark document dirty \n
+                        R - Reload - ensure that the document is saved and reload it after command execution \n
+                        M - Message - ask for input string (commit message)\n
+                <PATH>: path where to start. $$p will be replaced by the current document path.\n
+                <COMMAND>: command to execute. $$i/$$p/$$m will be replaced by the current document/path/message.
+ * \li Sample: vc-command DR $$p "svn up"
+ * \li Origin: sanda, 13 Jan 2009
+ * \endvar
+ */
+               { LFUN_VC_COMMAND, "vc-command", NoBuffer | ReadOnly, System },
+/*!
+ * \var lyx::FuncCode lyx::LFUN_VC_LOCKING_TOGGLE
+ * \li Action: Toggles the locking property of the edited file.
+ * \li Notion: This is currently implemented only for SVN.
+ * \li Syntax: vc-locking-toggle
+ * \li Origin: sanda, 25 Jun 2009
+ * \endvar
+ */
+               { LFUN_VC_LOCKING_TOGGLE, "vc-locking-toggle", ReadOnly, System },
 
 /*!
  * \var lyx::FuncCode lyx::LFUN_CHANGES_TRACK
@@ -1993,6 +2184,15 @@ void LyXAction::init()
  * \endvar
  */
                { LFUN_CHANGE_NEXT, "change-next", ReadOnly, Edit },
+/*!
+ * \var lyx::FuncCode lyx::LFUN_CHANGE_PREVIOUS
+ * \li Action: Moves the cursor to the position of the previous change
+               of the change tracking records.
+ * \li Syntax: change-previous
+ * \li Origin: vfr, 4 Apr 2009
+ * \endvar
+ */
+               { LFUN_CHANGE_PREVIOUS, "change-previous", ReadOnly, Edit },
 /*!
  * \var lyx::FuncCode lyx::LFUN_CHANGES_MERGE
  * \li Action: Open change tracking dialog for merging and moves the cursor
@@ -2055,7 +2255,7 @@ void LyXAction::init()
                         is dissolved. For example "dissolve" entry in the charstyles
                         sub-menu should only dissolve the charstyle inset, even if the
                         cursor is inside several nested insets of different type.\n
-                       For values see #lyx::InsetLayout::lyxtype_ .
+                        For values see #lyx::InsetLayout::lyxtype_ .
  * \li Origin: JSpitz, 7 Aug 2006
  * \endvar
  */
@@ -2066,16 +2266,15 @@ void LyXAction::init()
  * \li Syntax: inset-insert <INSET> <ARGS>
  * \li Params: <INSET>: <bibitem|bibtex|cite|ert|listings|external|graphics|
                          hyperlink|include|index|label|nomencl|vspace|ref|toc>\n
-               <ARGS>: depends on the given inset. Use "lyx -dbg action" to
-                      explore.
+               <ARGS>: depends on the given inset. Use "lyx -dbg action" to explore.
  * \li Sample: inset-insert ref LatexCommand <Format> reference "<label name>"\end_inset \n
                where <label name> is the name of the referenced label and
-              <Format> is one of the following: \n
-              ref -- <reference> \n
-              eqref -- (<reference>) \n
-              pageref -- <page> \n
+               <Format> is one of the following: \n
+               ref -- <reference> \n
+               eqref -- (<reference>) \n
+               pageref -- <page> \n
                vpageref -- on <page> \n
-              vref -- <reference> on <page> \n
+               vref -- <reference> on <page> \n
                prettyref -- Formatted reference
  * \endvar
  */
@@ -2083,9 +2282,9 @@ void LyXAction::init()
 /*!
  * \var lyx::FuncCode lyx::LFUN_INSET_MODIFY
  * \li Action: Modify existing inset.
- * \li Notion: Used for label, floats, listings, box, branch, external, wrap
-               bibtex, ert, command, graphics, note, space, vspace, tabular,
-               bibitem, inlude, ref insets.
+ * \li Notion: Used for bibitem, bibtex, box, branch, command, ert, external,
+                        floats, graphics, include, label, listings, note,
+                        phantom, ref, space, tabular, vspace, wrap insets.
  * \li Syntax: inset-modify <INSET> <ARGS>
  * \li Params: See #LFUN_INSET_INSERT for further details.
  * \endvar
@@ -2094,16 +2293,16 @@ void LyXAction::init()
 /*!
  * \var lyx::FuncCode lyx::LFUN_NEXT_INSET_MODIFY
  * \li Action: Modify the inset at cursor position, if there is one.
- * \li Notion: Used for label, floats, listings, box, branch, external, wrap
-               bibtex, ert, command, graphics, note, space, vspace, tabular,
-               bibitem, inlude, ref insets.
+ * \li Notion: Used for bibitem, bibtex, box, branch, command, ert, external,
+                        floats, graphics, include, label, listings, note,
+                        phantom, ref, space, tabular, vspace, wrap insets.
  * \li Syntax: next-inset-modify <INSET> <ARGS>
  * \li Syntax: next-inset-modify changetype <TYPE>
  * \li Params: See #LFUN_INSET_INSERT for further details.
  * \li Origin: JSpitzm, 23 Mar 2008
  * \endvar
  */
-               { LFUN_NEXT_INSET_MODIFY, "next-inset-modify", ReadOnly, Edit },
+               { LFUN_NEXT_INSET_MODIFY, "next-inset-modify", Noop, Edit },
 /*!
  * \var lyx::FuncCode lyx::LFUN_INSET_DIALOG_UPDATE
  * \li Action: Updates the values inside the dialog from the inset.
@@ -2117,44 +2316,35 @@ void LyXAction::init()
 /*!
  * \var lyx::FuncCode lyx::LFUN_INSET_SETTINGS
  * \li Action: Open the inset's properties dialog.
- * \li Notion: Used for box, branch, ert, float, listings, note, tabular, wrap insets.
+ * \li Notion: Used for bibitem, bibtex, box, branch, citation, ert, external,
+               float, graphics, href, include, index, index_print, label, listings,
+               note, phantom, ref, space, tabular, vspace, wrap insets.
  * \li Syntax: inset-settings <INSET>
- * \li Params: <INSET>: <box|branch|ert|float|listings|note|tabular|wrap>
+ * \li Params: <INSET>: <bibitem|bibtex|box|branch|citation|ert|external|float|
+                         graphics|href|include|index|index_print|label|listings|
+                         note|phantom|ref|space|tabular|vspace|wrap>.
  * \endvar
  */
-               { LFUN_INSET_SETTINGS, "inset-settings", ReadOnly, Edit },
-/*!
- * \var lyx::FuncCode lyx::LFUN_NEXT_INSET_TOGGLE
- * \li Action: Toggles the inset at cursor position. For collapsables, this means it will
-               be (un-)collapsed, in case of other insets, the editing widget (dialog) will
-               be entered. Also cf. #LFUN_INSET_SETTINGS.
- * \li Notion: Used for label, floats, listings, box, branch, external, wrap
-               bibtex, ert, command, graphics, note, space, vspace, tabular,
-               bibitem, inlude, ref insets.
- * \li Syntax: next-inset-toggle <ARG>
- * \li Params: <ARG>: these are passed as arguments to #LFUN_INSET_TOGGLE .
- * \li Origin: leeming, 30 Mar 2004
- * \endvar
- */
-               { LFUN_NEXT_INSET_TOGGLE, "next-inset-toggle", ReadOnly, Edit },
+               { LFUN_INSET_SETTINGS, "inset-settings", ReadOnly | AtPoint, Edit },
 /*!
  * \var lyx::FuncCode lyx::LFUN_INSET_TOGGLE
- * \li Action: Toggles the collapsable inset we are currently in.
+ * \li Action: Toggles the collapsable inset at cursor position,
+               or the inset we are currently in.
  * \li Syntax: inset-toggle [<ARG>]
  * \li Params: <ARG>: <open|close|toggle|assign>. \n
-               open/close/toggle are for collapsable insets. close can be currently used
-               by #LFUN_NEXT_INSET_TOGGLE. toggle is used when no argument is given.\n
-               assign is for branch inset.
+               open/close/toggle are for collapsable insets. toggle is used when no argument is given.\n
+               assign synchronize the branch-inset with activation status of the branch.
+               Used for global toggling when changed activation.
  * \li Origin: lasgouttes, 19 Jul 2001
  * \endvar
  */
-               { LFUN_INSET_TOGGLE, "inset-toggle", ReadOnly, Hidden },
+               { LFUN_INSET_TOGGLE, "inset-toggle", ReadOnly | AtPoint, Edit },
 /*!
  * \var lyx::FuncCode lyx::LFUN_ALL_INSETS_TOGGLE
  * \li Action: Toggles (open/closes) all collapsable insets (of a given type) in the document.
  * \li Notion: Used for box, branch, ert, float, listings, note, tabular, wrap insets.
- * \li Syntax: all-insets-toggle <STATE> <INSET>
- * \li Params: <STATE>: <toggle|open|close> default: toggle \n
+ * \li Syntax: all-insets-toggle [<STATE>] [<INSET>]
+ * \li Params: <STATE>: <toggle|open|close|assign> default: toggle \n
                <INSET>: <box|branch|ert|float|listings|note|tabular|wrap> default: all insets
  * \li Origin: leeming, 30 Mar 2004
  * \endvar
@@ -2220,9 +2410,9 @@ void LyXAction::init()
  * \var lyx::FuncCode lyx::LFUN_LABEL_GOTO
  * \li Action: Goto a label.
  * \li Syntax: label-goto [<LABEL>]
- * \li Params: <LABEL>: Requested label. If no label is given and refernce
-                       is on cursor position, Bookmark 0 is saved and
-                       cursor moves to the position of referenced label.
+ * \li Params: <LABEL>: Requested label. If no label is given and reference
+                        is on cursor position, Bookmark 0 is saved and
+                        cursor moves to the position of referenced label.
  * \li Origin: Ale, 6 Aug 1997
  * \endvar
  */
@@ -2247,10 +2437,15 @@ void LyXAction::init()
 
 /*!
  * \var lyx::FuncCode lyx::LFUN_BOOKMARK_GOTO
- * \li Action: Goto a bookmark.
- * \li Notion: Moves the cursor to the numbered bookmark, opening the file
+ * \li Action: Moves the cursor to the numbered bookmark, opening the file
                if necessary. Note that bookmarsk are saved per-session, not
                per file.
+ * \li Notion: Bookmark 0 has a special purpose. It is automatically set \n
+               1. to the paragraph you are currently editing \n
+               2. to the paragraph from where you are jumping to the last-edited
+                  position (jump-back feature) \n
+               3. when jumping from crossreference to the requested label by
+                  #LFUN_LABEL_GOTO.
  * \li Syntax: bookmark-goto <NUMBER>
  * \li Params: <NUMBER>: the number of the bookmark to restore.
  * \li Origin: Dekel, 27 January 2001
@@ -2318,21 +2513,21 @@ void LyXAction::init()
 /*!
  * \var lyx::FuncCode lyx::LFUN_UI_TOGGLE
  * \li Action: Various UI visibility-toggling actions.
- * \li Syntax: ui-toggle <statusbar|menubar|frame|fullscreen>
+ * \li Syntax: ui-toggle <statusbar|menubar|scrollbar|frame|fullscreen>
  * \li Params: statusbar  : Toggle visibility of the statusbar.\n
                menubar    : Toggle visibility of the menubar.\n
-              scrollbar  : Toggle visibility of the scrollbar.\n
-              frame      : Toggle visibility of the frames around editing window.\n
-              fullscreen : Toggle fullscreen mode. This also covers calling the
-                           previous functions. However #LFUN_TOOLBAR_TOGGLE for the
-                           custom tweaks of the toolbars should be used.
+               scrollbar  : Toggle visibility of the scrollbar.\n
+               frame      : Toggle visibility of the frames around editing window.\n
+               fullscreen : Toggle fullscreen mode. This also covers calling the
+                            previous functions. However #LFUN_TOOLBAR_TOGGLE for the
+                            custom tweaks of the toolbars should be used.
  * \li Origin: sanda, 9 Feb 2007
  * \endvar
  */
                { LFUN_UI_TOGGLE, "ui-toggle", NoBuffer, Buffer },
 
 /*!
- * \var lyx::FuncCode lyx::WINDOW_NEW
+ * \var lyx::FuncCode lyx::LFUN_WINDOW_NEW
  * \li Action: Creates new empty LyX window.
  * \li Notion: Already opened documents from the previous window can be found under View menu.
  * \li Syntax: window-new [<GEOMETRY>]
@@ -2378,11 +2573,11 @@ void LyXAction::init()
  * \li Action: Shows hidden dialog or create new one for a given function/inset settings etc.
  * \li Syntax: dialog-show <NAME> [<DATA>]
  * \li Params: <NAME>: aboutlyx|bibitem|bibtex|box|branch|changes|character|citation|\n
-               document|errorlist|ert|external|file|findreplace|float|graphics|\n
-               include|index|info|nomenclature|label|log|mathdelimiter|mathmatrix|\n
-               note|paragraph|prefs|print|ref|sendto|space|spellchecker|symbols|\n
-               tabular|tabularcreate|thesaurus|texinfo|toc|href|view-source|vspace\n
-               wrap|listings|<SPECIAL> \n
+               document|errorlist|ert|external|file|findreplace|findreplaceadv|float|graphics|\n
+               href|include|index|index_print|info|label|listings|log|mathdelimiter|\n
+               mathmatrix|mathspace|nomenclature|nomencl_print|note|paragraph|phantom|prefs|\n
+               print|ref|sendto|space|spellchecker|symbols|tabular|tabularcreate|\n
+               thesaurus|texinfo|toc|view-source|vspace|wrap|<SPECIAL> \n
                <SPECIAL>: latexlog|vclog \n
                <DATA>: data, usually settings for the given dialog. Use debug mode for the
                        details.
@@ -2537,7 +2732,17 @@ void LyXAction::init()
 /*!
  * \var lyx::FuncCode lyx::LFUN_SERVER_GOTO_FILE_ROW
  * \li Action: Sets the cursor position based on the row number of generated TeX file.
- * \li Syntax: server-goto-file-row <LYX_FILE_NAME> <ROW_NUMBER>
+ * \li Notion: This can be useful for DVI inverse-search or detection of the problematic
+               line from LaTeX compilation. Note that before this function can be used
+               export to LaTeX output must occur (in order to map the row numbers).
+ * \li Syntax: server-goto-file-row <FILE[.ext]> <ROW_NUMBER>
+ * \li Params: <FILE>: the filename. Environment variables are expaned in the path.
+                       In case this LFUN does not work make sure you are giving correct
+                       path to the file.\n
+                       If the file is located inside LyX temporary directory it will be
+                       mapped back into the appropriate opened buffer (e.g. for the case
+                       of generated .tex file).
+                 .ext: extensions will be automatically replaced by .lyx.
  * \li Origin: Edmar, 23 Dec 1998
  * \endvar
  */
@@ -2572,12 +2777,12 @@ void LyXAction::init()
  * \li Action: Generates the code (literate programming).
  * \li Notion: Latex file with extension \literate_extension is generated.
                Then LyX invokes \build_command (with a default of``make'') to generate the code and
-              \build_error_filter to process the compilation error messages. \n
-              In case you want to process your literate file with a script, or some other program,
-              just insert in your lyxrc file an entry with:\n
-              \build_command "my_script my_arguments" \n
-              The \build_error_filter differs from the \literate_error_filter only in that the
-              former will identify error messages from your compiler.
+               \build_error_filter to process the compilation error messages. \n
+               In case you want to process your literate file with a script, or some other program,
+               just insert in your lyxrc file an entry with:\n
+               \build_command "my_script my_arguments" \n
+               The \build_error_filter differs from the \literate_error_filter only in that the
+               former will identify error messages from your compiler.
  * \li Syntax: build-program
  * \endvar
  */
@@ -2633,12 +2838,12 @@ void LyXAction::init()
  * \li Syntax: buffer-export <FORMAT>
  * \li Params: <FORMAT> is either "custom" or one of the formats which you
                         can find in Tools->Preferences->File formats->Format.
-                       Usual format you will enter is "pdf2" (pdflatex),
-                       "pdflatex" (plain tex for pdflatex) or "ps" for postscript.\n
-                       In case of "custom" you will be asked for a format you
-                       want to start from and for the command that you want to
-                       apply to this format. Internally the control is then passed
-                       to #LFUN_BUFFER_EXPORT_CUSTOM.
+                        Usual format you will enter is "pdf2" (pdflatex),
+                        "pdflatex" (plain tex for pdflatex) or "ps" for postscript.\n
+                        In case of "custom" you will be asked for a format you
+                        want to start from and for the command that you want to
+                        apply to this format. Internally the control is then passed
+                        to #LFUN_BUFFER_EXPORT_CUSTOM.
  * \li Origin: Lgb, 29 Jul 1997
  * \endvar
  */
@@ -2651,7 +2856,7 @@ void LyXAction::init()
  * \li Params: <FORMAT> format to start from (LyX will care to produce such
                         intermediate file).\n
                <COMMAND> this command will be launched on the file. Note that you can
-              use "$$FName" string to qualify the intermediate file.
+                         use "$$FName" string to qualify the intermediate file.
  * \li Sample: buffer-export-custom dvi dvips -f $$FName -o myfile.ps
  * \li Origin: leeming, 27 Mar 2004
  * \endvar
@@ -2664,7 +2869,7 @@ void LyXAction::init()
  * \li Syntax: buffer-print <TARGET> <TARGET-NAME> <COMMAND>
  * \li Params: <TARGET> is either "printer" or "file".\n
                <TARGER-NAME> is either "default" or file name or printer name.\n
-              <COMMAND> command ensuring the printing job.
+               <COMMAND> command ensuring the printing job.
  * \li Sample: buffer-print file "/trash/newfile1.ps" "dvips"
  * \li Origin: leeming, 28 Mar 2004
  * \endvar
@@ -2675,7 +2880,7 @@ void LyXAction::init()
  * \li Action: Import a given file as a lyx document.
  * \li Notion: File can be imported iff lyx file format is (transitively) reachable via
                defined convertors in preferences. Look into File->Import menu to get
-              an idea of the currently active import formats.
+               an idea of the currently active import formats.
  * \li Syntax: buffer-import <FORMAT> [<FILE>]
  * \li Origin: Asger, 24 Jul 1998
  * \endvar
@@ -2723,7 +2928,7 @@ void LyXAction::init()
  * \li Action: Toggle editing mode of the current document between read/write and read-only.
  * \li Notion: In the ->Readonly mode checks-in/commits the data if the file is under version control.
                In the Readonly-> mode checkouts the data from repository. \n
-              If these operations fail, buffer won't be toggled.
+               If these operations fail, buffer won't be toggled.
  * \li Syntax: buffer-toggle-read-only
  * \li Origin: Lgb, 27 May 1997
  * \endvar
@@ -2735,10 +2940,12 @@ void LyXAction::init()
  * \li Notion: Displays the contents of the current buffer in the chosen
                format, for example, PDF or DVI. This runs the necessary
                converter, calls the defined viewer, and so forth.
- * \li Syntax: buffer-view <FORMAT>
+ * \li Syntax: buffer-view [<FORMAT>]
  * \li Params: <FORMAT>: The format to display, where this is one of the
                          formats defined (in the current GUI) in the
                          Tools>Preferences>File Formats dialog.
+                         If no format is given, the default format as
+                         specified in the same dialog is used.
  * \endvar
  */
                { LFUN_BUFFER_VIEW, "buffer-view", ReadOnly, Buffer },
@@ -2748,11 +2955,13 @@ void LyXAction::init()
                temporary directory.
  * \li Notion: In case you are already viewing the exported document (see #LFUN_BUFFER_VIEW)
                the output will be rewriten - updated. This is useful in case your viewer
-              is able to detect such changes (e.g. ghostview for postscript).
- * \li Syntax: buffer-update <FORMAT>
+               is able to detect such changes (e.g. ghostview for postscript).
+ * \li Syntax: buffer-update [<FORMAT>]
  * \li Params: <FORMAT>: The format to display, where this is one of the
                          formats defined (in the current GUI) in the
                          Tools>Preferences>File Formats dialog.
+                         If no format is given, the default format as
+                         specified in the same dialog is used.
  * \li Origin: Dekel, 5 Aug 2000
  * \endvar
  */
@@ -2804,9 +3013,13 @@ void LyXAction::init()
 /*!
  * \var lyx::FuncCode lyx::LFUN_MASTER_BUFFER_UPDATE
  * \li Action: When run from a child document, this updates (exports) document built
-                from the master buffer. If a master is not found, it updates the
-                current buffer.
- * \li Syntax: master-buffer-update
+               from the master buffer, if available.
+ * \li Syntax: master-buffer-update [<FORMAT>]
+ * \li Params: <FORMAT>: The format to display, where this is one of the
+                         formats defined (in the current GUI) in the
+                         Tools>Preferences>File Formats dialog.
+                         If no format is given, the default format as
+                         specified in the same dialog is used.
  * \li Origin: Tommaso, 20 Sep 2007
  * \endvar
  */
@@ -2814,9 +3027,13 @@ void LyXAction::init()
 /*!
  * \var lyx::FuncCode lyx::LFUN_MASTER_BUFFER_VIEW
  * \li Action: When run from a child document, this command shows a preview built
-               from the master buffer. If a master is not found, it previews the
-              current buffer.
- * \li Syntax: master-buffer-view
+               from the master buffer, if available.
+ * \li Syntax: master-buffer-view [<FORMAT>]
+ * \li Params: <FORMAT>: The format to display, where this is one of the
+                         formats defined (in the current GUI) in the
+                         Tools>Preferences>File Formats dialog.
+                         If no format is given, the default format as
+                         specified in the same dialog is used.
  * \li Origin: Tommaso, 20 Sep 2007
  * \endvar
  */
@@ -2891,10 +3108,10 @@ void LyXAction::init()
  * \var lyx::FuncCode lyx::LFUN_CALL
  * \li Action: Executes a command defined in a .def file.
  * \li Notion: The definitions are by default read from lib/commands/default.def.\n
-               A .def file allows to define a command with \\define "<NAME>" "<LFUN>"
+               A .def file allows to define a command with \define "<NAME>" "<LFUN>"
                where <NAME> is the name of the new command and <LFUN> is the lfun code
                to be executed (see e.g. #LFUN_COMMAND_SEQUENCE).
-               \\def_file "FileName" allows to include another .def file. \n
+               \def_file "FileName" allows to include another .def file. \n
                This is particularly useful in connection with toolbar buttons:
                Since the name of the button image for this lfun is 
                lib/images/commands/<NAME>.png this is the way to assign an image
@@ -3051,7 +3268,7 @@ void LyXAction::init()
 
 /*!
  * \var lyx::FuncCode lyx::LFUN_COMPLETION_CANCEL
- * \li Action: Try to cancel completion, either the popup or the inline completion
+ * \li Action: Try to cancel completion, either the popup or the inline completion.
  * \li Syntax: completion-cancel
  * \li Origin: sts, Sep 07 2008
  * \endvar
@@ -3067,36 +3284,110 @@ void LyXAction::init()
                { LFUN_COMPLETION_ACCEPT, "completion-accept", SingleParUpdate, Edit },
 
 
+/*!
+ * \var lyx::FuncCode lyx::LFUN_BRANCH_ADD
+ * \li Action: Add a branch to the buffer's BranchList.
+ * \li Syntax: branch-add <BRANCH>
+ * \li Params: <BRANCH>: Name of the branch to add
+ * \li Origin: spitz, 7 Jul 2009
+ * \endvar
+ */
+               { LFUN_BRANCH_ADD, "branch-add", Noop, Buffer },
+
+
 /*!
  * \var lyx::FuncCode lyx::LFUN_BRANCH_ACTIVATE
- * \li Action: Activate the branch
+ * \li Action: Activate the branch.
  * \li Syntax: branch-activate <BRANCH>
  * \li Params: <BRANCH>: The branch to activate
- * \li Sample: lyx -e pdf2 -x "branch-activate answers" finalexam.lyx \n
+ * \li Sample: lyx -x "branch-activate answers" -e pdf2 finalexam.lyx \n
                could be used to export a pdf with the answers branch included
                without one's having to open LyX and activate the branch manually.
  * \li Origin: rgh, 27 May 2008
  * \endvar
  */
-               { LFUN_BRANCH_ACTIVATE, "branch-activate", Argument, Buffer },
+               { LFUN_BRANCH_ACTIVATE, "branch-activate", AtPoint, Buffer },
 /*!
- * \var lyx::FuncCode lyx::LFUN_BRANCH_ACTIVATE
- * \li Action: De-activate the branch
+ * \var lyx::FuncCode lyx::LFUN_BRANCH_DEACTIVATE
+ * \li Action: De-activate the branch.
  * \li Syntax: branch-deactivate <BRANCH>
  * \li Params: <BRANCH>: The branch to deactivate
  * \li Origin: rgh, 27 May 2008
  * \endvar
  */
-               { LFUN_BRANCH_DEACTIVATE, "branch-deactivate", Argument, Buffer },
+               { LFUN_BRANCH_DEACTIVATE, "branch-deactivate", AtPoint, Buffer },
 
 /*!
- * \var lyx::FuncCode lyx::LFUN_COPY_LABEL_AS_REF
- * \li Action: Copies the label at the cursor as a cross-reference to be paster elsewhere.
- * \li Syntax: copy-label-as-reference
+ * \var lyx::FuncCode lyx::LFUN_BRANCHES_RENAME
+ * \li Action: Rename all branches of a given name in a document.
+ * \li Syntax: branches-rename <OLDNAME> <NEWNAME>
+ * \li Params: <OLDNAME>: Current name of the branch to be renamed
+ *             <NEWNAME>: New name of the branch
+ * \li Origin: spitz, 9 Jul 2009
+ * \endvar
+ */
+               { LFUN_BRANCHES_RENAME, "branches-rename", Noop, Buffer },
+/*!
+ * \var lyx::FuncCode lyx::LFUN_BRANCH_ADD_INSERT
+ * \li Action: Create new branch and directly put the branch inset into
+               the document.
+ * \li Syntax: branch-add-insert [<NAME>]
+ * \li Params: <NAME>: Branch name. If it is not specified, you will be asked.
+ * \li Origin: sanda, 10 Jul 2009
+ * \endvar
+ */
+               { LFUN_BRANCH_ADD_INSERT, "branch-add-insert", Noop, Buffer },
+
+
+/*!
+ * \var lyx::FuncCode lyx::LFUN_LABEL_COPY_AS_REF
+ * \li Action: Copies the label at the cursor as a cross-reference to be pasted elsewhere.
+ * \li Syntax: copy-label-as-reference <LABEL>
+ * \li Params: <LABEL>: The label to copy (for multi-line math)
  * \li Origin: sts, 16 Nov 2008
  * \endvar
  */
-               { LFUN_COPY_LABEL_AS_REF, "copy-label-as-reference", ReadOnly | NoUpdate, Edit },
+               { LFUN_LABEL_COPY_AS_REF, "copy-label-as-reference", ReadOnly | NoUpdate, Edit },
+
+/*!
+ * \var lyx::FuncCode lyx::LFUN_LABEL_INSERT_AS_REF
+ * \li Action: Inserts the label as a cross-reference at the position of the cursor.
+ * \li Syntax: label-insert-as-reference
+ * \li Origin: vfr, 7 Apr 2009
+ * \endvar
+ */
+               { LFUN_LABEL_INSERT_AS_REF, "label-insert-as-reference", Noop, Edit},
+
+/*!
+ * \var lyx::FuncCode lyx::LFUN_BUFFER_ZOOM_IN
+ * \li Action: Increases the zoom of the screen fonts.
+ * \li Syntax: buffer-zoom-in [<ZOOM>]
+ * \li Params: <ZOOM>: The zoom in %, the default is 20.
+ * \li Origin: vfr, 30 Mar 2009
+ * \endvar
+ */
+               { LFUN_BUFFER_ZOOM_IN, "buffer-zoom-in", ReadOnly, Buffer },
+
+/*!
+ * \var lyx::FuncCode lyx::LFUN_BUFFER_ZOOM_OUT
+ * \li Action: Decreases the zoom of the screen fonts.
+ * \li Syntax: buffer-zoom-out [<ZOOM>]
+ * \li Params: <ZOOM>: The zoom in %, the default is 20.
+ * \li Origin: vfr, 30 Mar 2009
+ * \endvar
+ */
+               { LFUN_BUFFER_ZOOM_OUT, "buffer-zoom-out", ReadOnly, Buffer },
+
+/*!
+ * \var lyx::FuncCode lyx::LFUN_SECTION_SELECT
+ * \li Action: Selects the whole section.
+ * \li Notion: The cursor should be in a section heading 
+               before calling this lfun.
+ * \li Syntax: section-select
+ * \li Origin: vfr, 05 May 2009
+ * \endvar
+ */
+               { LFUN_SECTION_SELECT, "section-select", ReadOnly, Edit },
 
                { LFUN_NOACTION, "", Noop, Hidden }
 #ifndef DOXYGEN_SHOULD_SKIP_THIS