See also Applications that support Graphite.

Arabic script is a complex and difficult script, and this complexity is compounded by the fact that Arabic script is used for many different languages and cultures with variations in acceptable calligraphic style. From a computer perspective at least, the technologies used to implement Arabic script are not yet fully mature. The result is that while a given font might work for one set of languages on a given software platform, the same font might not work for other languages or on other platforms. This means that it is very difficult to give an accurate answer to the question of software requirements.

Due to its complex calligraphic form, Nastaliq has proved to be one of the most difficult forms of writing to support on the computer. Few Nastaliq fonts have ever supported Urdu well. Awami Nastaliq attempts to support minority languages as well as Urdu using the Nastaliq style of script.

Application support

The Awami Nastaliq font requires software enabled with the very latest Graphite engine (version 1.3.4+) in order to render correctly. The font does not support OpenType rendering. It will not work with standard software such as Microsoft Office.

Currently, the only software that can render Awami Nastaliq are the Firefox web browser, the LibreOffice suite, XeTeX, and linguistic software such as FieldWorks, Paratext 8+, and Bloom.

If a developer wishes to add support for Graphite, the Graphite engine is available here.

Here are links for downloading appropriate versions:


You will need a recent version of Firefox – version 46 or later.

Due to security concerns, Graphite has sometimes been disabled in Firefox by default, so you might need to enable it. Follow these instructions for enabling Graphite in Firefox.


We recommend LibreOffice 5.3+ which supports version 1.3.8 of the Graphite engine.

Version 5.2 fixed the bug that was in version 5.1.

Version 5.1 supports Awami, but it has a bug where certain characters (eg, the small tah) would be displayed in an incorrect position.


The TeXLive 2016 version of XeTeX supports version 1.3.8 of the Graphite2 engine.

The TeXLive 2017 version of XeTeX contains a fix for Harfbuzz which was causing combining marks to clash at the end of words when followed by a Latin character.

TeXLive is available from

Full Collision Avoidance

To use the full collision avoidance (both intra- and inter- word) of Awami in XeTeX (required version 0.99995 or newer) a macro parameter needs to be set.

Explanations of this parameter are at:

This parameter should be set in a .tex file. The file could look something like:

%% Cross-space contextualization

% No cross-space contextualization.
% This is how XeTeX behaves by default.
% Most projects will use this setting.
%\XeTeXinterwordspaceshaping = 0

% Some cross-space contextualization.
% Spaces between words are adjusted,
% but the rendering of individual words is not affected by the spaces.
%\XeTeXinterwordspaceshaping = 1

% Full cross-space contextualization.
% Spaces between words are adjusted,
% and the rendering of individual words is affected by the spaces.
%\XeTeXinterwordspaceshaping = 2

You must uncomment the appropriate command! For Awami Nastaliq, you will likely want to uncomment the last line (\XeTeXinterwordspaceshaping = 2). That allows the full support for collision avoidance.

The above text (all comments and commented out statements) will give the same behaviour as before this feature was added to XeTeX, so existing users do not see any unexpected changes.

Bidi Support

XeTeX in TeXLive 2017 uses the latest version of Harfbuzz (1.4.6) which fixes a bug in bidirectional data.

Advanced features

See Smart Font Features for further information.