It was broken in two ways: It was not threadsafe, and it did never detect
any recursion, since the counter was decremented for each non-recursive call
and never incremented again.
Normally, we do not load babel when English is the only language. However, if we check if babel is used from Font::validate, we need to surpass this test, else no secondary language is registered if English is the main language.
Of course this will only work if output_changes was true when creating the
.tex file.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40139 a592a061-630c-0410-9148-cb99ea01b6c8
Now you can also require a|b|c, and if any of the features is already used,
no other one will be loaded. The first feature wins if none is already used.
This is required for a part of bug #7811.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39884 a592a061-630c-0410-9148-cb99ea01b6c8
We might want to rename the babelpreamble tokens to something more general.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36773 a592a061-630c-0410-9148-cb99ea01b6c8
This allows us to remove some ugly hardcoding of languages in the source.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36292 a592a061-630c-0410-9148-cb99ea01b6c8
borrow the LatexFeatures::addPremableSnippet() method to do it.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32301 a592a061-630c-0410-9148-cb99ea01b6c8
bring it into line with the handing of Layout's preamble and requires. This
will make information about used InsetLayout's avaiable elsewhere.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29914 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
Later, this can be replaces by a backpointer approach, as proposed at bugzilla (note that there are already similar cases such as InComment or InTableCell, so a backpointer approach would need to adapt the OutputParams methos anyway).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28382 a592a061-630c-0410-9148-cb99ea01b6c8
hope there are only conforming implementaions out there ;-}
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21312 a592a061-630c-0410-9148-cb99ea01b6c8
* Layout.h:
- name_, obsoleted_by_, depends_on_ are now docstrings.
All other changes results from the above string -> docstring changes. In particular, we now try to translate the layout names only if possible (i.e. if they are ASCII only).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19042 a592a061-630c-0410-9148-cb99ea01b6c8
Introduces new encodings for the CJK-languages.
The CJK-languages can now be selected from LyX's menu.
For remaining small problems, see the thread "Help needed for bug 3043" on the devel-list.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18216 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
* src/LaTeXFeatures.[Ch]
(LaTeXFeatures::addExternalPreamble): rename to addPreambleSnippet,
since this is not specialized for InsetExternal at all
* src/insets/insetexternal.C
(InsetExternal::validate): reflect name change above
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16784 a592a061-630c-0410-9148-cb99ea01b6c8
* src/LaTeXFeatures.[Ch]: replace nice_ by runparams_
* src/insets/insetexternal.C
(InsetExternal::validate): Use the correct template for the desired
output format
* src/insets/insetgraphics.C
(InsetGraphics::prepareFile): Record the needed files for "latex"
or "pdflatex" format, dependant on the desired output format
* src/insets/insetinclude.C
(InsetInclude::latex): ditto
* src/BufferView_pimpl.C
(BufferView::Pimpl::getStatus): adapt to LaTeXFeatures changes
* src/paragraph_pimpl.C
(Paragraph::Pimpl::simpleTeXSpecialC): ditto
* src/buffer.C
(Buffer::makeLaTeXFile): ditto
(Buffer::makeLinuxDocFile): ditto
(Buffer::makeDocBookFile): ditto
* src/paragraph.C
(Paragraph::simpleTeXOnePar): ditto
* src/exporter.C
(Backends): Add "pdflatex" backend format
(Exporter::Export): set runparams.flavor correctly for "pdflatex" format
* lib/external_templates
(RasterImage): Use "pdflatex" format in PDFLaTeX template
(XFig): ditto
(ChessDiagram): Add PDFLaTeX template
(Date): ditto
* lib/configure.py: Add "pdflatex" format
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13520 a592a061-630c-0410-9148-cb99ea01b6c8