How to use Devanagari fonts in Yudit

Original: Sanjay Khatri <sanjay@webveda.com> 2000-02-03 
Modified: Gaspar Sinai <gsinai@yudit.org> 2002-01-19


Introduction

Yudit<www.yudit.org> is a free Unicode Editor, it can be used for 
editing text in Indic scripts in Unicode.  Devnag fonts are 
modified public_domain dev fonts by Sandeep Sibal, <sibal@sibal.com>,
http://www.sibal.com/sandeep/dev/ 

Pre-requites

1. Download yudit-2.5.2 or later from www.yudit.org
   Follow installation instructions from http://www.yudit.org.
2. Download raghu.ttf font from 
      http://rohini.ncst.ernet.in/indix/download/font/
   and copy it into the /usr/share/yudit/fonts or ~/.yudit/fonts

   Note that raghu.ttf  contains glyphs for Devanagari only - 
   if you want to use other scripts you might want to consider
   code2000.ttf True Type font from
      http://home.att.net/~jameskass/
   Note that code2000.ttf is a shareware font. For a non-paying
   free font just stick to raghu.ttf font.
   Good quality printing can be achieved only by using True Type
   fonts.
 
Steps 3-5 (optional)

3. Get pango X11 font files for Indic. Please not that Yudit utilizes
   the PANGO_LIGATURE_HACK font property to render Indic scripts 
   with X11 fonts:
     export CVSROOT=':pserver:anonymous@anoncvs.gnome.org:/cvs/gnome'
     cvs login
     <press enter when asked for password>
     cvs get pango-fonts
   Alternatively you can get them from:
     ftp://ftp.gtk.org/pub/gtk/v1.3/extras/

4. Make pcf binary fonts:
     cd pango-fonts/indic/
     make
     mkfontdir
5. Set up font search path - you should set this whenever X11 
   is restarted:
     cd pango-fonts/indic/
     xset fp+ `pwd` 

Configuration

After installing Yudit and the fonts you need to configure the
fonts to be able to use them. First invoke and exit Yudit. This
will create a 
  ~/.yudit/yudit.properties 
file. You need to edit a font property in this file, for instance:
yudit.font.TrueType=arial.ttf,raghu.ttf...
yudit.font.Misc=*-iso10646-dev,*-iso8859-1, ...

Select Devanagari for input in Yudit gui.  This is a clustering
kmap - which means that a whole cluster needs to be entered 
to get proper shaping. 

Developers

To create other clustering kmaps use the mytool -type clkmap option, like:
 mytool -type clkmap -kmap MyKMap.kmap -rkmap MyKMap.kmap -write MyKMap.my

Other Indic scripts could be added easily to Yudit. If you want to add
Please look at the following files:
mytool/uni/indic.txt - new character types need to be added
swindow/SFontTTF.cpp - very little change is expected.
swindow/sx11/SX11Font.cpp - some changes for pango fonts are needed.
stoolkit/SCluster.cpp - vowel placement for fall-back rendering
   modifications are needed.

More Font Links
raghu.ttf: http://rohini.ncst.ernet.in/indix/download/font/

Author of Code2000: James Kass <mailto:jameskass@worldnet.att.net>
code2000.ttf: http://home.att.net/~jameskass/

Have fun!
Gaspar
Tokyo 2002-01-24
