biditext.so is a shared library that replaces the XDrawString and
XDrawImageString functions from the libX11 library, with one that supports
bidirectional printing.

This library requires Dov Grobgeld's fribidi-0.1.6 library (available from
http://imagic.weizmann.ac.il/~dov/freesw/FriBidi), which requires glib.

To compile, run make.

To install, simply copy biditext.so to a location where any user that
might need to use it can access it (e.g, /usr/local/lib).

To use, make sure the library is loaded by the dynamic loader
(ld-linux.so), before libX11.so. This is usually done by setting the
LD_PRELOAD environment variable. You can use the included script biditext
to run programs:
edit the script to point to the correct library, and then run
$ biditext netscape


XDrawString changes the direction of the text only when a file /tmp/.rev
exists, so when it does not exist, it behaves, exactly like the normal
function from libX11.so. Creating or removing this file takes affect
immediately, so it can be used when using netscape to browse hebrew sites,
and moving between pages that use different directionality. 
the directory r2l contains a small program to create/remove the file. 

Known Bugs:
Occasional Bus errors, usually when quiting netscape.

Author:
Matan Ziv-Av (matan@svgalib.org)

Copyright:
This program is free, but read the header of Text.so if you care about
licensing.
