[Pidgin] #750: BiDi (hebrew, arabic) problems
Pidgin
trac at pidgin.im
Mon May 7 17:27:13 EDT 2007
#750: BiDi (hebrew, arabic) problems
------------------------------------------------------+---------------------
Reporter: dror | Type: defect
Status: new | Priority: minor
Component: pidgin (gtk) | Version: 2.0
Keywords: hebrew, BiDi, arabic, Unicode, paragraph | Pending: 0
------------------------------------------------------+---------------------
This bug has been open for the last 3 years, and has been closed due to
the migration to Pidgin, so I open it again.[[BR]]
The problem persists as of version 2.0.
1. The direction is only automatically set according to the first letter
entered (if the first significant letter is in Hebrew, an RtL direction is
set, o/w LtR), and cannot be set by the user (by means of Ctrl+Shift or a
paragraph direction icon).[[BR]]
2. Messages sent by the official MSN and ICQ have a mark at the header
stating the paragraph direction, which the receiving clients interpret
into the paragraph's
direction. Currently, in Pidgin each paragraph's direction is set
according to its first letter, which means, for example, that if the alias
is in English, every
paragraph will be to the left, unless a line break has been sent, and the
messages come out totally mixed up. Also, Pidgin currently totally ignores
these message marks - does not send them nor follow them, making the
paragraphs received by the official clients or sent by them many times
incomprehensible.
There is no Unicode mark specifying the paragraph alignment, and therefore
it must be sent and received separately. At least in MSN I know for sure
it is sent. I used a sniffer on it, and here is the result:
A Left to Right message:
{{{
MSG ***@***.*** ***%20*** 120
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
X-MMS-IM-Format: FN=Miriam; EF=B; CO=80; CS=b1; PF=2
abcd
}}}
A Right to Left message:
{{{
MSG ***@***.*** ***%20*** 126
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
X-MMS-IM-Format: FN=Miriam; EF=B; CO=80; CS=b1; PF=2; RL=1
abcd
}}}
As can be seen, the format tag RL=1 marks it.
Since the alignment itself isn't that important, and the main problem is
the embedding, i.e. the presented text direction, I would suggest the
following:[[BR]]
1. If the mark can be identified (MSN at least), adding the LRE or RLE at
the beginning of the message, after the sender name and time (Gtk knows
how to handle it), according to the received mark, and buttons for text
direction (ms word's
style paragraph direction) change in the input widget, which will remain
constant, no matter what text is written, and that direction will be sent
in the out-going message.[[BR]]
2. If the mark cannot be identified, there should be an option (via a
button) to simply set the direction of both text widgets of this
conversation, since mostly the
direction is constant throughout the conversation, and one can easily tell
the direction is wrong.
For more info about BiDi in Unicode, please refer to:
[http://www.unicode.org/reports/tr9/]
Thank you
--
Ticket URL: <http://developer.pidgin.im/ticket/750>
Pidgin <http://pidgin.im>
Pidgin
More information about the Tracker
mailing list