Commit Graph

338 Commits

Author SHA1 Message Date
Juergen Spitzmueller
398b1a450a properly validate unicode-math 2012-09-24 13:56:37 +02:00
Juergen Spitzmueller
8bf5d4b461 Very basic support for unicode-math
With non-TeX fonts, you can select a 'Non-TeX Font Default' math font, which simply loads unicode-math without actually selecting a math font, this then uses the default math otf font, currently Latin Modern. Other fonts still need to be set manually in the preamble, via \setmathfont.

The implementation suppresses unneeded package requests from unicodesymbols, but the output still uses macros instead of full unicode (both is possible with unicode-math).

The whole thing is a proof of concept, and it needs to be tested. I have tested it with the math manual, which compiles and seems to display correctly if I remove some hardcoded package loadings. OTOH I have not much experience with math.

This addresses #7449 partly.
2012-09-24 13:19:25 +02:00
Vincent van Ravesteijn
29e64597d0 Fix bug #6389: Make columns RTL in RTL document 2012-09-22 23:15:53 +02:00
Juergen Spitzmueller
8f9898994d Basic UI for math (TeX) fonts
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.
2012-09-22 17:44:00 +02:00
Juergen Spitzmueller
89df1de885 No need to pass these 2012-09-22 12:14:24 +02:00
Juergen Spitzmueller
f4261030e2 Implement Provides tag to LaTeXFonts
This allows to suppress conflicting packages, such as amssymb with mathdesign.
2012-09-19 15:46:19 +02:00
Juergen Spitzmueller
a9ad5c3337 Factor out duplicated code 2012-08-18 11:57:16 +02:00
Juergen Spitzmueller
03943ef730 Issue a warning if a LaTeX font is not available
Also output font in source preview notwithstanding availability.
2012-08-18 09:58:19 +02:00
Juergen Spitzmueller
869b84aef9 Clean up LaTeX font handling (#4999)
The LaTeX font information are now centralized and outsourced. This removes a lot of hardcoding and duplication and makes it easier to support new LaTeX fonts.
2012-08-16 13:23:39 +02:00
Juergen Spitzmueller
6c1326cdeb Rework language package detection
This puts the diverse use[LangPack] function into one (less error-prone) function and differentiates the custom package from the babel case
2012-07-23 14:34:24 +02:00
Juergen Spitzmueller
508dd27e44 Fix thinko 2012-07-23 11:39:41 +02:00
Juergen Spitzmueller
566a5f2b75 Fixes to the language package call
* 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.
2012-07-23 11:36:55 +02:00
Juergen Spitzmueller
11f7efe2eb Set the appropriate quote style when switching the main language 2012-07-01 11:27:42 +02:00
Juergen Spitzmueller
507302b444 Whitespace 2012-07-01 08:38:54 +02:00
Juergen Spitzmueller
5eb9ece39e Properly escape splitindex shortcut and try to encode splitindex name properly (part of bug #8227) 2012-06-30 13:34:49 +02:00
Vincent van Ravesteijn
8941e980b9 BufferParams: Remove superfluous '\n'
This extra '\n' seems to have been an unintended side-effect of d7eaaba9 (Juergen Spitzmueller, "support for CJK font argument"; Jun 5 2008).
2012-06-25 11:28:38 +02:00
Juergen Spitzmueller
f42c9e50df fix bug #8211: \setotherlanguage not set for non-babel languages 2012-06-23 13:50:40 +02:00
Uwe Stöhr
1ea2abc77f drop support for ArmTeX as its non-standard armscii8 encoding was quite unusable in real life, use polyglossia/XeTeX instead as clean solution via Unicode; fileformat change; fixes the second part of bug #8026 2012-06-22 01:12:43 +02:00
Juergen Spitzmueller
4698ebd2b7 Let getOutputFlavor return the correct flavors for the latex varieties 2012-06-09 15:11:34 +02:00
Juergen Spitzmueller
f71a55a279 some less language hardcoding 2012-06-09 11:32:34 +02:00
Juergen Spitzmueller
a2f32db171 avoid empty class options 2012-06-08 19:48:24 +02:00
Juergen Spitzmueller
040fb73b9c Do not hardcode polyglossia-only languages 2012-06-08 12:54:57 +02:00
Uwe Stöhr
7eca5d94d1 - support a bunch of new languages (fileformat change)
- tex2lyx support for
  - fontspec fonts
  - polyglossia
2012-06-08 02:37:36 +02:00
Richard Heck
b7ac2d69e7 Allow LyX format to be written to View>Source window. 2012-06-05 10:24:15 -04:00
Richard Heck
ead697d4b6 Deal with memory issue reported some time ago in connection with DocumentClass
objects. The problem that led to the leak is that these objects can be held in
memory long after the Buffer that created them is gone, mostly due to their
use in the CutStack. So they were previously held in a storage facility, the
DocumentClassBundle. Unfortunately, they were now being created too often,
especially by cloning. It's not really a leak, because they're accessible, but
we weren't ever destroying them.

This new approach uses a shared_ptr instead.

Thanks to Vincent for pointing out const_pointer_cast.
2012-05-31 12:34:29 -04:00
Juergen Spitzmueller
9fc92f783c Load bibtopic after hyperref (bug #8005) 2012-05-29 13:25:30 +02:00
Jean-Marc Lasgouttes
a756403301 "Performance" fixes suggested by cppcheck
While cppcheck did not turn out any suspicious error messages, using
the "performance" flag highlighted several nitpicks in three categories
 * do not use it++ for iterators, ++it is better
 * do not use size() to test for emptyness, empty() is here
 * do not use "const T" as a function parameter, "const & T" is better

I doubt that any of these is a real performance problem, but the code is cleaner anyway.
2012-05-28 22:42:44 +02:00
Georg Baum
b86c984bf4 Disentangle amsmath and amssymb loading.
This is needed if you load a font package incompatible to amssymb manually
(see bug #5058).
2012-05-06 20:49:49 +02:00
Richard Heck
fa0c2d9631 Show backends rather than formats in the View>Source combo box.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40900 a592a061-630c-0410-9148-cb99ea01b6c8
2012-03-09 22:24:20 +00:00
Richard Heck
02f28635d3 Change the backends() routine so it only gives us backends that
are appropriate for the current document.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40899 a592a061-630c-0410-9148-cb99ea01b6c8
2012-03-09 22:24:17 +00:00
Julien Rioux
1e947e3a18 Move the citation engine machinery to layouts.
Add a new layout syntax CiteEngine to define the citation commands
available for a given citation engine.

Also extend the CiteFormat syntax to allow more customization. This
mechanism, previously used to produce bibliography entries in the
citation GUI based on the BibTeX entrytype, is now also used to
produce the textual labels for citation insets in the buffer view.

Thus citation styles are almost completely customizable by modules.
Modules for the basic, jurabib and natbib engines are implemented.

Layout format incremented to 37.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40820 a592a061-630c-0410-9148-cb99ea01b6c8
2012-03-01 00:41:30 +00:00
Julien Rioux
e3f65fd088 Buffer param \cite_engine_type (authoryear|numerical).
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
2012-01-09 13:16:38 +00:00
Georg Baum
45c831306d Fix bug #7013: Wrong paper size passed to dvips
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40590 a592a061-630c-0410-9148-cb99ea01b6c8
2012-01-08 17:00:33 +00:00
Georg Baum
6332326cf6 Load mathtools.sty automatically (bug #7949) and make lyx2lyx reversion
more robust.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40574 a592a061-630c-0410-9148-cb99ea01b6c8
2012-01-05 20:53:48 +00:00
Georg Baum
bf3f3f9816 Second step towards a more generic package off/auto/on handling:
File format change


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40563 a592a061-630c-0410-9148-cb99ea01b6c8
2012-01-03 21:26:09 +00:00
Georg Baum
6be6d9a947 First step towards a more generic package off/auto/on handling:
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
2012-01-03 20:51:07 +00:00
Julien Rioux
0f30a858f8 Add a document-wide default bibliography style \biblio_style.
This holds the name of a BibTeX style file for now. Any BibTeX inset
can set the style to "default" to use the document-wide style.

LyX format incremented to 420.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40484 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-12 14:40:34 +00:00
Georg Baum
bb0432d74a Beautify output of \usepckage statements (each statement is on its own line
now) and move more packages to the new exclude mechanism.
The remaining ones are not so easy.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40442 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-08 20:05:51 +00:00
Richard Heck
5a7672adec Fix bug #5805 and similar requests. Adds a document setting that
tells LyX not to show BLOCK text as justified, but still keeps
the usual paragraph indentation.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40427 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-07 22:33:25 +00:00
Julien Rioux
dfdcc56cba Remove extra whitespace.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40346 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-03 22:15:11 +00:00
Richard Heck
8656d7fda3 Whitespace.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40246 a592a061-630c-0410-9148-cb99ea01b6c8
2011-11-23 18:23:11 +00:00
Richard Heck
256e16d0c2 Fix the outstanding part of #7764, which involves sorting the file lists
under Document>Settings>Output.

It turns out that we always want this list to be sorted when we get it,
so we can sort it in BufferParams rather than in three different places.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40101 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-30 20:02:14 +00:00
Vincent van Ravesteijn
269695aa5f Remove the prefence default_papersize
- This preference was used for specifying the papersize to xdvi, dvipdfm,
  dvips. However, I can't seem to see any effect on the result.

- The papersize should instead be defined in the document settings.

- The global papersize default was misused to also change the tex
  output by specifying the papersize as if it was specified in the
  document settings. This caused the same lyx document to be outputted
  differently on different pcs.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40028 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-27 11:48:16 +00:00
Georg Baum
6954c542fb Generalize the esintoramsmath requirement:
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
2011-10-18 19:32:02 +00:00
Richard Heck
90635e8caf Typo.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39732 a592a061-630c-0410-9148-cb99ea01b6c8
2011-09-22 16:03:48 +00:00
Uwe Stöhr
30de1c744e - UI support for the LaTeX-package undertilde, fileformat change, fixed the remaining part of bug #6622, Georg already implemented the non-UI support
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39464 a592a061-630c-0410-9148-cb99ea01b6c8
2011-08-10 03:37:33 +00:00
Uwe Stöhr
cc5cc067a0 new export flavor "DVILUATEX", fixes bug #7713, patch from Jürgen
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39457 a592a061-630c-0410-9148-cb99ea01b6c8
2011-08-10 02:23:44 +00:00
Jürgen Spitzmüller
5cbd9cf8d9 * BufferParams.cpp: font name can be non-ASCII! (bug #7569).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38826 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-23 17:14:29 +00:00
Richard Heck
5db4b7eb16 Move a bunch of code from Buffer to BufferParams. The point of this
is contained in the next commit.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38742 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-13 19:39:56 +00:00
Tommaso Cucinotta
c23eef3abf Still addressing #6560: instead of cloning the BufferParams, which might cause
a number of unforeseen issues (like the inheritance of the default master, as
pointed out in http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg168225.html),
now we simply set the language into the search & replace buffers.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38647 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-08 23:51:44 +00:00