I've fixed the script to write it the way Inkscape wants it: http://www.lightandmatter.com/embed_raster_in_svg
Excellent, thanks! I tested it and it works when I run it on a file in the current dir, but when I tried to give it a file in a subdir tt/, I got this error:
$ ./embed_raster_in_svg.pl tt/a.svg embedded raster file New_document_1-path1061-4294967076.png, image/png error renaming file tt/a.svg to tt/a.svg.bak, No such file or directory at ./embed_raster_in_svg.pl line 114.
I don't know if AI's output is standards-compliant in this situation or not.
Consult http://www.faqs.org/rfcs/rfc2397.html to find out who is compliant and who's not
P.S. If you plan to keep contributing to Inkscape I can give you developer access
That would be nice, thanks! Given my weak C++ skills and lack of familiarity with Inkscape's codebase, I probably wouldn't dare to committ changes to the C++ code on my own, except maybe after getting comments on them. But if the plan is to have an Extensions menu that can call various Perl scripts, then it might be nice for me to be able to contribute directly to that. My Perl skills are a lot better than my C++ skills, and I'm going to need to write various scripts anyway for my own use (e.g., I'm going to need something to gamma-correct svg files).
Good, I added bcrowell to the project
Is there an API for extensions?
I know we're moving towards it, Ted Gould will probably be able to give you more specific info. If you can help him to work on the extensions system for the next version, this would be fantastic.
Also we have the ill2svg perl script that is used for importing illustrator files. I believe there were some issues with it that needed fixing (look up the bug tracker and list archives). In any case, since you're working with AI files and know Perl, you seem to be the ideal person to systematically test this script and write at least some documentation for it (what AI versions and what features are supported and what not, how to best prepare your files for import, etc). It might also make sense to incorporate the embed/outbed images functionality into it as an option.