can't just output Standard as <p>, or anything else, because we
have structures like:
this is text <branch>and more text</branch> and more
which would then come out as:
<p>this is text <p>and more text</p> and more</p>
So we use the OutputParam html_in_par to try to signal when we
are already in a paragraph. It is expected that we will need to
do some bug fixing here.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31753 a592a061-630c-0410-9148-cb99ea01b6c8
Use these modules in the AMS classes (instead of preamble hardcoding).
This is bug 6123.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31475 a592a061-630c-0410-9148-cb99ea01b6c8
- major overhaul for version 3.2 that has to be used since 2007
- remove wrong document class option, fixes first part of #6198
svjour.inc:
- remove style "subparagraph" that doesn't exist, fixes second part of #6198
- simplifications
svjour3.lyx: new template file for articles in journals published by Springer (It is the LyX implementation of the template.tex file provided by svjour version 3.2)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31417 a592a061-630c-0410-9148-cb99ea01b6c8
Do free free to change the categories. I just did these ones for testing, really.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31033 a592a061-630c-0410-9148-cb99ea01b6c8
- override settings inherited from beamer.layout (patch from Paul Rubin <rubin@msu.edu>)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31013 a592a061-630c-0410-9148-cb99ea01b6c8
The CSS for lists isn't quite right, but I'm not sure what to do.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29984 a592a061-630c-0410-9148-cb99ea01b6c8
footnote output and allows a lot more flexibility. (In some ways, this now
seems to be more like what docbook does.)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29981 a592a061-630c-0410-9148-cb99ea01b6c8
This patch is from JMarc, except the docs, which are due to me.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29906 a592a061-630c-0410-9148-cb99ea01b6c8
only sweave is supported (for building documentation, not programs).
Layout files allow a new OutputFormat tag
Modules can be conditionned on a feature of the type from->to, indicating that
it should be possible to convert from format 'from' to format 'to'.
Layout format incremented to 15.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29874 a592a061-630c-0410-9148-cb99ea01b6c8
These modules allow to use Sweave or Noweb with any LyX textclass.
They will eventually allow to get rid of literate-* classes.
The sweave modules will benefit in trunk from a forthcoming patch which allows
to select the output format for a literate OutputType. This will allow to
support Sweave out-of-the-box.
For branch, this pair of modules is IMO a candidate for LyX 1.6.4 (no need to
hurry).
Thanks to Gregor Gorjanc for his work on this subject. There is
undoubtlessly some additional work that has to be done here.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29657 a592a061-630c-0410-9148-cb99ea01b6c8
Don't go into an endless loop if layout2layout cannot produce the desired file format.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28529 a592a061-630c-0410-9148-cb99ea01b6c8
Implement infrastructure to add translations to layout files and translate one .inc file.
Some others are missing.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28356 a592a061-630c-0410-9148-cb99ea01b6c8
and ForcePlain tags will work not just with InsetFlex but all InsetCollapsables.
Thanks to Jurgen and JMarc for reminding me I'd meant to do this.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28340 a592a061-630c-0410-9148-cb99ea01b6c8
- do not load amsthm package (the class defines its own theorems)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27993 a592a061-630c-0410-9148-cb99ea01b6c8
http://bugzilla.lyx.org/show_bug.cgi?id=5407
This patch makes insetfloat search its styles using "Float:<floatname>" (or
"Float" if this fails). This allows to define a default behaviour for new
floats that makes sense.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27266 a592a061-630c-0410-9148-cb99ea01b6c8
- beamer-conference-ornate-20min.lyx: use new inset instead of ERT
- aastex.layout, braille.module: fix silly mistake from me
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27130 a592a061-630c-0410-9148-cb99ea01b6c8
- Braille.lyx: update description as \braillebox is also valid for 6 dot Braille
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27123 a592a061-630c-0410-9148-cb99ea01b6c8
- seminar.layout: updated layout file from Günter Milde to fix a few long standing issues with the visualization within LyX
- seminar.lyx: new example file, also from Günter Milde
The updated layout and new example file can also go to LyX 1.5, Jürgen?
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26929 a592a061-630c-0410-9148-cb99ea01b6c8
do not exclude some used module, but also that no used module excludes us.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26920 a592a061-630c-0410-9148-cb99ea01b6c8
(existing documents are fully compatible to the new one)
can also go to branch, Jürgen?
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26819 a592a061-630c-0410-9148-cb99ea01b6c8
- please JMarc and Jürgen and remove the BibTeX example file from templates but use the one from the examples
- iopart, ACM-sigplan, elsarticle templates and layouts: various small bug fixes and added informations
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26789 a592a061-630c-0410-9148-cb99ea01b6c8
Actually, not all of these do contain counters, but my grepping
wasn't sophisticated enough to catch them. Not a big deal....
I don't think there are errors here, but if you see weird
behavior with counters in some file or other, it's possible I missed
something.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26782 a592a061-630c-0410-9148-cb99ea01b6c8
is that the counter info will be updated later, without changing
the format number again.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26765 a592a061-630c-0410-9148-cb99ea01b6c8
There may be some other changes to be made here still, but they should be
fairly painless. What will need checking are InsetFlex's. Those that set
MultiPar to true will now default to ForcePlain false and CustomPars true;
those that set MultiPar to false (or don't set it, since that's the default)
will have CustomPars false and ForcePlain true. If that's wrong, the right
tag can be added, but it must be AFTER the MultiPar tag, since MultiPar will
reset CustomPars and ForcePlain, as described in stdinsets.inc.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26759 a592a061-630c-0410-9148-cb99ea01b6c8
- remove the template for elsart, as this class is obsolete since elsarticle was released (Elsevier does no longer accept publications with elsart.)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26710 a592a061-630c-0410-9148-cb99ea01b6c8
* InsetInfo.cpp (InsetInfo): derive from InsetCollapsable instead of
InsetText, so that we can use InsetLayout. Should be reverted when the
layout stuff is migrated to InsetText or some lower level.
(initTranslator, nameTranslator): moved outside of the class.
(name, neverIndent): added.
(draw, setMouseHover): removed.
(updateInfo): cleanup and use layout
(read, setInfo): make sure to reset layout.
* lib/layouts/stdinsets.inc: add layouts for the various Info insets.
These are used for both display and output.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26646 a592a061-630c-0410-9148-cb99ea01b6c8
- handle case where natbib is loaded internally by a class, but still plain cite commands
have to be output (bug 5182)
* lib/revtex4.layout:
- this is such a case.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26298 a592a061-630c-0410-9148-cb99ea01b6c8
theorems-ams module, which is what most users will want. A later commit will allow users also
to "exclude" this module, in case they wanted to do that.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25880 a592a061-630c-0410-9148-cb99ea01b6c8
* theorems.inc:
- better definition of cases environment, as suggested by Russ Woodroofe and Paul Rubin.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25699 a592a061-630c-0410-9148-cb99ea01b6c8
* beamer.layout:
- let lyxcode start a new paragraph, since it changes the alignment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25627 a592a061-630c-0410-9148-cb99ea01b6c8
- Use styleguide-conforming headings in the APA layout (bug 4827).
* src/Buffer.cpp:
- file format change to 333.
* lib/lyx2lyx/lyx_1_6.py:
- convert obsoleted layouts.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24694 a592a061-630c-0410-9148-cb99ea01b6c8
- Fix LaTeX errors triggered by switching from ams article to ams plain
article (patch by Paul Rubin and me).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24692 a592a061-630c-0410-9148-cb99ea01b6c8
* lib/layouts/scrarticle-beamer.layout:
* lib/Makefile.am:
* development/scons/scons_manifest.py:
- new layouts that support beamerarticle.cls
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24289 a592a061-630c-0410-9148-cb99ea01b6c8
stdinsets: use the new colors to allow the users to customize them
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23029 a592a061-630c-0410-9148-cb99ea01b6c8
See in particular comment 6.
We forcibly load stdinsets.inc unless the TextClass declares:
Provides stdinsets 1
There isn't really any such package, of course. We're just using this
(per a suggestion by JMarc) to say we've loaded relevant info about the
standard insets.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22802 a592a061-630c-0410-9148-cb99ea01b6c8
- file format change
- new example files and an example address database
- remove ugly hack from scrlttr2.layout and fix bug 4529
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22764 a592a061-630c-0410-9148-cb99ea01b6c8
directing to use memoir's capitalized latex macros.
* src/LaTeXFeatures.cpp (getPackages): act on feature "SetSpace".
* src/output_latex.cpp (TeXOnePar): ditto
* lib/layouts/memoir.layout: provide feature SetSpace, indicating that
memoir provides the setspace functionality, but with a different syntax.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22551 a592a061-630c-0410-9148-cb99ea01b6c8
The changes that accomplish this part are in ModuleList.{h,cpp}, configure.py, and the *.module files themselves. This is a format change, and the lyx2lyx is in those files.
By itself, that change would not be major, except for the fact that we do not want the module to be represented in the UI by its filename---e.g., theorems-std---but rather by a descriptive name, such as "Theorems". But that change turns out to be wholly non-trivial. The mechanism for choosing modules was the same as---indeed, was borrowed from---that in GuiCitation: You get a list of modules, and choosing them involves moving strings from one QListView to another. The models underlying these views are just QStringListModels, which means that, when you want to know what modules have been selected, you see what strings are in the "selected" QListView. But these are just the descriptive names, and we can't look up a module by its descriptive name if it's been translated. That, indeed, was the whole point of the change to the new representation.
So, we need a more complicated model underlying the QListView, one that will pair an identifying string---the filename minus the extension, in this case---with each item. This turns out not to be terribly difficult, though it took rather a while for me to understand why it's not difficult. There are two parts:
(i) GuiSelectionManger gets re-written to use any QAbstractListModel, not just a QStringListModel. This actually seems to improve the code, independently.
(ii) We then subclass QAbstractListModel to get the associated ID string, using the Qt::UserRole slot associated with each item to store its ID. This would be almost completely trivial if QAbstractListItem::itemData() included the QVariant associated with this role, but it doesn't, so there are some additional hoops through which to jump.
The new model, a GuiIdListModel, is defined in the files by that name. The changes in GuiSelectionManger.{h,cpp} make it more abstract; the changes in GuiDocument.{h,cpp} adapt it to the new framework.
I've also updated the module documenation to accord with this change.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22501 a592a061-630c-0410-9148-cb99ea01b6c8
This is Part I: The changes to the layout files and modules. Part II, still
to come, will involve lyx2lyx to help people who were using the older classes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22461 a592a061-630c-0410-9148-cb99ea01b6c8
None of the extant modules require any other modules, but the Theorem modules all exclude one another. (See the screenshot.) When I modularize the AMS classes---that is the next task---we'll have requires.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22456 a592a061-630c-0410-9148-cb99ea01b6c8
- require chess (instead of manually loading in the preamble).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22420 a592a061-630c-0410-9148-cb99ea01b6c8
The package ifthen needs to be added to LaTeXConfig.lyx. I'll do this when that file can be opened again.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22419 a592a061-630c-0410-9148-cb99ea01b6c8
* src/TextClass{cpp,h}:
- implement Requires tag for class and InsetLayout.
* src/Layout.{cpp,h}:
- implement Requires tag for layouts.
- increase layouts format to 6.
* src/Paragraph.cpp:
- request required features for paragraph layouts.
* src/LaTeXFeatures.cpp:
- add some packages needed by modules.
- remove Preamble method for InsetLayout. This is now done
in InsetFlex::validate.
* src/BufferParams.cpp (validate):
- request required features for the class.
* src/insets/InsetLayout.h:
- new member "requires".
* src/insets/InsetFlex.{cpp,h}:
- implement validate method and request required features and preamble snippets.
* lib/layouts/*.{layout,module,inc}:
- increase layouts format to 6.
- use Requires tags in some modules (more can be done later).
* lib/doc/Customization.lyx:
- document Requires tag.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22414 a592a061-630c-0410-9148-cb99ea01b6c8
(entry for the LaTeXConfig.lyx file follows when bug 4460
http://bugzilla.lyx.org/show_bug.cgi?id=4460
is fixed)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22393 a592a061-630c-0410-9148-cb99ea01b6c8
* lib/layouts/linguistics.module:
- a new module with some linguistics support.
* lib/doc/examples/linguistics.lyx:
- some documentation.
* lib/chkconfig.ltx:
* lib/doc/LaTeXConfig.lyx:
- add packages covington, csquotes and enumitem.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22230 a592a061-630c-0410-9148-cb99ea01b6c8
- memoir.cls provides framed.sty.
* src/LaTeXFeatures.cpp:
- also output the shadecolor definition if framed.sty
is provided by a class.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21947 a592a061-630c-0410-9148-cb99ea01b6c8
in order to avoid having sections numbered as 0.X instead of simply X.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21225 a592a061-630c-0410-9148-cb99ea01b6c8
* layouts/amsmaths.inc: do not use the notation @Section@ for
LabelString.
* layouts/ijmpc.layout: use \thefoo instead of \arabic{foo}. The
classes ijmpc and ijmpd are now very similar, and one of them could
be made to include the other.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21179 a592a061-630c-0410-9148-cb99ea01b6c8
* layouts/amsmaths.inc: make sure that the preamble of the Theorem
layout is output when using other theorem like layouts that
need its counter (bug 4282).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21174 a592a061-630c-0410-9148-cb99ea01b6c8
* lib/layouts/foils.layout:
* lib/layouts/powerdot.layout:
* lib/layouts/slides.layout:
- put slides/foils in the TOC/outliner. This fixes bug 78 [sic!].
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21055 a592a061-630c-0410-9148-cb99ea01b6c8
* lib/layouts/ams*.inc:
- updates from Paul A. Rubin.
Maybe some tweaks for 1.6 are still needed (e.g. counters).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20496 a592a061-630c-0410-9148-cb99ea01b6c8
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
* numarticle.inc:
* numreport.inc:
* stdcounter.inc:
* stdsections.inc:
* stdstarsections.inc:
* stdclass.inc:
* scrbook.layout:
* amsmath.inc: adapt: remove most of the LabelString in layouts,
add the necessary stuff to counters.
* lib/doc/Customization.lyx: document the new stuff.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19604 a592a061-630c-0410-9148-cb99ea01b6c8
* src/insets/InsetFoot.cpp (updateLabels): number the footnote if
(1) the footnote counter exists and (2) it is not in a title
layout
* lib/layouts/stdcounters.inc: add a footnote counter.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19524 a592a061-630c-0410-9148-cb99ea01b6c8
This means:
- added subsection style in moderncv.layout
(I had to promise to JMarc when I added the moderncv support to add this as soon as the new noderncv version is out.)
- actualize preamble of modernCV.lyx to make it compile with the new version
- better explanation of customization possibilities in the preamble of modernCV.lyx
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18808 a592a061-630c-0410-9148-cb99ea01b6c8
* lib/layouts/IEEEtran.layout: Add a proper definition to the
preamble when using the MarkBoth environment (fix bug 3510).
Allow inserting an optional argument for theorem like environments.
Remove white space from begin of line in preamble stuff.
* lib/templates/IEEEtran.lyx: Reintroduce the MarkBoth environment
in the document body thanks to the fix above. Use optional argument
instead of ERT in Theorem environment. Use the new --Separator--
environment for splitting biography environments.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18767 a592a061-630c-0410-9148-cb99ea01b6c8
faced some problems with trailing spaces. The quotes turned out to be
a good means to avoid these problems
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17807 a592a061-630c-0410-9148-cb99ea01b6c8
* src/LaTeXFeatures.C (mustProvide): new method; returns true when
isRequired is true and the feature is not provided by the
textclass.
(getPackages, getLyXSGMLEntities): use mustProvide when relevant.
* src/bufferparams.C (getEngine):
* src/buffer.C (validate): adapt to change below.
* src/lyxtextclass.C (read): replace tags ProvidesNatbib,
ProvidesMakeidx, ProvidesUrl and ProvidesAmsmath by a generic
"Provides".
(provides): take a string as argument.
* lib/scripts/layout2layout.py (convert): convert "ProvidesXxx" tags
to "Provides xxx".
* lib/layouts/*: update to format 4.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17740 a592a061-630c-0410-9148-cb99ea01b6c8