lyx_mirror/lib
Richard Heck 8a947f63da This is one of a series of patches that will merge the layout modules development in personal/branches/rgheck back into the tree.
Design goal: Allow the use of layout "modules", which are to LaTeX packages as layout files are to LaTeX document classes. Thus, one could have a module that defined certain character styles, environments, commands, or what have you, and include it in various documents, each of which uses a different document class, without having to modify the layout files themselves. For example, a theorems.module could be used with article.layout to provide support for theorem-type environments, without having to modify article.layout itself, and the same module could be used with book.layout, etc.

This patch adds the backend. The ModuleList class holds a list of the available modules, which are retrieved from lyxmodules.lst, itself generated by configure.py. There are two LFUNs available: modules-clear and module-add, which do the obvious thing; you can test by typing these into the minibuffer, along with the name of one of the available modules: URL (a CharStyle), Endnote (a Custom Inset), and---with the spaces---End To Foot (View>LaTeX and look at the user preamble), which are themselves in lib/layouts. There are some others, too, that allow theorems to be added to classes like article and book.

The GUI will come next.

Issues: (i) The configure.py script could be improved. It'd be nice, for example, if it tested for the presence of the LaTeX packages a particular module needs. But this would mean re-working the LaTeX script, and I don't know how to do that. Note that at present, the packages are ignored. This will change shortly. (ii) I've used std::string in LyXModule, following what seemed to be a precedent in TextClass. If some of these should be docstrings, please let me know, and I'll change them. (iii) There is at present no distinction between LaTeX and DocBook modules. Should there be? That is: Should there be modules that are available when the document class is a LaTeX class and others that are available only when it is DocBook? Or should there just be one set of modules? Each module can of course indicate for what it is suitable in its description.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19893 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-29 17:59:49 +00:00
..
bind Remove shortcuts for buffer-reload, per JMarc. 2007-05-26 17:45:23 +00:00
doc German Extended.lyx and UserGuide.lyx: updates from Hartmut 2007-08-29 00:22:57 +00:00
examples German splash.lyx: fix image path 2007-08-21 00:33:20 +00:00
fonts Add math fonts to SVN 2007-04-15 11:46:26 +00:00
images buffer-update_ps.xpm: - fix color definition to be able to reference it in the docs 2007-08-12 23:06:40 +00:00
kbd Add keymap file for Farsi, provided by Mostafa 2007-06-22 22:41:45 +00:00
layouts This is one of a series of patches that will merge the layout modules development in personal/branches/rgheck back into the tree. 2007-08-29 17:59:49 +00:00
lyx2lyx This is one of a series of patches that will merge the layout modules development in personal/branches/rgheck back into the tree. 2007-08-29 17:59:49 +00:00
scripts layout2layout, changeover to version 5 2007-08-22 14:36:07 +00:00
templates * lib/template/apa.lyx: update to 1.5 format. 2007-07-27 18:31:13 +00:00
tex remove class cv, now that it has been superceded by simplecv 2007-05-02 10:41:05 +00:00
ui Inset configurability: separate charstyle and custom insets 2007-08-24 12:45:40 +00:00
autocorrect Whitespace only. 2003-10-13 09:50:10 +00:00
build-listerrors Whitespace only. 2003-10-13 09:50:10 +00:00
ChangeLog merge booktabs branch 2006-07-03 19:13:56 +00:00
chkconfig.ltx Add powerdot layout and example 2007-05-22 21:35:22 +00:00
configure.py This is one of a series of patches that will merge the layout modules development in personal/branches/rgheck back into the tree. 2007-08-29 17:59:49 +00:00
CREDITS add Joan Montané to the credits 2007-08-21 21:52:06 +00:00
encodings lib/encodings: fix typo in comment 2007-05-07 18:25:25 +00:00
external_templates undo file format change 2007-03-17 10:30:31 +00:00
generate_contributions.py add Joan Montané to the credits 2007-08-21 21:52:06 +00:00
languages languages: add a dumy language for arabic_arabtex. I dropped this from the arabic patch last week because I misunderstood Dov. This dummy language is indeed needed. 2007-07-02 00:35:52 +00:00
Makefile.am This is one of a series of patches that will merge the layout modules development in personal/branches/rgheck back into the tree. 2007-08-29 17:59:49 +00:00
symbols fix bug 1942: http://bugzilla.lyx.org/show_bug.cgi?id=1942 2007-06-22 21:25:41 +00:00
syntax.default Revert unwanted stuff from last commit 2007-01-29 18:37:13 +00:00
unicodesymbols * lib/unicodesymbols: whitespace 2007-07-20 12:56:56 +00:00