Bo Peng wrote:
 Is there any progress on this? Is it a problem by design of the new
 file handling? Or just a bug? What does "There are a lot of work in
 this area." mean? Is anybody actively working on this?

These files are now EmbeddedFiles and their latex output names are
currently wrong. I am supposed to be 'actively working on this' but I
am overwhelmed with work now.

I've traced the problem with citations for a while, and I'm still kind of puzzled. This has something to do with the fact that EmbeddedFile objects, since they inherit from FileName, always store absolute pathnames. But in many of these cases, it seems that the EmbeddedFile objects actually just replaced FileName objects, and so the problem isn't the absoluteness of the path name itself, but that the absolute path name isn't being set in the right way. For example, here:
void InsetBibtex::createBibFiles(docstring const & bibParam,
   docstring const & embedParam) const
{
[snip]
   bibfiles = split(bibfiles, tmp, ',');
   embedStatus = split(embedStatus, emb, ',');
while (!tmp.empty()) {
       EmbeddedFile file(changeExtension(tmp, "bib"), buffer().filePath());
[snip]
}
we certainly ought not to be setting the path relative to the path of the Buffer. In the 1.5 code at the corresponding place, we have:
   FileName const texfile(findtexfile(changeExtension(tmp, "bib"), "bib"));
where findtexfile uses kpsewhich to find the file. So we need to put that back somehow, but I don't understand how the embedding stuff works well enough to do it myself. Bo?

Richard

Reply via email to