Bo Peng wrote:
1. In bundled mode, do you create filename.lyz or
filename.lyxdir/content.lyx when you create a new file and save?
My proposal, following JMarc, was that bundled mode is separate from
compressed mode. So it depends upon whether we're creating a compressed
bundle or not. If it's supposed to be compressed, then we save filename.lyz;
otherwise, it's just filename.lyxdir/ and its attendant stuff.
I think people (Enrico, Abdel?) have suggested that there is no
'bundled' mode so 'create a file in bundled mode' is a false question
to start with. Basically, users should work as usual, and save in
bundled format (as another file), and they need to unbundle the file
(possibly outside of lyx) explicitly before they start working in the
old plain text fashion. You have not had an opinion on this yet. Note
that Enrico's approach has only plain-text filename.lyx and
filename.zip which is not opened directly by lyx.
Enrico's solution can be combined with JMarc's directory structure AFAIU.
Also, as JMarc suggested, it may not do any good to have two formats,
bundled and unbundled (1.5.x), and he suggested that we always use the
bundled directory format. Do you agree with him? If you disagree, you
are facing the ugly plain text <-> strcuture conversion problem. If
you agree, all current lyx files have to be converted to either a
binary file, or a directory in 1.6.x.
No, we are not forced to do this. I can well imagine two push buttons
corresponding to two use cases: "organise document for bundling" (UC1)
and another "save in bundled format" (US2).
UC1 - LyX (or a helper script) will move the referenced files in
'filename.lyxdir/' so that multiple users can work together using the
same directory structure. In this case, the original paths are lost
because we are basically reorganizing the document for collaboration.
This feature will be for people not able or not willing to use an SCM
for collaboration.
UC2 - The objective is to create a portable LyX format. LyX should use
the very same directory structure as UC1 but place all files in the temp
directory before packing it (with zip). In this use case, the original
file paths are not lost but placed in the session info. The idea is that
the person you are sending the pack is not a coworker but a
reviewer/correcter so he doesn't need the original paths, only you do.
Now, you do not want to touch the current inset code so all external
files should be available, and users should see these external files.
That is to say, InsetGraphics:figure.png should have a file
filename.lyxdir/figure.png available once it is inserted. Also, users
should learn that, once a file figure.png is inserted, he should
modify filename.lyxdir/figure.png, not the original file. What I
wanted to say is that filename.lyxdir should always exist and expose
to users.
Yes. And please note that, with the new support copy&paste of graphics,
we already started such directory structure. I think we should
"standartize" this structure.
[...]
This is already complicated so I will stop here, and wait for your
response and for others to evaluate this behavior. Edwin, Abdel, I
have tried to shorten the discussions so please express your opinions
here.
As I said (and sorry again if I am late in the game) I frankly won't be
a user of this feature if we're doing it your way. Use case 1 described
is not even interesting to me as I prefer to work with an SCM. But I
would personally be very happy if we could implement UC2 in a user
friendly way. But maybe both features could coexist, dunno.
Looks like I am participating to the awfully long mail fashion :-)
Abdel.