This addresses #6543 by adding an option to prevent fonts such as Palatino and Times to automatically adapt the math font (IOW it lets you load the text font only for a bunch of fonts where this is easily possible).
Furthermore it adds an interface to select a specific math font, which is defined in latexfonts. Currently, this is only euler (the only one I know), but if there are other math-only tex fonts, they can be added easily (but note that this changes the file format).
Non-TeX math fonts are not yet supported. Eventually, unicode-math support can use the existing UI, but this is not on my agenda.
The LaTeX font now do not specify simply alternative packages or packages for OT1 encoding etc., but they refer to complete AltFonts (which are not directly accessible via the GUI). This way, alternative fonts can also have options (osf, sc etc.), and they can use all sorts of initializing methods (\usepackage, \setrmfamily etc.).
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.
* Assure that really no language package is called when none is selected.
* Only call global custom package if global is desired.
This is a candidate for branch as well.
Babel settings might contain @ characters. Check for this and wrap the settings into \makeatletter ... \makeatother switches if necessary (see discussion at #8265).
The listings inset and include inset of type listings use two english terms
that are not localized yet: "Listing" for the caption and "Listings" for the
list of listings (not supported natively by LyX yet). The existing layout
translation mechanism has been extended to translate these terms as well:
1) Support [[stuff]] context in lib/layouttranslations
2) Support BabelPreamble and LangPreamble in InsetLayout
3) Use a InsetLayout for InsetInclude of type listings
4) Define BabelPreamble and LangPreamble in the layouts for InsetInclude
and InsetListings
Math commands need it as well as text commands. At the same time, this
further unifies the checking for termination and fixes cases of wrong
output (e.g. for 0x2005).
lyx2lyx: Clean up the convert/revert queue.
LaTeXFeatures: Just add cancel to the list of packages that are
simply used with a \usepackage{} line.
Uwe: In case cancel needs to be loaded after amsmath or something,
please revert my changes to LaTeXFeatures and add a comment
about package ordering to the source. Thanks.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40667 a592a061-630c-0410-9148-cb99ea01b6c8
To avoid duplicity, remove natbib_authoryear and natbib_numerical
and replace them by natbib, and keep track of the engine `type'
in the new \cite_engine_type document setting. This will make it
easier to add more citation engines.
LyX format incremented to 424.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40592 a592a061-630c-0410-9148-cb99ea01b6c8
Internal machinery, no file format change and no UI change yet
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40562 a592a061-630c-0410-9148-cb99ea01b6c8
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
exported documents.
To update the translations from the .po files, run
make ../lib/layouttranslations
from po.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38016 a592a061-630c-0410-9148-cb99ea01b6c8
addition to r37974: if English is used as a secondary language, we have to propose an English translation,
since the original string is in the document's main language!
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37975 a592a061-630c-0410-9148-cb99ea01b6c8
- do not propose translations for bultin floats (they are translated anyway)
- only propose translations for floats if we have something different to the English source
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37974 a592a061-630c-0410-9148-cb99ea01b6c8
blank lines may be inadvertently output. This is achieved by using two
special iomanip-like variables (breakln and safebreakln) in the lyx::
namespace. When they are inserted in the stream, a newline is output
only if not already at the beginning of a line. The difference between
breakln and safebreakln is that, if needed, the former outputs '\n'
and the latter "%\n".
In future, the new class will also be used for counting the number of
newlines issued. Even if the infractrure for doing that is already in
place, the counting is essentially still done the old way.
There are still places in the code where the functionality of the
class could be used, most probably. ATM, it is used for InsetTabular,
InsetListings, InsetFloat, and InsetText.
The Comment and GreyedOut insets required a special treatment and a
new InsetLayout parameter (Display) has been introduced. The default
for Display is "true", meaning that the corresponding latex
environment is of "display" type, i.e., it stands on its own, whereas
"false" means that the contents appear inline with the text. The
latter is the case for both Comment and GreyedOut insets.
Mostly, the only visible effects on latex exports should be the
disappearing of some redundant % chars and the appearing/disappearing
of null {} latex groups after a comment or lyxgreyedout environments
(they are related to the presence or absence of a space immediately
after those environments), as well as the fact that math environments
are now started on their own lines.
As a last thing, only the latex code between \begin{document} and
\end{document} goes through the new class, the preamble being directly
output through odocstream, as usual.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37360 a592a061-630c-0410-9148-cb99ea01b6c8
not break in PDF table of contents (using texorpdfstring).
Uwe, this should allow you to remove some ERT from the documentation.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37164 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 module can be used instead of \usepackage{fixltx2e} in the preamble
to avoid duplicate definitions of \textsubscript.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36550 a592a061-630c-0410-9148-cb99ea01b6c8
- rename \language_package to \language_custom_package
- the bool \language_use_babel is replaced by a more fine-grained selection:
* chose language package automatically (later: babel or polyglossia)
* always use babel (also with XeTeX)
* custom (i.e. use \language_custom_package)
* none (equivalent to former \language_use_babel false)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36407 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
actually, does prettyref, but we should do something here.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36212 a592a061-630c-0410-9148-cb99ea01b6c8
for formatted references. Fixes#2295, in so far as it makes it possible
to translate formatted references.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35623 a592a061-630c-0410-9148-cb99ea01b6c8
technically this package is the same as esint, only for dots instead of integrals -> therefore we can and should handle it the same as esint
-> add "use automatically" checkbox
-> load mathdots if \iddots is inserted
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35251 a592a061-630c-0410-9148-cb99ea01b6c8
- new buffer parameter \boxbgcolor
(I'm still working on the remaining issue #6626 as this affect not only this feature.)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34083 a592a061-630c-0410-9148-cb99ea01b6c8
- new buffer parameter \fontcolor
- the default color is internally black because we have to set a color
- the font color is only used when the user explicitly specified a color
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34042 a592a061-630c-0410-9148-cb99ea01b6c8
- support to change the greyed-out note font color (fixes#3865)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33962 a592a061-630c-0410-9148-cb99ea01b6c8
list revealed that the former is confusing to people. The latter
indicates more clearly what the tag does.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33626 a592a061-630c-0410-9148-cb99ea01b6c8
- fileformat change (lyx2lyx code follows the next days)
- the patch is a joint work of Edwin and me
The patch is huge but the major parts work already. I put it in now as the minor known issues can be solved step by step the next days. I think this is the best solution because collaborating with such large patches already lead to copy/paste bugs.
The known issues are listed here:
http://wiki.lyx.org/Devel/Multirow
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33414 a592a061-630c-0410-9148-cb99ea01b6c8
The problem here is that the metafont sources and tfm files are missing
in normal installations, because the Times Roman Greek fonts are not free
and should be purchased. When the grtimes package is not installed, the
fonts are substitued with cmr glyphs. However, if grtimes is installed
and and the actual fonts are missing, an error is generated. So, we simply
check whether the greek fonts are installed and, if they are not, we
perform the font substitution by ourselves. In this way the error is
avoided whether grtimes is installed or not.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33178 a592a061-630c-0410-9148-cb99ea01b6c8
The problem here is that the metafont sources and tfm files are missing
in normal installations, because the Times Roman Greek fonts are not free
and should be purchased. When the grtimes package is not installed, the
fonts are substitued with cmr glyphs. However, if grtimes is installed
and and the actual fonts are missing, an error is generated. So, we simply
check whether the greek fonts are installed and, if they are not, we
perform the font substitution by ourselves. In this way the error is
avoided whether grtimes is installed or not.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33169 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
The fileformat change is also needed because of our mistake that we load mhchem since LyX 1.6.4 automatically so that files created with LyX 1.6.4 won't compile under LyX 1.6.3. Now at least all files created or opened with LyX 1.7 can be reverted to the fileformat of LyX 1.6.x and can therefore be read by all LyX 1.6.x versions.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31941 a592a061-630c-0410-9148-cb99ea01b6c8
- do not eat space at the beginning of \lyxadded macro (bug 6282).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31692 a592a061-630c-0410-9148-cb99ea01b6c8