Commit Graph

1027 Commits

Author SHA1 Message Date
Uwe Stöhr
7e69ac220d tex2lyx: support for KOMA-script's \caption* commands
- To my knowledge tex2lyx supports now all caption constructs provided by LyX.
- InsetArgument is correct here, I therefore deleted the FIXME.
2014-12-01 02:57:12 +01:00
Jean-Marc Lasgouttes
8d6d21c6d9 Add new variables lyx_build_date/time
These are now in version.cpp. The build machinery should therefore make sure
that version.cpp is recompiled at every compilation.

These variables are now referred to by the other places that made use of __DATE__ and __TIME__.
2014-11-25 18:58:35 +01:00
Uwe Stöhr
bfc4af2d01 tex2lyx/text.cpp: add missing part of a comment 2014-11-25 00:53:35 +01:00
Uwe Stöhr
1427b6fe31 tex2lyx: support for glue lengths in InsetSpace 2014-11-25 00:50:39 +01:00
Uwe Stöhr
489cdae255 tex2lyx: support relative lengths in \vspace and \hspace 2014-11-23 04:56:47 +01:00
Uwe Stöhr
c2e0f22385 tex2lyx/Preamble.cpp: add support for all \defskip lengths
- support for percentage length was missing and the fix is really that simple
2014-11-23 03:28:07 +01:00
Uwe Stöhr
02b2cd50ed tex2lyx/TODO.txt: \=*{char} is already supported by tex2lyx 2014-11-23 01:30:13 +01:00
Uwe Stöhr
d179ef455c tex2lyx/TODO.txt: the UGM fonts are already fully supported 2014-11-23 00:40:47 +01:00
Uwe Stöhr
2a1ab8b6f0 tex2lyx/Preamble.cpp: whitespace fix
- revert unnecessary change from previous commit
2014-11-20 02:03:06 +01:00
Uwe Stöhr
5c9667d8b8 tex2lyx: support for the libertine fonts
- all libertine font variants are now supported
2014-11-20 02:01:05 +01:00
Uwe Stöhr
ec84cbfb44 tex2lyx: support for \item with opt arg in itemize environment 2014-11-11 01:20:03 +01:00
Uwe Stöhr
20cfef458f tex2lyx/TODO.txt: update file and add information 2014-11-11 01:06:51 +01:00
Uwe Stöhr
9eae2b141d test-insets.lyx.lyx: forgot to commit this in r471889e0 2014-11-10 03:34:01 +01:00
Uwe Stöhr
73f2b01678 tex2lyx: support for bibtopic
can also go to branch
2014-11-07 03:29:53 +01:00
Uwe Stöhr
471889e0db tex2lyx/text.cpp: support for \nameref
\nameref is not recognized

should be backported to branch
2014-11-07 01:58:06 +01:00
Uwe Stöhr
b119f849d7 tex2lyx/Preamble.cpp: support 2 math fonts
- support for kurier and iwona as math font
can also go to branch
2014-11-07 01:28:42 +01:00
Kornel Benko
5a6020ea15 Update file formats of test files 2014-09-04 12:14:47 +02:00
Kornel Benko
90717df577 Cmake tex2lyx tests: Take care of initialized userdir
If we are testing tex2lyx the first time, then the userdir
is empty. We call now configure.py to initalize in case it is needed.
The algorithm to detect if reconfigure is needed mimics the lyx behaviour.
2014-09-03 21:21:05 +02:00
Kornel Benko
08fa62396b Add some missing files to autoconf's dist 2014-08-31 15:23:28 +02:00
Kornel Benko
6c7b5b12c7 Add cmake files to autoconf's dist 2014-08-31 15:21:20 +02:00
Enrico Forestieri
4bdeae2733 Update autotools for building with Qt5.
The option --enable-qt5 allows configuring for Qt5. The default is Qt4.
Nothing special is done with respect to Qt4, apart from pulling in the
correct libraries. Indeed, other than the core and gui libraries, now
also the concurrent and widgets libraries are needed.
2014-07-19 03:34:28 +02:00
Enrico Forestieri
b60b505fd8 Fix import of latex documents with scaled fonts. 2014-07-11 11:21:45 +02:00
Georg Baum
98fc5e518f Support new languages in tex2lyx
I forgot that this was part of the file format update as well.
Also fix a mixup of "english" and "uppersorbian".
2014-07-10 22:15:34 +02:00
Georg Baum
1a073ea416 Missing file format bis from 0c3b88e3 2014-07-10 21:59:17 +02:00
Jean-Marc
93a43742a5 Fix a bunch of small performance issues spotted by cppcheck
Most of these are about passing const strings parameters as references.
2014-07-05 19:13:10 +02:00
Kornel Benko
3b14de740d Cmake build: Symplify use of linking optional libraries found via find_package 2014-06-12 19:02:29 +02:00
Kornel Benko
2b0511510a Cmake build: Added magic library to some link commands.
Needed due to the use of magic_(open|load|error|file|close) after recent changes.
2014-06-12 07:49:17 +02:00
Peter Kümmel
080fca85a8 build with mingw on Windows and Linux 2014-06-07 08:06:13 +02:00
Georg Baum
5dc9568f8d Native support for \smash[t] and \smash[b]
This is a follow-up of bug #8967. The implementation is self-explaining, the
only part which needs a comment is lyx2lyx: Since a 100% correct solution is
not possible, it has been decided not to switch amsmath off in the forward
conversion if no other ams command than \smash[t] and \smash[b] is used, but
to consider it a bug that older versions do not load amsmath automatically for
these commands. In the backward direction it is easy to keep the document
compilable, so just do that.
2014-05-27 22:13:58 +02:00
Georg Baum
3c1b79dd5b Update tex2lyx test references
This is needed after c668ebf61. tex2lyx itself was already updated, and I
verified that the new output is correct.
2014-05-12 21:23:47 +02:00
Enrico Forestieri
c668ebf611 Fix bugs #8546 and #9055, and introduce new separator inset.
The algorithm used for breaking a paragraph in LaTeX export is changed
for avoiding spurious blank lines causing too much vertical space.
This change is tied to the introduction of a new inset (with two
different specializations) helping in either outputing LaTeX paragraph
breaks or separating environments in LyX. Both of the above goals were
previously achieved by the ---Separator--- layout and can now be
accomplished by the new inset in a more natural way. As an example,
after leaving an environment by hitting the Return key for two times,
a third return automatically inserts a parbreak inset, which is
equivalent to the old separator layout, i.e., it also introduces a
blank line in the output. If this blank line is not wanted, the
parbreak separator can be changed to a plain separator by a right
click of the mouse. Of course, an environment can still be separated
by the following one by using the Alt+P+Return shortcut (or the
corresponding menu key), but now the plain separator inset is used
instead of the old separator layout, such that no blank line occurs in
the LaTeX output.

Old documents are converted such that the LaTeX output remains unchanged.
As a result of this conversion, the old separator layout is replaced by
the new parbreak inset, which may also appear in places where the old
algorithm was introducing blank lines while the new one is not.
Note that not all blank lines were actually affecting the LaTeX output,
because a blank line is simply ignored by the TeX engine when it occurs
in the so called "vertical mode" (e.g., after an alignment environment).
The old ---Separator--- layout is now gone and old layout files using it
are also automatically converted.

Round trip conversions between old and new format should leave a document
unchanged. This means that the new behavior about paragraph breaking is
not "carried back" to the old format. Indeed, this would need introducing
special LaTeX commands in ERT that would accumulate in roundtrip
conversions, horribly cluttering the document. So, when converting a
modified document to old formats, the LaTeX output may slightly differ in
vertical spacing if the document is processed by an old version of LyX.
In other words, forward compatibility is guaranteed, but not backwards.
2014-05-10 23:25:11 +02:00
Georg Baum
351363c599 Fix C++11 test
Thanks Vincent for noticing. The old test was slightly off, the C++98 standard
guarantees that __cplusplus is defined as 199711L, not 19971L.
2014-04-29 21:00:02 +02:00
Georg Baum
0c0e16c61c Make iparserdocstream more like std::istream
In C++98 std::istream does not use an operator bool(), but an operator
void*() instead, which prevents some unwanted conversions (this is one
possible implementation of the safe bool idiom).
In C++11 std::istream uses explicit operator bool, which prevents the unwanted
conversions using a new language feature.

This change does not have any effect on correct code, but prevents some
mistakes.
2014-04-22 22:03:31 +02:00
Jean-Marc Lasgouttes
5c32dc85d5 Fix various warnings issued by clang++.
* remove unused class TexStream.

* remove unused virtual method Inset::cellXOffset

* remove second argument of FileDialog constructor, which was actually
  not used

* remove some dead local code

* remove some unused private members of classes

* in InsetMathNest::updateBuffer, fix the logic of a test
2014-04-22 00:04:04 +02:00
Benjamin Piwowarski
14de3aa49b CMake install and bundling improvements (esp. OS X)
This patch improves the cmake bundling process:
- reworked bundle handling for OS X: only when installing resources are copied, otherwise
only the smallest bundle is built
- on OS X, the utility programs (tex2lyx) are now installed in the right location
- it removes some unneeded BUNDLE DESTINATION
- it provides a basic support for QT plugins inclusion
- it properly builds a disk image on OS X (only the background image is missing)
- it fixes the library paths for all executables (not only LyX)
- Use the COPYING file for cmake install license
2014-04-21 11:51:04 -04:00
Georg Baum
07afd76b7c Fix compilation with libc++
libc++ (http://libcxx.llvm.org/) is used on OS X with newer XCode.
The patch is from Benjamin Piwowarski <benjamin.piwowarski@lip6.fr>, I only
added more comments.
The changes regarding implicit conversion to bool of std::iostream work
because both the C++98 and C++11 standards guarantee that boolean evaluation
of streams returns !fail(). See e.g.
http://stackoverflow.com/questions/1334858/why-dont-iostream-objects-overload-operator-bool
for details.
2014-03-04 23:27:57 +01:00
Georg Baum
89c7d0eea3 Remove unsupported optional argument.
Thanks Jürgen for insisting. The \caption* command of long tables does indeed
not support optional arguments.
2014-02-25 20:05:07 +01:00
Kornel Benko
3369de6d7c Added test for algo2e tex2lyx conversion
Testfile from Jürgen Spitzmüller
2014-01-28 13:58:28 +01:00
Juergen Spitzmueller
f76a8c8ab1 tex2lyx: support algorithm2e (#8728) 2014-01-28 12:44:22 +01:00
Georg Baum
99cdabd206 Fix writer2latex quote handling (bug #8903)
writer2latex surrounds quotes by braces which we skip to avoid useless ERT.
I broke this in 25fe87e5 which made Parser::next_next_token() not recognize
that it needed to parse one more token. If we had a unit test for the Parser
class it would probably have detected that. Now we have at least a test for
the special quote.
2013-12-11 21:54:26 +01:00
Georg Baum
14a5d07df6 Fix encoding for copying LaTeX from clipboard
If we call tex2lyx on a temporary file created from the clipboard, the
file is always in utf8 encoding, without any temporary changes, even if it
contains encoding changing LaTeX commands. Therefore, we must tell tex2lyx
to use a fixed utf8 encoding for the whole file, and this is done using the
new latexclipboard format. Previously, tex2lyx thought the encoding was
latin1.
As a side effect, the -e option is now also documented in the man page.
2013-11-11 21:52:14 +01:00
Vincent van Ravesteijn
c75db6757a Remove the TEX2LYX define when compiling tex2lyx 2013-09-29 15:26:23 +02:00
Jean-Marc Lasgouttes
72c13323d8 Remove dependency on NO_LAYOUT_CSS #define in Layout.cpp
Remove all traces of this #define.
2013-09-29 15:26:15 +02:00
Jean-Marc Lasgouttes
fa5519d4f0 Move tex2lyx dummy implementations in their own file.
Also try to document their use.
2013-09-29 15:26:13 +02:00
Jean-Marc Lasgouttes
9a1e972edb Remove dependency on TEX2LYX #define in ModuleList.cpp 2013-09-29 15:26:12 +02:00
Jean-Marc Lasgouttes
aef31d666e Remove dependency on TEX2LYX #define in Lexer.cpp 2013-09-29 15:26:10 +02:00
Georg Baum
592deaa423 Remove layout and tex2lyx tests from make check
These tests need a built and configured LyX, so they do not work in the
distcheck target. They can now be called with make alltests.
2013-09-09 21:00:11 +02:00
Kornel Benko
f2553ebf6c Cmake build tests: Threadsafety and test-labeling
The tests are now more robust if ctest uses '-j' (number of threads) parameter.
a.) keytests are running in sequence and in one thread only, no other thread running
b.) tex2lyx tests are locking in respect to each other
c.) Test gets one or more labels, so that we can select
        ctest -L url
  to run tests labeled url
d.) New macro settestlabel() to add labels to a test
2013-09-07 09:25:02 +02:00
Kornel Benko
29381d2b52 Copyright 2013-08-26 22:06:01 +02:00
Kornel Benko
e6f2598323 Cmake build tests: Unify use of userdir
Forgotten in commit 788e2b1ac8
2013-08-25 11:45:26 +02:00