Peter Kümmel schrieb:
http://bugzilla.lyx.org/show_bug.cgi?id=3203:
Yes, LyX treats all text files as utf8, and iconv can choke on non-utf8 text
interpreted as utf8. I see the same here.
Since it is not possible to detect the file encoding reliably from the contents
the only option I see to make this work is to let the user give the encoding
(e. g. with a combox in the import dialog). The default could be the locale
encoding or utf8.
Here an idea to fix this bug for most cases: When the UTF-8 import fails
we try to read the file as local-8bit encoded. When this also fails a
message box pops up:
The file is neither UTF-8 nor local-8Bit encoded.
To import the file please change its encoding.
Is from_local8bit the right choice?
Instead of showing the message we could later open an dialog to choose the
encoding. But therefore we need a new dialog and a new conversion function
docstring const from_encoding(std::string const & s);
Or how is the conversion from an arbitrary encoding done?
Is there any way to determine the encoding of a file? Can't any file be
considered as UTF-8 (even if it is not encoded in UTF-8)?
Suggestion:
+ _("The file is neither UTF-8 nor local-8Bit
encoded.\nTo import the file please change its encoding."));
=>
+ _("The file is neither UTF-8-encoded nor local
8Bit-encoded.\nTo import the file, please change its encoding."));
Michael