how to make custom combining diacritical marks for arabic letters?

dinar qurbanov via Unicode unicode at
Fri Jan 10 12:30:38 CST 2020


you can browse to replies that are not quoted below from .

where can i write some bug reports or feature requests in order to get
custom diacritic marks automatically positioned at right place above
and below arabic letters, and also without having to put beginning /
middle / end forms of arabic letters manually, but using just "simple"
arabic letter unicode codes. and, where should i submit bug reports
for what, what is responsible for what.

seems users of unicode should be able to use private use area like
this, to develop their own arabic and other diacritics, not only latin
/ greek / cyrillic... though i am even not tried to make
latin/cyrillic/greek custom diacritics yet... i used custom latin and
cyrillic scripts, but i need not to develop custom diacritics, because
there are plenty of ready diacritics to use with them.

2018-05-19 13:22 GMT+03:00, dinar qurbanov <qdinar at>:
> this is a test i made that time: . look
> at second line. my custom mark is located too left on the most left
> "B", and is located too right on the middle (that is of middle form of
> B) and on the most righ "B" (that is of starter form of B). it should
> be located right above the below dot.
> - this was the problem that i could not solve.
> also there are problems that i could solve by using 1) rtl override
> mark; 2) and using start, middle, end, separate B characters instead
> of using simple arabic B, that would be easier. (you can see in the
> example that that characters are used). (using different forms of
> letter can also be achieved by using php or javascript, etc).
> 2018-05-17 22:12 GMT+03:00 Richard Wordingham via Unicode
> <unicode at>:
>> On Thu, 17 May 2018 09:49:55 +0300
>> dinar qurbanov via Unicode <unicode at> wrote:
>>> how to make custom combining diacritical marks for arabic letters?
>>> should only font drivers and programs support it, or should also
>>> unicode support it, for example, have special area for them?
>>> as i know, private use area can be used to make combining diacritical
>>> marks for latin script without problems.
>>> but when i tried, several years ago, to make that for arabic script,
>>> with fontforge, i had to use right to left override mark, and manually
>>> insert beginning, middle, ending forms of arabic letters, and even
>>> then, my custom marks were not located very properly above letters.
>> I'm offering suggestions, but I don't that they will work.
>> The one thing that may help you is that these marks cannot appear in
>> plain text.  There are a number of things you need to do:
>> 1) Persuade the renderer to treat your character as being a run in a
>> single script.  You might be able to do this by:
>> a) Not having any lookups for the Arabic script.
>> b) Using RLM to persuade the renderer that you have a right-to-left run.
>> It is just possible that his may fail with OpenType fonts but work
>> with Graphite or AAT fonts.  If it works, you will then have to
>> implement all the Arabic shaping yourself.
>> 2) If OpenType fonts will treat the data as a single script run, you
>> will need to ensure that there is an OpenType substitution feature that
>> the renderer will support.  Fortunately, many modern text applications
>> will allow you to force the ccmp feature to be enabled - I have used
>> such feature forcing with OpenType in LibreOffice and also in HTML,
>> which renders accordingly in all the modern browsers I have tested - MS
>> Edge on Windows 10, Firefox and, on iPhones, Safari.  While the ccmp
>> feature is enabled for the PUA in Firefox, it is disabled in MS Edge on
>> Windows 10.
>> 3) I believe AAT will soon be available for products using the HarfBuzz
>> layout engine, so it is likely to become available on Firefox and
>> LibreOffice.  If AAT looks like a solution, you may need to research the
>> attitudes of Chrome and OpenOffice, for I believe they have chosen not
>> to support Graphite.
>> A totally different solution would be to recompile your application so
>> that it believes that your diacritics are in the Arabic script.
>> Richard.

More information about the Unicode mailing list