X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FLyXAction.cpp;h=f93ea9564df570a0345e73e370888a92f1de1744;hb=20b45cf02895a9ca5a1c831b4d4c0795d91b8d4a;hp=2413a239cae0d11a296df07264b72eae80fbcb05;hpb=5a3f1a731f0911427a3a5720393939f7d033b350;p=lyx.git diff --git a/src/LyXAction.cpp b/src/LyXAction.cpp index 2413a239ca..f93ea9564d 100644 --- a/src/LyXAction.cpp +++ b/src/LyXAction.cpp @@ -49,11 +49,13 @@ namespace lyx { /* LFUN documentation * - * The documentation below is primarily description of purpose and syntax - * relating to the different LFUNs. + * The documentation below primarily describes the purpose and syntax + * of the various LFUNs. * - * Try to find an appropriate (thematical) place when adding the new LFUN - * and don't forget to add doxygen commentary. + * The list is alphabetized. Try to keep it that way, and don't forget to add + * doxygen commentary. This allows the file LFUNs.lyx to be auto-generated. + * (If you should want to do that, see the gen_lfuns.py script, which is in + * the development/tools/ directory.) * * Doxygen template below. Some notes: Parameters should be set in uppercase * and put in , [] means optional one. @@ -63,12 +65,12 @@ namespace lyx { /*! * \var lyx::FuncCode lyx::LFUN_ - * \li Action: - * \li Notion: - * \li Syntax: - * \li Params: + * \li Action: + * \li Notion: + * \li Syntax: + * \li Params: * \li Sample: - * \li Origin: + * \li Origin: * \endvar */ @@ -99,7 +101,7 @@ void LyXAction::init() // magnitudes faster. static bool init; - if (init) + if (init) return; struct ev_item { @@ -111,6 +113,7 @@ void LyXAction::init() ev_item const items[] = { #endif + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_ACUTE * \li Action: Adds an acute accent \htmlonly (á)\endhtmlonly @@ -119,6 +122,7 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_ACUTE, "accent-acute", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_BREVE * \li Action: Adds a breve accent \htmlonly (ă)\endhtmlonly @@ -127,6 +131,7 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_BREVE, "accent-breve", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_CARON * \li Action: Adds a caron \htmlonly (ǎ)\endhtmlonly @@ -135,6 +140,7 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_CARON, "accent-caron", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_CEDILLA * \li Action: Adds a cedilla \htmlonly (ç)\endhtmlonly @@ -143,6 +149,7 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_CEDILLA, "accent-cedilla", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_CIRCLE * \li Action: Adds a circle accent \htmlonly (å)\endhtmlonly @@ -151,6 +158,7 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_CIRCLE, "accent-circle", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_CIRCUMFLEX * \li Action: Adds a circumflex \htmlonly (ê)\endhtmlonly @@ -159,6 +167,7 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_CIRCUMFLEX, "accent-circumflex", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_DOT * \li Action: Adds a dot accent \htmlonly (ż)\endhtmlonly @@ -167,6 +176,7 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_DOT, "accent-dot", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_GRAVE * \li Action: Adds a grave accent \htmlonly (è)\endhtmlonly @@ -175,6 +185,7 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_GRAVE, "accent-grave", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_HUNGARIAN_UMLAUT * \li Action: Adds a Hungarian umlaut \htmlonly (ő)\endhtmlonly @@ -183,6 +194,7 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_HUNGARIAN_UMLAUT, "accent-hungarian-umlaut", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_MACRON * \li Action: Adds a macron \htmlonly (ā)\endhtmlonly @@ -191,6 +203,7 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_MACRON, "accent-macron", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_OGONEK * \li Action: Adds an ogonek accent \htmlonly (ą)\endhtmlonly @@ -199,6 +212,16 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_OGONEK, "accent-ogonek", Noop, Edit }, + +/*! + * \var lyx::FuncCode lyx::LFUN_ACCENT_PERISPOMENI + * \li Action: Adds a perispomeni (Greek circumflex) + over the next character typed. + * \li Syntax: accent-perispomeni + * \endvar + */ + { LFUN_ACCENT_PERISPOMENI, "accent-perispomeni", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_TIE * \li Action: Adds a tie \htmlonly (a͡)\endhtmlonly @@ -208,6 +231,7 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_TIE, "accent-tie", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_TILDE * \li Action: Adds a tilde \htmlonly (ã)\endhtmlonly @@ -216,6 +240,7 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_TILDE, "accent-tilde", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_UMLAUT * \li Action: Adds an umlaut \htmlonly (ä)\endhtmlonly @@ -224,6 +249,7 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_UMLAUT, "accent-umlaut", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_UNDERBAR * \li Action: Adds a bar \htmlonly (a̠)\endhtmlonly @@ -232,6 +258,7 @@ void LyXAction::init() * \endvar */ { LFUN_ACCENT_UNDERBAR, "accent-underbar", Noop, Edit }, + /*! * \var lyx::FuncCode lyx::LFUN_ACCENT_UNDERDOT * \li Action: Adds a dot \htmlonly (ạ)\endhtmlonly @@ -241,962 +268,1132 @@ void LyXAction::init() */ { LFUN_ACCENT_UNDERDOT, "accent-underdot", Noop, Edit }, + /*! - * \var lyx::FuncCode lyx::LFUN_CAPTION_INSERT - * \li Action: Inserts a caption inset. - * \li Syntax: caption-insert - * \li Origin: Lgb, 18 Jul 2000 + * \var lyx::FuncCode lyx::LFUN_ALL_CHANGES_ACCEPT + * \li Action: Accepts all tracked changes in the document. + * \li Syntax: all-changes-accept + * \li Origin: Levon, 16 Oct 2002 * \endvar */ - { LFUN_CAPTION_INSERT, "caption-insert", Noop, Edit }, + { LFUN_ALL_CHANGES_ACCEPT, "all-changes-accept", Noop, Edit }, + /*! - * \var lyx::FuncCode lyx::LFUN_DATE_INSERT - * \li Action: Inserts the current date. - * \li Syntax: date-insert [] - * \li Params: : Format of date. The default value (%x) can be set - in Preferences->Date format. For possible formats - see manual page of strftime function. - * \li Origin: jdblair, 31 Jan 2000 + * \var lyx::FuncCode lyx::LFUN_ALL_CHANGES_REJECT + * \li Action: Rejects all tracked changes in the document. + * \li Notion: Reject does not work recursively; the user may have to repeat the operation. + * \li Syntax: all-changes-reject + * \li Origin: Levon, 16 Oct 2002 * \endvar */ - { LFUN_DATE_INSERT, "date-insert", Noop, Edit }, + { LFUN_ALL_CHANGES_REJECT, "all-changes-reject", Noop, Edit }, + + /*! - * \var lyx::FuncCode lyx::LFUN_FOOTNOTE_INSERT - * \li Action: Inserts a footnote inset. - * \li Syntax: footnote-insert - * \li Origin: Jug, 7 Mar 2000 + * \var lyx::FuncCode lyx::LFUN_APPENDIX + * \li Action: Start (or remove) Appendix on the given cursor position. + * \li Syntax: appendix + * \li Origin: ettrich, 5 May 1998 * \endvar */ - { LFUN_FOOTNOTE_INSERT, "footnote-insert", Noop, Edit }, + { LFUN_APPENDIX, "appendix", Noop, Edit }, + + /*! - * \var lyx::FuncCode lyx::LFUN_ERT_INSERT - * \li Action: Inserts an ERT inset. - * \li Syntax: ert-insert - * \li Origin: Jug, 18 Feb 2000 + * \var lyx::FuncCode lyx::LFUN_ARGUMENT_INSERT + * \li Action: Inserts an argument (short title) inset. + * \li Syntax: argument-insert + * \li Params: : see layout declarations + * \li Origin: vermeer, 12 Aug 2002 * \endvar */ - { LFUN_ERT_INSERT, "ert-insert", Noop, Edit }, + { LFUN_ARGUMENT_INSERT, "argument-insert", Noop, Edit }, + /*! - * \var lyx::FuncCode lyx::LFUN_FLOAT_INSERT - * \li Action: Inserts a float inset. - * \li Syntax: float-insert - * \li Params: : type of float depends on the used textclass. Usually - "algorithm", "table", "figure" parameters can be given. - * \li Origin: Lgb, 27 Jun 2000 + * \var lyx::FuncCode lyx::LFUN_BIBTEX_DATABASE_ADD + * \li Action: Adds database, which will be used for bibtex citations. + * \li Notion: Databases are added to the first BibTeX inset + (Inset->List/TOC->BibTeX bibliography) found from the cursor position. + * \li Syntax: bibtex-database-add + * \li Origin: Ale, 30 May 1997 * \endvar */ - { LFUN_FLOAT_INSERT, "float-insert", Noop, Edit }, + { LFUN_BIBTEX_DATABASE_ADD, "bibtex-database-add", Noop, Edit }, + /*! - * \var lyx::FuncCode lyx::LFUN_FLOAT_WIDE_INSERT - * \li Action: Inserts float insets as in #LFUN_FLOAT_INSERT but span multiple columns. - * \li Notion: Corresponds to the starred floats (figure*, table*, etc.) in LaTeX. - * \li Syntax: float-wide-insert - * \li Params: : type of float depends on the used textclass. Usually - "algorithm", "table", "figure" parameters can be given. - * \li Origin: Lgb, 31 Oct 2001 + * \var lyx::FuncCode lyx::LFUN_BIBTEX_DATABASE_DEL + * \li Action: Adds database, which will be used for bibtex citations. + * \li Notion: Databases are deleted from the first BibTeX inset + (Inset->List/TOC->BibTeX bibliography) found from the cursor position. + * \li Syntax: bibtex-database-del + * \li Origin: Ale, 30 May 1997 * \endvar */ - { LFUN_FLOAT_WIDE_INSERT, "float-wide-insert", Noop, Edit }, + { LFUN_BIBTEX_DATABASE_DEL, "bibtex-database-del", Noop, Edit }, + /*! - * \var lyx::FuncCode lyx::LFUN_FLOAT_LIST_INSERT - * \li Action: Inserts the list of floats in the document. - * \li Syntax: float-list-insert - * \li Params: : type of float depends on the used textclass. Usually - "algorithm", "table", "figure" parameters can be given. - * \li Origin: Lgb, 3 May 2001 + * \var lyx::FuncCode lyx::LFUN_BIBTEX_DATABASE_LIST + * \li Action: Lists the available databases (separated by path separator common + * on the used OS). + * \li Notion: Used by bibliographic managers + * \li Syntax: bibtex-database-list + * \li Origin: bpiwowar, 18 December 2022 * \endvar */ - { LFUN_FLOAT_LIST_INSERT, "float-list-insert", Noop, Edit }, + { LFUN_BIBTEX_DATABASE_LIST, "bibtex-database-list", ReadOnly, System }, + /*! - * \var lyx::FuncCode lyx::LFUN_WRAP_INSERT - * \li Action: Inserts floats wrapped by the text around. - * \li Syntax: wrap-insert - * \li Params: : table|figure - * \li Origin: Dekel, 7 Apr 2002 + * \var lyx::FuncCode lyx::LFUN_BOOKMARK_CLEAR + * \li Action: Clears the list of saved bookmarks. + * \li Syntax: bookmark-clear + * \li Origin: bpeng, 31 October 2006 * \endvar */ - { LFUN_WRAP_INSERT, "wrap-insert", Noop, Edit }, + { LFUN_BOOKMARK_CLEAR, "bookmark-clear", NoBuffer, Edit }, + + /*! - * \var lyx::FuncCode lyx::LFUN_ARGUMENT_INSERT - * \li Action: Inserts an argument (short title) inset. - * \li Syntax: argument-insert - * \li Params: : see layout declarations - * \li Origin: vermeer, 12 Aug 2002 + * \var lyx::FuncCode lyx::LFUN_BOOKMARK_GOTO + * \li Action: Moves the cursor to the numbered bookmark, opening the file + if necessary. Note that bookmarks 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 + * \li Params: : the number of the bookmark to restore. + * \li Origin: Dekel, 27 January 2001 * \endvar */ - { LFUN_ARGUMENT_INSERT, "argument-insert", Noop, Edit }, + { LFUN_BOOKMARK_GOTO, "bookmark-goto", NoBuffer, Edit }, + /*! - * \var lyx::FuncCode lyx::LFUN_NEWPAGE_INSERT - * \li Action: Inserts a new page. - * \li Syntax: newpage-insert - * \li Params: : default: newpage - * \li Origin: uwestoehr, 24 Nov 2007 + * \var lyx::FuncCode lyx::LFUN_BOOKMARK_SAVE + * \li Action: Save a bookmark. + * \li Notion: Saves a numbered bookmark to the sessions file. The number + must be between 1 and 9, inclusive. Note that bookmarks are + saved per-session, not per file. + * \li Syntax: bookmark-save + * \li Params: : the number of the bookmark to save. + * \li Origin: Dekel, 27 January 2001 * \endvar */ - { LFUN_NEWPAGE_INSERT, "newpage-insert", Noop, Edit }, + { LFUN_BOOKMARK_SAVE, "bookmark-save", ReadOnly, Edit }, + /*! - * \var lyx::FuncCode lyx::LFUN_MARGINALNOTE_INSERT - * \li Action: Inserts a marginal note. - * \li Syntax: marginalnote-insert - * \li Origin: Lgb, 26 Jun 2000 + * \var lyx::FuncCode lyx::LFUN_BOX_INSERT + * \li Action: Inserts Box inset. + * \li Syntax: box-insert [] + * \li Params: : Boxed|Frameless|Framed|ovalbox|Ovalbox|Shadowbox|Shaded|Doublebox \n + Framed is the default one. + * \li Origin: vermeer, 7 Oct 2003 * \endvar */ - { LFUN_MARGINALNOTE_INSERT, "marginalnote-insert", Noop, Edit }, + { LFUN_BOX_INSERT, "box-insert", Noop, Edit }, + /*! - * \var lyx::FuncCode lyx::LFUN_UNICODE_INSERT - * \li Action: Inserts a single unicode character. - * \li Syntax: unicode-insert - * \li Params: : The character to insert, given as its code - point, in hexadecimal. - * \li Sample: unicode-insert 0x0100 - * \li Origin: Lgb, 22 Oct 2006 + * \var lyx::FuncCode lyx::LFUN_BRANCHES_RENAME + * \li Action: Rename all branches of a given name in a document. + * \li Syntax: branches-rename + * \li Params: : Current name of the branch to be renamed + * : New name of the branch + * \li Origin: spitz, 9 Jul 2009 * \endvar */ - { LFUN_UNICODE_INSERT, "unicode-insert", Noop, Edit }, + { LFUN_BRANCHES_RENAME, "branches-rename", Noop, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_LISTING_INSERT - * \li Action: Inserts a new listings inset. - * \li Syntax: listing-insert - * \li Origin: Herbert, 10 Nov 2001; bpeng, 2 May 2007 + * \var lyx::FuncCode lyx::LFUN_BRANCH_ACTIVATE + * \li Action: Activate the branch. + * \li Syntax: branch-activate + * \li Params: : The branch to activate + * \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_LISTING_INSERT, "listing-insert", Noop, Edit }, + { LFUN_BRANCH_ACTIVATE, "branch-activate", AtPoint, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_PREVIEW_INSERT - * \li Action: Inserts a new preview inset. - * \li Syntax: preview-insert - * \li Origin: vfr, 28 Mar 2010 + * \var lyx::FuncCode lyx::LFUN_BRANCH_ADD + * \li Action: Add a branch to the buffer's BranchList. + * \li Syntax: branch-add + * \li Params: : Name of the branch to add + * \li Origin: spitz, 7 Jul 2009 * \endvar */ - { LFUN_PREVIEW_INSERT, "preview-insert", Noop, Edit }, + { LFUN_BRANCH_ADD, "branch-add", AtPoint, Buffer }, + + + /*! - * \var lyx::FuncCode lyx::LFUN_TAB_INSERT - * \li Action: Insert a tab into a listings inset. - * \li Notion: It also works on a selection. - * \li Syntax: tab-insert - * \li Origin: vfr, Sep 30 2008 + * \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 [] + * \li Params: : Branch name. If it is not specified, you will be asked. + * \li Origin: sanda, 10 Jul 2009 * \endvar */ - { LFUN_TAB_INSERT, "tab-insert", SingleParUpdate, Edit }, + { LFUN_BRANCH_ADD_INSERT, "branch-add-insert", Noop, Buffer }, + + + /*! - * \var lyx::FuncCode lyx::LFUN_TAB_DELETE - * \li Action: Delete a tab or up to an equivalent amount of spaces from - 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. - * \li Syntax: tab-delete - * \li Origin: vfr, Sep 30 2008 + * \var lyx::FuncCode lyx::LFUN_BRANCH_DEACTIVATE + * \li Action: De-activate the branch. + * \li Syntax: branch-deactivate + * \li Params: : The branch to deactivate + * \li Origin: rgh, 27 May 2008 * \endvar */ - { LFUN_TAB_DELETE, "tab-delete", SingleParUpdate, Edit }, + { LFUN_BRANCH_DEACTIVATE, "branch-deactivate", AtPoint, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_QUOTE_INSERT - * \li Action: Inserts quotes according to the type and quote-language preference. - * \li Notion: Currently English, Swedish, German, Polish, French, Danish quotes - are distinguished. - * \li Syntax: quote-insert [] - * \li Params: : 'single' for single quotes, otherwise double quotes will be used. + * \var lyx::FuncCode lyx::LFUN_BRANCH_INSERT + * \li Action: Inserts branch inset. + * \li Syntax: branch-insert + * \li Origin: vermeer, 17 Aug 2003 * \endvar */ - { LFUN_QUOTE_INSERT, "quote-insert", Noop, Edit }, + { LFUN_BRANCH_INSERT, "branch-insert", Noop, Edit }, + /*! - * \var lyx::FuncCode lyx::LFUN_INFO_INSERT - * \li Action: Displays shortcuts, lyxrc, package and textclass availability and menu - information in a non-editable boxed InsetText. - * \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. - * \li Syntax: info-insert - * \li Params: : shortcut[s]|lyxrc|lyxinfo|package|textclass|menu|buffer \n - : argument for a given type. Look into InsetInfo.h for detailed - description. \n - shortcut[s]: name of lfun (e.g math-insert \alpha) \n - lyxrc: name of rc_entry (e.g. bind_file) \n - lyxinfo: "version" - used version of LyX \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: icon of lfun used in toolbar \n - buffer: "name"|"path"|"class"|"vcs-tree-revision"| - "vcs-revision"|"vcs-author"|"vcs-date"|"vcs-time" - * \li Sample: command-sequence info-insert buffer path; info-insert buffer name - * \li Origin: bpeng, 7 Oct 2007 - * \endvar - */ - { LFUN_INFO_INSERT, "info-insert", Noop, Edit }, -/*! - * \var lyx::FuncCode lyx::LFUN_BRANCH_INSERT - * \li Action: Inserts branch inset. - * \li Syntax: branch-insert - * \li Origin: vermeer, 17 Aug 2003 + * \var lyx::FuncCode lyx::LFUN_BRANCH_SYNC_ALL + * \li Action: Open/close all insets of selected branch (depending on its activation status). + * \li Syntax: branch-sync-all + * \li Origin: sanda, 15 April 2022 * \endvar */ - { LFUN_BRANCH_INSERT, "branch-insert", Noop, Edit }, + { LFUN_BRANCH_SYNC_ALL, "branch-sync-all", AtPoint, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_BOX_INSERT - * \li Action: Inserts Box inset. - * \li Syntax: box-insert [] - * \li Params: : Boxed|Frameless|Framed|ovalbox|Ovalbox|Shadowbox|Shaded|Doublebox \n - Framed is the default one. - * \li Origin: vermeer, 7 Oct 2003 + * \var lyx::FuncCode lyx::LFUN_BRANCH_INVERT + * \li Action: Toggles inversion status of branch inset. + * \li Syntax: branch-invert + * \li Origin: rgheck, 12 July 2016 * \endvar */ - { LFUN_BOX_INSERT, "box-insert", Noop, Edit }, + { LFUN_BRANCH_INVERT, "branch-invert", AtPoint, Buffer }, + + /*! - * \var lyx::FuncCode lyx::LFUN_FLEX_INSERT - * \li Action: Inserts CharStyle, Custom inset or XML short element. - * \li Notion: Look into the Customization manual for more information about - these elements.\n - To make this command enabled the layout file for the document - 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. - * \li Syntax: flex-insert Name - * \li Params: Name: This name must be defined either in your layout file - or imported by some module. The definition is - InsetLayout Name or InsetLayout . The Flex: - prefix is optional. - * \li Sample: flex-insert Code + * \var lyx::FuncCode lyx::LFUN_BRANCH_MASTER_ACTIVATE + * \li Action: Activate the branch in the master buffer. + * \li Syntax: branch-master-activate + * \li Params: : The branch to activate + * \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: spitz, 30 Sep 2012 * \endvar */ - { LFUN_FLEX_INSERT, "flex-insert", Noop, Edit }, + { LFUN_BRANCH_MASTER_ACTIVATE, "branch-master-activate", AtPoint, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_SELF_INSERT - * \li Action: Inserts the given string (accordingly to the correct keymap). - * \li Notion: Automatically replace the currently selected text. Depends on lyxrc - settings "auto_region_delete". - * \li Syntax: self-insert + * \var lyx::FuncCode lyx::LFUN_BRANCH_MASTER_DEACTIVATE + * \li Action: De-activate the branch in the master buffer. + * \li Syntax: branch-master-deactivate + * \li Params: : The branch to deactivate + * \li Origin: spitz, 30 Sep 2012 * \endvar */ - { LFUN_SELF_INSERT, "self-insert", SingleParUpdate, Hidden }, + { LFUN_BRANCH_MASTER_DEACTIVATE, "branch-master-deactivate", AtPoint, Buffer }, + + /*! - * \var lyx::FuncCode lyx::LFUN_SPACE_INSERT - * \li Action: Inserts one of horizontal space insets. - * \li Syntax: space-insert [] - * \li Params: : normal, protected, visible, thin, quad, qquad, enspace, - enskip, negthinspace, negmedspace, negthickspace, hfill, - hfill*, dotfill, hrulefill, hspace, hspace* \n - Only in math mode: med and thick.\n - : length for custom spaces (hspace, hspace* for protected) - * \li Origin: JSpitzm, 20 May 2003, Mar 17 2008 + * \var lyx::FuncCode lyx::LFUN_BUFFER_ANONYMIZE + * \li Action: For debug purposes only. Convert all [a-zA-Z0-1] characters to + single character. Useful when submitting docs to list or bugzilla. + * \li Syntax: buffer-anonymize + * \li Origin: sanda, Feb 1 2018 * \endvar */ - { LFUN_SPACE_INSERT, "space-insert", Noop, Edit }, + { LFUN_BUFFER_ANONYMIZE, "buffer-anonymize", Noop, Edit }, + + /*! - * \var lyx::FuncCode lyx::LFUN_HYPERLINK_INSERT - * \li Action: Inserts hyperlinks into the document (clickable in pdf output). - * \li Notion: Hyperlink target can be set via selection + hyperlink-insert function. - * \li Syntax: href-insert [] - * \li Origin: CFO-G, 21 Nov 1997 + * \var lyx::FuncCode lyx::LFUN_BUFFER_AUTO_SAVE + * \li Action: Saves the current buffer to a temporary file. + * \li Notion: Saves the current buffer to a file named "#filename#". This LFUN + is called automatically by LyX, to "autosave" the current buffer. + * \li Syntax: buffer-auto-save * \endvar */ - { LFUN_HYPERLINK_INSERT, "href-insert", Noop, Edit }, + { LFUN_BUFFER_AUTO_SAVE, "buffer-auto-save", Noop, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_SPECIALCHAR_INSERT - * \li Action: Inserts various characters into the document. - * \li Syntax: specialchar-insert - * \li Params: : hyphenation, ligature-break, slash, nobreakdash, dots, - end-of-sentence, menu-separator. - * \li Origin: JSpitzm, 6 Dec 2007 + * \var lyx::FuncCode lyx::LFUN_BUFFER_BEGIN + * \li Action: Move the cursor to the beginning of the document. + * \li Syntax: buffer-begin * \endvar */ - { LFUN_SPECIALCHAR_INSERT, "specialchar-insert", Noop, Edit }, + { LFUN_BUFFER_BEGIN, "buffer-begin", ReadOnly, Edit }, + /*! - * \var lyx::FuncCode lyx::LFUN_SCRIPT_INSERT - * \li Action: Inserts a subscript or superscript inset. - * \li Syntax: script-insert - * \li Params: : subscript|superscript - * \li Origin: Georg, 23 Nov 2010 + * \var lyx::FuncCode lyx::LFUN_BUFFER_BEGIN_SELECT + * \li Action: Move the cursor to the beginning of the document adding the + traversed text to the selection. + * \li Syntax: buffer-begin-select * \endvar */ - { LFUN_SCRIPT_INSERT, "script-insert", Noop, Edit }, + { LFUN_BUFFER_BEGIN_SELECT, "buffer-begin-select", ReadOnly, Edit }, + /*! - * \var lyx::FuncCode lyx::LFUN_APPENDIX - * \li Action: Start (or remove) Appendix on the given cursor position. - * \li Syntax: appendix - * \li Origin: ettrich, 5 May 1998 + * \var lyx::FuncCode lyx::LFUN_BUFFER_CHILD_OPEN + * \li Action: Loads the given child document. + * \li Notion: The current document is treated as a parent. + * \li Syntax: buffer-child-open + * \li Params: : Filename of the child. The directory of the parent is assumed by default. + * \li Origin: Ale, 28 May 1997 * \endvar */ - { LFUN_APPENDIX, "appendix", Noop, Edit }, + { LFUN_BUFFER_CHILD_OPEN, "buffer-child-open", ReadOnly, Buffer }, /*! - * \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 Params: : name of the index, if multiple indices are defined. - With an empty argument, the default index is selected. - * \li Origin: leeming, 3 Aug 2000 + * \var lyx::FuncCode lyx::LFUN_BUFFER_CHKTEX + * \li Action: Runs chktex for the current document. + * \li Syntax: buffer-chktex + * \li Origin: Asger, 30 Oct 1997 * \endvar */ - { LFUN_INDEX_INSERT, "index-insert", Noop, Edit }, + { LFUN_BUFFER_CHKTEX, "buffer-chktex", ReadOnly, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_INDEX_PRINT - * \li Action: Inserts list of Index entries on a new page. - * \li Syntax: index-print [] - * \li Params: : name of the index, if multiple indices are defined. - With an empty argument, the default index is selected. - * \li Origin: Lgb, 27 Feb 1997 + * \var lyx::FuncCode lyx::LFUN_BUFFER_CLOSE + * \li Action: Closes the current buffer. + * \li Notion: Closes the current buffer, asking whether to save it, etc, + if the buffer has been modified. + * \li Syntax: buffer-close * \endvar */ - { LFUN_INDEX_PRINT, "index-print", Noop, Edit }, + { LFUN_BUFFER_CLOSE, "buffer-close", ReadOnly, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_IPA_INSERT - * \li Action: Inserts an IPA inset. - * \li Syntax: ipa-insert - * \li Origin: spitz, 05 Mar 2012 + * \var lyx::FuncCode lyx::LFUN_BUFFER_CLOSE_ALL + * \li Action: Closes all buffers. + * \li Notion: Closes all buffers, asking whether to save it, etc, + if a buffer has been modified. + * \li Syntax: buffer-close-all * \endvar */ - { LFUN_IPA_INSERT, "ipa-insert", Noop, Edit }, + { LFUN_BUFFER_CLOSE_ALL, "buffer-close-all", ReadOnly, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_IN_IPA - * \li Action: Only active in IPA inset. - * \li Notion: Dummy function which is only active in a IPA inset. - It's used to toggle the IPA toolbar if the cursor moves - into an IPA inset. - * \li Syntax: in-ipa - * \li Origin: spitz, 20 May 2012 + * \var lyx::FuncCode lyx::LFUN_BUFFER_END + * \li Action: Move the cursor to the end of the document. + * \li Syntax: buffer-end * \endvar */ - { LFUN_IN_IPA, "in-ipa", Noop, Edit }, + { LFUN_BUFFER_END, "buffer-end", ReadOnly, Edit }, + /*! - * \var lyx::FuncCode lyx::LFUN_IPAMACRO_INSERT - * \li Action: Inserts special IPA macros into the document. - * \li Syntax: ipamacro-insert - * \li Params: : tone-falling, tone-rising, tone-high-rising, tone-low-rising, - * tone-high-rising-falling, deco bottomtiebar, deco toptiebar. - * \li Origin: JSpitzm, 22 Aug 2012 + * \var lyx::FuncCode lyx::LFUN_BUFFER_END_SELECT + * \li Action: Move the cursor to the end of the document adding the + traversed text to the selection. + * \li Syntax: buffer-end-select * \endvar */ - { LFUN_IPAMACRO_INSERT, "ipamacro-insert", Noop, Edit }, + { LFUN_BUFFER_END_SELECT, "buffer-end-select", ReadOnly, Edit }, + + /*! - * \var lyx::FuncCode lyx::LFUN_NOMENCL_INSERT - * \li Action: Inserts Nomenclature entry. - * \li Notion: It automatically takes the word on the cursor position if no symbol is given. - * \li Syntax: nomencl-insert [] - * \li Origin: Ugras, 4 Nov 2006 + * \var lyx::FuncCode lyx::LFUN_BUFFER_EXPORT + * \li Action: Exports the current buffer (document) to the given format. + * \li Syntax: buffer-export [] [] + * \li Params: 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.\n + If absent or "default", then the default output format of the + document is used.\n + If present, this argument provides the export destination + filename. Its containing folder will also be the destination + folder, where all the needed external files will be copied. + * \li Origin: Lgb, 29 Jul 1997 * \endvar */ - { LFUN_NOMENCL_INSERT, "nomencl-insert", Noop, Edit }, + { LFUN_BUFFER_EXPORT, "buffer-export", ReadOnly, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_NOMENCLATURE_PRINT - * \li Action: Inserts list of Nomenclature entries. - * \li Syntax: nomenclature-print - * \li Origin: Ugras, 4 Nov 2006 + * \var lyx::FuncCode lyx::LFUN_BUFFER_EXPORT_AS + * \li Action: Opens a dialog for exporting the current buffer. + * \li Syntax: buffer-export-as [] + * \li Params: is the export format initially selected in the dialog. + * You can pass any of the formats which you can find in + * Tools->Preferences->File formats->Format, provided it + * has the "document" flag set. If no format is specified + * the dialog will start with the default output format of + * the current document. + * \li Sample: buffer-export-as pdf2 + * \li Origin: tommaso, 6 Oct 2011 * \endvar */ - { LFUN_NOMENCL_PRINT, "nomencl-print", Noop, Edit }, + { LFUN_BUFFER_EXPORT_AS, "buffer-export-as", ReadOnly, Buffer }, /*! - * \var lyx::FuncCode lyx::LFUN_NOTE_INSERT - * \li Action: Inserts Note on the current cursor position, - move selection inside the inset. - * \li Syntax: note-insert [] - * \li Params: : default: Note + * \var lyx::FuncCode lyx::LFUN_BUFFER_EXPORT_CUSTOM + * \li Action: Exports the current buffer (document) from the given format using + the given command on it. + * \li Syntax: buffer-export-custom + * \li Params: format to start from (LyX will care to produce such + intermediate file).\n + this command will be launched on the file. Note that you can + 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 */ - { LFUN_NOTE_INSERT, "note-insert", Noop, Edit }, + { LFUN_BUFFER_EXPORT_CUSTOM, "buffer-export-custom", ReadOnly, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_NOTE_NEXT - * \li Action: Moves the cursor to the beginning of next Note inset. - * \li Syntax: note-next + * \var lyx::FuncCode lyx::LFUN_BUFFER_FORALL + * \li Action: Applies a command to all non-hidden buffers. + * \li Notion: a buffer is `hidden' if it is internally open in LyX, but not + visible in any window. + * \li Syntax: buffer-forall + * \li Params: : The command to be applied to the buffers. + * \li Sample: Close all Notes in all buffers: \n + buffer-forall inset-forall Note inset-toggle close \n + Toggle change tracking on buffers: \n + buffer-forall changes-track \n + Toggle read-only for buffers: \n + buffer-forall buffer-toggle-read-only \n + Show statistics for individual buffers: \n + buffer-forall statistics \n + Activate the branch named "Solutions" in buffers: \n + buffer-forall branch-activate Solutions \n + Export buffers to PDF (pdflatex): \n + buffer-forall buffer-export pdf2 \n + * \li Origin: skostysh, 20 Jul 2012 * \endvar */ - { LFUN_NOTE_NEXT, "note-next", ReadOnly, Edit }, + { LFUN_BUFFER_FORALL, "buffer-forall", ReadOnly | Argument, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_PHANTOM_INSERT - * \li Action: Inserts phantom on the current cursor position, - move selection inside the inset. - * \li Syntax: phantom-insert [] - * \li Params: : default: Phantom - * \li Origin: uwestoehr, 30 Jan 2009 + * \var lyx::FuncCode lyx::LFUN_BUFFER_IMPORT + * \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 converters in preferences. Look in the File->Import menu to get + an idea of the currently active import formats. + * \li Syntax: buffer-import [] + * \li Origin: Asger, 24 Jul 1998 * \endvar */ - { LFUN_PHANTOM_INSERT, "phantom-insert", Noop, Edit }, + { LFUN_BUFFER_IMPORT, "buffer-import", NoBuffer, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_NEWLINE_INSERT - * \li Action: Inserts a line break or new line. - * \li Syntax: newline-insert [] - * \li Params: : default: newline - * \li Origin: JSpitzm, 25 Mar 2008 + * \var lyx::FuncCode lyx::LFUN_BUFFER_LANGUAGE + * \li Action: Set language of the current document. + * \li Syntax: buffer-language + * \li Params: : language name. See lib/languages for list. + * \li Origin: leeming, 30 Mar 2004 * \endvar */ - { LFUN_NEWLINE_INSERT, "newline-insert", Noop, Edit }, + { LFUN_BUFFER_LANGUAGE, "buffer-language", Noop, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_ESCAPE - * \li Action: Clears the selection. If no text is selected call #LFUN_FINISHED_FORWARD. - Inside math mode jumps out of the math inset. - * \li Syntax: escape - * \li Origin: Lgb, 17 May 2001 + * \var lyx::FuncCode lyx::LFUN_BUFFER_MOVE_NEXT + * \li Action: Moves the current tab one spot to the right. + * \li Syntax: buffer-move-next + * \li Origin: skostysh, 7 Apr 2015 * \endvar */ - { LFUN_ESCAPE, "escape", ReadOnly, Edit }, + { LFUN_BUFFER_MOVE_NEXT, "buffer-move-next", ReadOnly, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_DOWN - * \li Action: Moves the cursor one line in downward direction. - * \li Syntax: down + * \var lyx::FuncCode lyx::LFUN_BUFFER_MOVE_PREVIOUS + * \li Action: Moves the current tab one spot to the left. + * \li Syntax: buffer-move-previous + * \li Origin: skostysh, 7 Apr 2015 * \endvar */ - { LFUN_DOWN, "down", ReadOnly | NoUpdate, Edit }, + { LFUN_BUFFER_MOVE_PREVIOUS, "buffer-move-previous", ReadOnly, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_UP - * \li Action: Moves the cursor one line in upward direction. - * \li Syntax: up + * \var lyx::FuncCode lyx::LFUN_BUFFER_NEW + * \li Action: Creates a new buffer (that is, document) and switches to it. + * \li Notion: Implicit path can be set in Preferences dialog. + * \li Syntax: buffer-new [] + * \li Params: : filename of created file with absolute path. * \endvar */ - { LFUN_UP, "up", ReadOnly | NoUpdate, Edit }, + { LFUN_BUFFER_NEW, "buffer-new", NoBuffer, Buffer }, + /*! - * \var lyx::FuncCode lyx::LFUN_DOWN_SELECT - * \li Action: Moves the cursor one line in downward direction adding the current - position to the selection. - * \li Syntax: down-select + * \var lyx::FuncCode lyx::LFUN_BUFFER_NEW_TEMPLATE + * \li Action: Creates a new buffer (that is, document) from a template. + * \li Notion: Path for new files and templates can be set in Preferences dialog. + Template will be asked for via Open-dialog. + * \li Syntax: buffer-new-template [] [