Commit Graph

527 Commits

Author SHA1 Message Date
Georg Baum
9b4ee44620 Improve roundtrip of Customization.lyx:
The lstlistings environment is no longer be unknown.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37355 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-28 21:20:48 +00:00
Georg Baum
b2e1eb0dda Clean up parsing of optional arguments:
If an optional argument can be followed by another one, we need to use
getFullOpt(). Otherwise it would not be possible to parse \foo[][bar].
Remove getOptContent to avoid confusion (it does exactly the same as
getArg('[', ']') which is used in most places.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37354 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-28 20:29:06 +00:00
Georg Baum
d3c385de20 Next step towards a working roundtrip of files generated by LyX:
Try to recognize modules.
Again, this is needed because the complete LyX preamble is ignored.
It is not possible to recognize a module in all cases, but at least the simple
ones are handled now. As a prerequisite I also had to revive the filling of
known_environments. This has been removed (probably by accident) some time ago.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37306 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-23 21:10:20 +00:00
Georg Baum
87944eedc7 The roundtrip of the math manual produces a compilable document now:
- translate the arguments of \texorpdfstring, so that the floating footnote
  code gets enabled
- honor the ForcePlainLayout flag of insets like the Index inset
- remove hardcoded \url support, this is handled by the general Flex inset code


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37297 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-22 12:00:33 +00:00
Georg Baum
85d2c53532 handle commands from xargs.sty correctly
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37289 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-21 21:21:58 +00:00
Georg Baum
c0778a3d0e Translate all known box insets. This is needed since the super-clever preamble
parser discards all needed packages like calc.sty or framed.sty, so the
resulting document would be uncompilable with those boxes as ERT.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37287 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-21 18:29:10 +00:00
Georg Baum
7a74bbf06b Ignore \protect if it is directly in front of \LyX{} (otherwise it would
accumulate for each round trip, since LyX  writes \protect if needed)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37214 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-14 20:06:15 +00:00
Georg Baum
cfd6767ec1 Import notefontcolor (one more step towards a working roundtrip for the LyX documentation)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37213 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-14 20:00:55 +00:00
Georg Baum
7c83f74f26 Exclude more conditional commands from preamble parsing:
LyX would output the parsed stuff unconditionally, so we must not translate
it in LyX document settings.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37191 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-12 22:03:15 +00:00
Georg Baum
b8d6c10e6c add list of missing tex2lyx features
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37189 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-12 21:19:01 +00:00
Georg Baum
acd57ccaaf Fix language handling in tex2lyx:
- Add missing babel synonyms (taken from a standard TeXLive 2010 install).
  Some synonyms might still be missing (if they are defined not by babel
  itself, but additional packages). Adding these is now simple: Only
  known_languages and known_coded_languages need to be touched.
- Translate babel language name arguments of \foreignlanguage and
  \selectlanguage to LyX names.
- Translate second argument of \foreignlanguage to LyX.
- Cleanup mixed language names in the preamble parser: Now all checks are
  done with LyX names, not a mix of babel and LyX names. This sets correct
  quotes even if the language as given as an alias.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37188 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-12 21:04:39 +00:00
Georg Baum
f49a526afc Parse Flex insets defined in the layout. This is needed e.g. for
lib/doc/Math.lyx, since tex2lyx swallows the LyX part of the preamble, and
thus \shortcut would not be defined.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37149 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-07 21:04:16 +00:00
Georg Baum
f8f69ca920 math macros do not understand \newcommand* and \renewcommand*
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37148 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-07 20:21:10 +00:00
Georg Baum
6ead3daac9 Fix invalid \size output with no active layout before sectioning environments.
Fix missing \size reset after sectioning environments.
Fix invalid \lang default (use english instead, as in the preamble)
Convert hard coded layout output of caption insets to Context class.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37147 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-07 19:58:31 +00:00
Georg Baum
9ac7fa483d Fix misparsing of \usepackage in
\@ifundefined{textcolor}{\usepackage{color}}{}


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37140 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-06 21:38:26 +00:00
Georg Baum
416d19ff84 hyperref support for tex2lyx
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37138 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-06 20:57:16 +00:00
Georg Baum
006a906858 forgot to declare debugToken() in r37117
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37133 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-06 18:36:03 +00:00
Georg Baum
0f3c4c2f04 Fix several false errors "stray '}' in text" that were caused by
misinterpreting "\}" as "}" when it occured inside a pair of unescaped
braces, like in "\code{@\{*\}r||p\{1in\}@\{*\}}".
The reason for this bug is that Token::character() behaves differently in
tex2lyx than in mathed. See the comment in Parser.h for a more general fix.
For now I played on the safe side and only changed those places where I
definitely know that the old code was wrong.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37117 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-05 20:32:45 +00:00
Georg Baum
8b2ea705df Fix wrong setting of bibinset options if \cite{*} was found.
Improve heuristic for outputting \bibliographystyle: Now it is suppressed
if \bibliography follows immediately, since LyX adds it automatically in that
case.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37066 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-02 18:16:23 +00:00
Georg Baum
5c53dcf88f tex2lyx: Do not swallow a user defined \parindent
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37065 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-02 16:54:58 +00:00
Georg Baum
812c27d793 Improve tex2lyx roundtrip of test-insets.tex:
- Replace special verbatim commands by standard LaTeX, since it would be
  extremely difficult to make tex2lyx understand them)
- Comment duplicated \bibliography{xampl}, since LaTeX cannot handle two
  \bibliography calls
- Fix a regression with spaces after commands, introduced in r36943
- Parse \multicolumn with space/comments between two arguments correctly
- Parse optional arguments correctly if there are space or comments between
  the command and the argument
- Remove duplicate "LyX" phrase handling (I overlooked that in r37052)
- Add new commands created with \let to the list of known commands. This is
  needed to parse the arguments correctly


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37064 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-02 15:39:48 +00:00
Georg Baum
ef10797f59 Also prevent replacement of LyX => \LyX{} if it is part of a word.
The automatic replacement in LyX is pretty broken (see bug 4752).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37055 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-31 11:59:33 +00:00
Georg Baum
bce18bacfc partial man page update (it is still horribly outdated)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37054 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-31 11:57:25 +00:00
Uwe Stöhr
73cdd2547e tex2lyx/preamble.cpp: support for
- polytonic Greek
- Mongolian
- Mexican Spanish

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37053 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-31 07:31:59 +00:00
Georg Baum
3403727940 Translate "\LyX{}" and "LyX" correctly in tex2lyx
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37052 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-30 21:56:55 +00:00
Georg Baum
05bd78904a Fix translation of \pagebreak and \linebreak with optional arguments.
Please don't add new features to tex2lyx without testing.
In this case, the test case was even provided in test-insets.tex.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37051 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-30 21:03:36 +00:00
Georg Baum
d6ccb86f15 fix translation of \nobreakdash in tex2lyx
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37050 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-30 20:38:47 +00:00
Georg Baum
90f795a29e Add -roundtrip argument to tex2lyx for tex->lyx->tex roundtrip testing.
The reasons for doing this in tex2lyx instead of an external script are:
- Correct choice of latex/pdflatex export
- Using the correct LyX executable regardless of running inplace or from an
  installation, or with or without version suffix


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37049 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-30 20:29:33 +00:00
Georg Baum
3cdb7d3062 fix parsing of test document
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37017 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-27 21:12:40 +00:00
Georg Baum
84be0a0db4 fix parsing of \let: tex2lyx must not enclose the arguments with {}.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37016 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-27 20:15:24 +00:00
Georg Baum
8f037c8e91 Increase tex2lyx output format to 345 (LyX 1.6.x).
344: Remove pdf_pagebackref header flag
345: Nothing to do (this is a docbook-only change)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37015 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-27 18:19:19 +00:00
Georg Baum
32d435e150 Increase tex2lyx output format to 343.
343: Write the use_default_options header flag


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37014 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-27 18:16:22 +00:00
Georg Baum
4a54c581a2 Increase tex2lyx output format to 342.
335:     Create space inset in new syntax
336:     Nothing to do (empty lyx2lyx conversion)
337:     Nothing to do (tex2lyx does use the display flag)
338-339: Nothing to do (empty lyx2lyx conversion)
340:     Nothing to do (tex2lyx does not output empty layout names)
341-342: Nothing to do (empty lyx2lyx conversion)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37013 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-27 18:14:55 +00:00
Georg Baum
5247a0ed1c Increase tex2lyx output format to 334.
331:     Set the caption flag for longtable caption rows
332:     Nothing to do (empty lyx2lyx conversion)
333:     Nothing to do (tex2lyx did already use the new style names because it
         uses the current layout files)
334:     Nothing to do (tex2lyx did already produce the new format, since it
         used the LaTeX paper names also in the output and did not suffer from
	 bug 4868)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37012 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-27 18:10:23 +00:00
Georg Baum
6da25359f0 Increase tex2lyx output format to 330.
324:     Create newline inset in new syntax
325:     Nothing to do (tex2lyx does not support the japanese language)
326-327: Nothing to do (empty lyx2lyx conversion)
328:     Nothing to do (tex2lyx did never support embedding of files)
329-330: Nothing to do (empty lyx2lyx conversion)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37011 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-27 18:03:26 +00:00
Georg Baum
6639d78601 Increase tex2lyx output format to 323.
323: Create newpage inset in new syntax


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37010 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-27 17:58:36 +00:00
Georg Baum
e4efa00f8c Increase tex2lyx output format to 322.
321: Move leftlines/rightlines from column headers to cells
322: Nothing to do (tex2lyx does not produce plain layouts)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37009 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-27 17:56:48 +00:00
Georg Baum
94160f97c0 adjust xfig conversion to newer xfig as suggested by Jean-Pierre at
http://www.lyx.org/trac/ticket/3016#comment:6


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36972 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 21:35:08 +00:00
Georg Baum
77a8eb9288 fix bug #7189 (this worked originally, but after fixing protected \hfill I
forgot to recheck \hspace)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36971 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 20:45:18 +00:00
Uwe Stöhr
bea8c9ef8d tex2lyx/preamble.cpp: prerequisites for further language support
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36962 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 03:34:00 +00:00
Uwe Stöhr
79f5a4a396 tex2lyx/text.cpp: support \nocite{*} (since format 310)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36961 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 02:47:58 +00:00
Uwe Stöhr
54cee82fb6 tex2lyx:
- support for \nocite (since format 309)
- add \nocite{*} option to testfile

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36960 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 02:08:22 +00:00
Uwe Stöhr
a0ff0a15cf tex2lyx/preamble.cpp: support Vietnamese (since format 291)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36959 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 01:47:34 +00:00
Uwe Stöhr
fd3bd1a06a tex2lyx/preamble.cpp: add some further missing things from r36947: support for Latin and North Sami
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36958 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 01:36:27 +00:00
Uwe Stöhr
3d75bdc035 tex2lyx/text.cpp: add some further missing things from r36947
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36957 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 01:29:48 +00:00
Uwe Stöhr
cc1710e943 tex2lyx/preamble.cpp: whitespace only
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36956 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 01:14:18 +00:00
Uwe Stöhr
2385086972 tex2lyx/text.cpp: fix other missing issues from r36947
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36955 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 01:12:35 +00:00
Uwe Stöhr
3fa2875355 tex2lyx/preamble.cpp: add missing things from r36947
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36954 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 01:11:02 +00:00
Georg Baum
300cd0dedd Increase tex2lyx output format to 320.
320: Support protected hfill
Detect other horizontal spaces that are already part of format 319
Add forgotton use_parbox tag to boxes (confuses lyx2lyx, but no lyx)



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36949 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-19 21:24:24 +00:00
Georg Baum
58fde18a9f Increase tex2lyx output format to 319.
311:     Nothing to do (tex2lyx produced already the new format, because it
         uses the current layout files. This is also a reason why it should
	 not lag behind too much with the format.)
312:     Nothing to do (empty lyx2lyx conversion)
313:     Nothing to do (tex2lyx does not know about modules)
314-315: Nothing to do (empty lyx2lyx conversion)
316:     Nothing to do (tex2lyx does not know subfigures)
317-318: Nothing to do (empty lyx2lyx conversion)
319:     Convert horizontal spaces to new format (and convert some newly
         supported spaces)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36948 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-19 20:23:55 +00:00