bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#20704: info.el bug fix; Interprets Info format wrongly


From: Teddy Hogeborn
Subject: bug#20704: info.el bug fix; Interprets Info format wrongly
Date: Tue, 09 Jun 2015 13:09:08 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux)

Eli Zaretskii <eliz@gnu.org> writes:

> > > +       (+ (point-min) (byte-to-position
> > > +                              (read (current-buffer))))
> > 
> > Hmm... this only works if the Info file is encoded in UTF-8.  I
> > guess in the case of Info, 99% of the files are just ASCII and
> > there's a chance that the vast majority of the rest is (or will be)
> > UTF-8, so maybe this hack works well in practice.
>
> Using byte-to-position would make things worse for Latin-1 and the
> likes.

No, byte-to-position already checks for that:

---- src/marker.c, line 302
  /* If this buffer has as many characters as bytes,
     each character must be one byte.
     This takes care of the case where enable-multibyte-characters is nil.  */
  if (best_above == best_above_byte)
    return bytepos;
----

Therefore, an Info file in Latin-1 should work just fine.

> But it shouldn't be hard to add a simple test of
> buffer-file-coding-system: if it states fixed-size encoding, like any
> of the 8-bit encodings, or UTF-16,
> the conversion to character position is trivial.

I think you mean UTF-32 instead of UTF-16, since UTF-16 is variable-
length.

/Teddy Hogeborn

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]