[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Buffer names with R2L characters
From: |
Eli Zaretskii |
Subject: |
Re: Buffer names with R2L characters |
Date: |
Mon, 20 Jun 2011 23:52:44 +0300 |
> From: Stefan Monnier <address@hidden>
> Cc: address@hidden
> Date: Mon, 20 Jun 2011 14:00:34 -0400
>
> > 2>FEDCBA>
>
> Sounds like the same kind of issue as the one brought up a while ago
> about bidi+XML (or any other mark up).
It's caused by the bidirectional properties of the '<' and '>'
characters, but other than that, this has nothing to do with XML.
> Another important case is when you use uniquify (in which case the
> above will happen less frequently since file buffers add the directory
> info to disambiguate the name, but may be replace by similar problems
> if the separator between the file and directory part (typically /, or
> \, or |) doesn't have the "right" bidi behavior).
You get something like foo/bar/FEDCBA, so there's no problem here, I
think.
> > I verified this with the Unicode Reference Implementation, and there's
> > no bug in bidi.c: this is the correct reordering according to the
> > Unicode Bidirectional Algorithm.
>
> > appending a suitable character to the end of the string (after the
> > numeric tail) and making it invisible with text properties. But this
>
> Hmm, I would have expected that adding something at the end of the string
> would not work ("too late"), whereas adding it between "ABCDEF" and
> "<2>" would have felt very natural to me.
The final "resolved level" of a weak character depends on characters
on its both sides, not just on one side. So there's no "too late".
When '>' is the last character, the algorithm uses a default value for
the absent character after it, and the default depends on the current
paragraph direction, which must be L2R both in the mode line and in
buffer-menu. Thus, '>' gets the (default) L2R direction in this case.
Appending a zero makes '>' be surrounded by two digits, so it gets the
R2L direction (because the digits are embedded in a run of R2L
characters) and is mirrored into '<'.
- Buffer names with R2L characters, Eli Zaretskii, 2011/06/20
- Re: Buffer names with R2L characters, Stefan Monnier, 2011/06/20
- Re: Buffer names with R2L characters,
Eli Zaretskii <=
- Re: Buffer names with R2L characters, James Cloos, 2011/06/20
- Re: Buffer names with R2L characters, Eli Zaretskii, 2011/06/20
- Re: Buffer names with R2L characters, Stephen J. Turnbull, 2011/06/21
- Re: Buffer names with R2L characters, Eli Zaretskii, 2011/06/21
- Re: Buffer names with R2L characters, Stephen J. Turnbull, 2011/06/21
- Re: Buffer names with R2L characters, Eli Zaretskii, 2011/06/21
- Re: Buffer names with R2L characters, Miles Bader, 2011/06/21
- Re: Buffer names with R2L characters, Eli Zaretskii, 2011/06/21
- Re: Buffer names with R2L characters, David Kastrup, 2011/06/21
- Re: Buffer names with R2L characters, Kalle Olavi Niemitalo, 2011/06/20