The math parser could not handle multicolumn grids. This is a problem because
there is no true ERT in math (everything is parsed).
Now multicolumn cells are parsed correctly. The display is also somewhat OK,
but apart from that any multicolumn related UI is missing. Since the file
format change is now done the UI can be added at any later point. The most
important part of bug 396 is now fixed: tex2lyx does not create invalid .lyx
files anymore for formulas containing \multicolumn.
I updated the tex2lyx test cases that produce correct output. tex2lyx does
still produce invalid output for the test cases which are not updated because
of the previous format change.
I don't understand why the string "shadowsize" is not already in the file because when I convert from format 474 to 489 it is added. So why is it not there when I convert from format 474 to 491.
We also get a consistent look with amsmath, so require esint or amsmath.
When resolving alternatives, do also take into account whether the package
is available. For this to work, we also need to test for amsmath.sty (which
was surprisingly not yet done).
The "save-as" part of the bug is fixed by extending the \textclass tag
such that, if a local layout file is used, its path relative to the
document directory is now stored together with the name. If a relative
path cannot be used, an absolute one is used but, in this case, the
document is not usable on a different platform.
The "copy" part is fixed by introducing a new \origin tag, which is
written when the file is saved. This tag stores the absolute path of
the document directory. If the document is manually copied to a
different location, the local layout file is retrivied by using
\origin (which is only updated on save).
This new tag may prove useful also for locating other files when the
document is manually moved to a different directory.
As in the original implementation the files needed for the layout
(for example, a latex class) had to be in the same directory as the
layout file, this directory has also to be added to TEXINPUTS.
Avoid that \newcommand[x] definitions of math macros are pushed multiple
times to the preview loader.
Redefinitions (via \renewcommand[x]) are properly handled.
If use of hyperref is detected, the postscript route is not attempted
(because we know it will fail) and the PDF route is directly chosen.
Also account for all upper case extensions for pdflatex image files.
Was forgetting this last bit from 64e0c558. Also give a message such
that the user is informed that not everything is lost if latex fails.
With this, the previews are generated also when the document directly
specifies a specific pdf output format.
This is a followup commit to 691fdea3 and restores the behavior of the
script as it was intended before 64e0c558, other than taking into account
possible inclusion of files that only pdflatex can process and the
possibility of multiple defined math macros.
The instant previews in the math manual now work again.
- enrich the examples
- add info about naming
- formatting fixes to improve the layout of the PDF
- make the document compilable also if the package insdljs is not installed
If pdftocairo is detected, it is used for generating bitmaps in the
legacy method route in preference to ghostscript. This is justified
by the fact that the conversion is 4 to 5 times faster and the
quality of the generated images is superior.
When the dvipng route is selected and latex fails, the lyxpreview2bitmap.py
script simply bails out. The failure may be due to using a specific pdf
only feature in ERT (for example, the inclusion of a pdf image).
In this case the procedure may succeed simply trying to use pdflatex
and the legacy conversion method.
The \lightning symbol is text mode only. Hence, for using it in
mathed, it must be inserted in a text mode environment such as
\mbox, \text, etc. However, as it is not marked as textmode,
LyX "helpfully" encloses it in \ensuremath everytime one tries
to put it in a text mode environment, thus defying the countermeasure.
By declaring it textmode only, LyX stops doing that and thus it can be
correctly output by simply selecting it and hitting Ctrl-M.
Control + Shift + PgDn now moves a tab to the right.
Control + Shift + PgUp now moves a tab to the left.
These keybindings are consistent with Chromium, Firefox,
Nautilus, and gnome-terminal.
Note that I allow for wrapping. This is consistent with
allowing wrapping for buffer-{next,previous}, but there
might be reasons to disable it in the future.
This template was only reported as failing to compile by LyX as of
0a6120cb. I do not know how long this template was actually failing
to compile without error. The problem was that the class requires
\doi to be defined. This might not have been a requirement in
previous versions of the class.
Thanks to Enrico for finding the problem and solution.