[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kwrite-devel
Subject:    Unicode and Arabic-script editing in Qt and KDE
From:       Idris Samawi Hamid <ishamid () lamar ! colostate ! edu>
Date:       2005-03-29 15:28:16
Message-ID: 42878DD7 () webmail ! colostate ! edu
[Download RAW message or body]

This is the preamble of a multipart MIME formatted message.
  If you are reading this text your mail system is most likely
  not capable of properly decoding MIME messages.  To extract
  the contents of this message, save it to a file and then use
  an external MIME decoding utility.


Hi! I've been a big big fan of KDE and Qt for years now, though various 
circumstances keep me on Windows for the most part:-(

Anyway, my own research involves a lot of Arabic-script typesetting, and I 
read that Qt4 will have real bidirectional typesetting capabilities. In this 
regard I have a couple of comments:

As far as Arabic-script is concerned, I have not found any editor, closed or 
open source, that comes anywhere close to (shareware) UniPad

http://www.unipad.org/main/

In particular, the way it handles Arabic accents is unsurpassed (I use a lot 
of accents in my critical edition/TeX work). Basically, the accents are NOT 
placed on top of the letter but next to the letter. This makes for easy 
horizontal handling of accents (see attached pdf). The usual 2-dimensional way 
makes editing accents a nightmare (sometimes you may have accents on top of 
accents, etc). I think it would be wonderful if Qt/KDE were to be the first to 
implement an open source version of this feature.

If you look at the sample screenshot, you will see that when a letter joins to 
its left, the joiner is extended so moving the accent to the left of the 
letter does not break the word. But when a non-joining letter has an accent, 
the accent appears free (see lines 4 & 5).

Another neat feature is that you can string as many accents as you like. Each 
accent is treated like a character.

Also note that UniPad does not concern itself with Arabic ligatures per se; 
this is the correct way to approach Arabic-text _editing_; ligatures should be 
left to the final text processing application (like TeX or KWord).

I am enclosing a screenshot of Unipad in action. You may open the source text 
file in your average unicode editor for comparison. Also, UniPad has a 
shareware download and you can open the source there as well.

Finally, I am ready to do two things:

1. There is no Unicode font of which I am aware that contains the entire 
Arabic codepage (0600--06FF) (Unipad uses its own bitmap font, which is very 
readable). For at least one KDE monospaced font, I can help to complete those 
glyphs (I do font design for my own Arabic-script TeX package as well). 
Perhaps I can also do this for Arabic Presentation Forms A and B as well one 
day, and more immediately at least a subset of the very few which are 
frequently used;

2. I can help to test the implementation of features such as these.

===========================

On Windows, I use Scite and WinEDT (mainly for TeX).  But I hope (dream?) that 
one day someone will write a beautiful cross-platform editor in Qt, with full 
unicode-bidi-Arabic-script support-)

Thnx 4 reading. If there is anything I can do to help Qt/KDE achieve the best 
unicode-bidi-Arabic-script support, please let me know.

I look forward to feedback->

Best wishes to the Qt and KDE teams; u r my heros
Idris

============================
Professor Idris Samawi Hamid
Department of Philosophy
Colorado State University
Fort Collins, CO 80523

["arabic_accents.txt" (text/plain)]

اَللّٰهُمَّ ارْزُقْنِي عَيْنَيْنِ \
هَطَّالَتَيْنِ يَبْكِيَانِ مِنْ

 خَشْيَةِ اللّٰهِ قَبْلَ أَنْ تَكُونَ \
الدُّمُوعُ دَماً وَ الْأَضْرَاسُ

 جَمْراً

بَبِبُبْبًٌٍَُِّْٰٖٓٗب

دَدِدُدْدًٌٍَُِّْٰٖٓٗ


["unipad_in_action.jpg" (image/jpeg)]

_______________________________________________
KWrite-Devel mailing list
KWrite-Devel@kde.org
https://mail.kde.org/mailman/listinfo/kwrite-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic