Hi Georg,
I'm not familiar enough with the capabilities of LaTeX macros to be the final judge on that, but it seems plausible that macros may work better for many features.

However, it is also desirable to keep the LaTeX code simple. For features that are merely related to displaying things (inset open/collapsed, "lyx zoom" factor for images), a comment may indeed be the simplest way. If the comment is garbled or lost, the default (inset open, 100 % zoom) applies.

So it may be a fix of both: macros for anything that contains semantics, and comments where macros may be more complex and the document semantics are not affected?

Georg Baum wrote:
Cyrille Artho wrote:

I think it is possible to save some internal features of LyX (inset
collapsed/expanded, notes, etc.) in LaTeX as well. They could be exported
as special LaTeX comments. Of course, editing these comments would lose
the extra data, but we'd have to trust people working on the low-level
LaTeX code on that :-)

This probably works best of the comments are short (so people are not
tempted to delete them), such as

\begin{table}%%LyX{inset:collapsed}
...
\end{table}

(using two % to distinguish the comment for normal comments).

I strongly oppose to the idea of transporting meta data in comments. I have
seen too many cases in many different application areas where this was done,
and it failed (e.g. you are probably not the first with the idea to use %%
as a special comment marker). tex2lyx does already parse special comments in
the preamble, and there is a bug in trac about that which I currently don't
find. I am short on time today, if you need more explanations please tell
and you'll get them till the weekend.

Fortunately, LaTeX is a macro language, so it is easy to define new macros
for stuff which is normally not exported to LaTeX. E.g., I believe it would
not be too difficult to replicate branches in LaTeX with a set of macros, so
that one can even enable/disable them in the .tex file.

You can improve roundtrip a lot without using comments for meta data. The
current problems can be divided into three major categories:

1) Data that is available in LyX but not in LaTeX, e.g. a document language
can not always be deduced from the .tex file

2) Limitations of the LyX file format, e.g. it is not possible to make LyX
output a table that contains custom ERT between the end of a line and the
beginning of the next one. If such things are read, tex2lyx has to conevrt
the whole table to ERT. Another problem of this category are math macros
(see my earlier mail).

3) Unfinished/missing features in tex2lyx, e.g. all needed information
exists in .tex, but tex2lyx does not know how to use it (see
src/tex2lyx/TODO.txt for pointers).

Category 1) might require additional meta data, but 2) and 3) do not, and
I'd concentrate on these.


Georg


--
Regards,
Cyrille Artho - http://artho.com/
Murder is always a mistake -- one should never do anything one cannot
talk about after dinner.
                -- Oscar Wilde, "The Picture of Dorian Gray"

Reply via email to