Andre Poenitz wrote:
On Wed, Apr 02, 2008 at 06:04:09PM -0400, Richard Heck wrote:
Isn't EmbeddedFile all about representing an "Embedded file"? If there
are problems, they need to be fixed there. But I can't imagine a solution
getting easier by requiring it to _additionally_ fit into a map<string,
string>.
As has been repeatedly said, "biblio", as returned by the bibliography
dialog, isn't a filename. It's just an identifier that TeX can use to FIND
the file it really wants. You can adapt EmbeddedFile so that it holds this
piece of data as "meta info", which is what Bo proposes to do. But surely
this is a hack. It has nothing to do with what an EmbeddedFile represents.
I proposed to use "link" files that are properly embedded, and whose
contents is used instead of the file name. So you'd embed "biblio.lnk"
with contents "mybiblio", and whenever the FileName (or whatever) class
hits a ".lnk" it replaces it with its contents. So when the Bib stuff
"resolves" the "file" "biblio.lnk" it will be converted to "mybiblio"
which, in turn, wil be resolved by TeX to whatever mybiblio.bi file
you made known to TeX.
This doesn't address the issue. The issue has to do with the
NON-embedded situation. Bo's machinery is used whether or not anything
is embedded. Indeed, that is another part of my problem with it. The way
InsetBibtex is now coded, it's heavily bound up with a feature that, for
all we know, few people may ever use and whose implementation is not
exactly settled. There are even large scale questions about how it
should work. I'd really prefer, to be honset, if there were some way to
avoid even constructing all these EmbeddedFile objects unless embedding
is active, and not to have to store a bunch of parameters that never get
used. That may not easily be possible, but you see the point, I hope.
That said, your suggestion doesn't seem to do what Bo wants here anyway.
The point is supposed to be that I can send mybiblio.bib wrapped up in
the bundle and it will get used. We do NOT want the LyX file to use
whatever file called mybiblio.bib happens to be on my correspondent's
machine in $BIBINPUTS.
rh