Differences between revisions 133 and 134
Revision 133 as of 2006-06-25 18:26:40
Size: 22983
Editor: ?DavideViti
Comment:
Revision 134 as of 2006-06-26 05:38:47
Size: 23008
Editor: ?DavideViti
Comment:
Deletions are marked like this. Additions are marked like this.
Line 160: Line 160:
Currently the installer uses Mukti Narrow, which should look right (recomended by Jamil Ahmed <itsjamil@gmail.com> and confirmed by Baishampayan Ghose <b.ghose@gnu.org.in>). Currently the installer uses freefont; in the near future MuktiNarrow will probably be used (recomended by Jamil Ahmed <itsjamil@gmail.com> and confirmed by Baishampayan Ghose <b.ghose@gnu.org.in>).

Intro

One of the main advantages of the graphical version of the installer is that it can support languages that use combining characters. We are currently using only TTF fonts.

[http://fontconfig.org/wiki/ Fontconfig] is used for font management. See [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=354044 #354044]

The following issues are open with respect to fonts:

  • Not all fonts needed for the graphical installer have yet been packaged into udebs (needed for inclusion in the official Etch release).
  • Translators should check if their languages are displayed correctly and check for missing characters. Special attention should be given to non-latin languages (Indic languages, Arabic ,Hebrew and Vietnamese). Help from translators may be needed to decide the optimal font for the installer (taking into consideration both quality and space required). Please note mthat the screenshots are a little outdated currently.
  • Text inside GTK!?TreeView widgets is left-justified for RTL languages (see [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=342239 #342239]), but that is fixed in the new DFB libs.

  • Ideal would be to have each character we need present in only one font. The current fonts have a lot of overlap which wastes space.
  • Display has to be good both when no language has yet been selected (language selection screen) and when it has.
  • Possibly font configuration can be improved. It would be very nice if we could influence which font is used for a specific language.

News

2006.06.25 ttf-freefont 20060501cvs-3 uploaded by our super-responsive maintainer: tamil language now uses the right font

2006.06.24 ttf-dejavu 2.7-2 uploaded to unstable with Arabic/Farsi glyphs stripped

2006.06.22 screenshots using new libraries are also available [http://d-i.alioth.debian.org/gtk-frontend/screenshots/20060621_dejavu2.7_exp/ here]

2006.06.21 ttf-thai-tlwg-udeb made it into unstable

2006.06.20 dejavu 2.7 hit unstable; should have better support for Vietnamese (only problem found is #374720)

2006.06.17 ttf-indic-fonts 0.4.7.1 uploaded with a udeb for ttf-tamil-fonts

2006.06.16 ttf-freefont 20060501cvs-2 uploaded with Vietnamese and Georgian characters stripped in the udeb

2006.06.16 ttf-farsiweb is in NEW with the udeb. Same for t1-thai-tlwg.

2006.06.15 - After ttf-dejavu 2.6 made it into the archives, g-i switched to ?DejaVu as default font.

Requirements for packaging fonts

  • Total amount of space used for fonts should be minimized.
  • Only font files that are actually used in the installer should be included.
  • Minimize overlap between fonts. It is possible to "strip" characters from a font (This is currently done in the developement versions with a fontforge script) We _really_ need to add characters as we need them, not to strip them from fonts. The fonts overlap too much - CJK fonts provide also codes for Latin scripts.

    Latin scripts are provided by most fonts, but they can be fixed with some [http://fontforge.sourceforge.net/scripting.html Fontforge scripting]

Davide Viti created [http://svn.debian.org/wsvn/d-i/trunk/scripts/g-i/strip_glyphs.pe?op=file&rev=0&sc=0 a fontforge script] that will allow stripping unnecessary glyphs or glyph ranges from the fonts. If needed, one can [http://svn.debian.org/wsvn/d-i/trunk/scripts/g-i/README.strip_glyphs?op=file&rev=0&sc=0 read the usage hints].

Information on how to play around with fonts is included in ["DebianInstallerGUIBuild"].


Fonts configuration for the G-I

Infos for language codes were fetched from:

Latin-1

Base characters (Latin) are taken from ttf-dejavu (existing udeb).

Lang Code

Language Name

Current Font

Other Fonts

Status / Observations

ca

Catalan

ttf-dejavu

ttf-freefont

ok

da

Danish

ttf-dejavu

ttf-freefont

ok

de

German

ttf-dejavu

ttf-freefont

ok

en

English

ttf-dejavu

ttf-freefont

ok

es

Spanish

ttf-dejavu

ttf-freefont

ok

eu

Basque

ttf-dejavu

ttf-freefont

ok

fi

Finnish

ttf-dejavu

ttf-freefont

ok

fr

French

ttf-dejavu

ttf-freefont

ok

ga

Irish

ttf-dejavu

ttf-freefont

ok

gl

Gallegan

ttf-dejavu

ttf-freefont

ok

is

Icelandic

ttf-dejavu

ttf-freefont

ok

it

Italian

ttf-dejavu

ttf-freefont

ok

nb

Norwegian Bokmal

ttf-dejavu

ttf-freefont

ok

nl

Dutch

ttf-dejavu

ttf-freefont

ok

nn

Norwegian Nynorsk

ttf-dejavu

ttf-freefont

ok

pt

Portuguese

ttf-dejavu

ttf-freefont

ok

pt_BR

Portuguese (Brazil)

ttf-dejavu

ttf-freefont

ok

sq

Albanian

ttf-dejavu

ttf-freefont

ok

sv

Swedish

ttf-dejavu

ttf-freefont

ok

Latin-other

These are also covered by ttf-dejavu.

Lang Code

Language Name

Current Font

Other Fonts

Status / Observations

bs

Bosnian

ttf-dejavu

ttf-freefont

ok

cs

Czech

ttf-dejavu

ttf-freefont

ok

cy

Welsh

ttf-dejavu

ttf-freefont

ok

eo

Esperanto

ttf-dejavu

ttf-freefont

ok

et

Estonian

ttf-dejavu

ttf-freefont

ok

hu

Hungarian

ttf-dejavu

ttf-freefont

ok

id

Indonesian

ttf-dejavu

ttf-freefont

ok

ku

Kurdish

ttf-dejavu

ttf-freefont

ok

lv

Latvian

ttf-dejavu

ttf-freefont

ok

lt

Lithuanian

ttf-dejavu

ttf-freefont

ok

mg

Malagasy

ttf-dejavu

ttf-freefont

ok

pl

Polish

ttf-dejavu

ttf-freefont

ok

ro

Romanian

ttf-dejavu

ttf-freefont

ok

hr

Croatian

ttf-dejavu

ttf-freefont

ok

se

Sami

ttf-dejavu

ttf-freefont

ok

sk

Slovakian

ttf-dejavu

ttf-freefont

ok

sl

Slovenian

ttf-dejavu

ttf-freefont

ok

tl

Tagalog

ttf-dejavu

ttf-freefont

ok

tr

Turkish

ttf-dejavu

ttf-freefont

ok

ca@valencia

Valencian-Catalan

ttf-dejavu

ttf-freefont

ok

vi

Vietnamese

ttf-dejavu

ttf-freefont;[http://www.vn.net/staticpages/index.php/VietUniFont-HanNomSet ?HanNomSet],[http://www.vn.net/staticpages/index.php/VietUniFont-TriChlorSet ?TriChlorSet]

The licenses for [http://www.vn.net/staticpages/index.php/VietUniFont-HanNomSet ?HanNomSet] and [http://www.vn.net/staticpages/index.php/VietUniFont-TriChlorSet ?TriChlorSet] have not been studied

wo

Wolof

ttf-dejavu

ttf-freefont

Display is correct with ttf-freefont, even the "ŋ" characters; dejavu state is unknown

xh

Xhosa

ttf-dejavu

ttf-freefont

ok

Non-Latin scripts

Georgian script

Lang Code

Language Name

Current Font

Other Fonts

Status / Observations

ka

Georgian

ttf-bpg-georgian-fonts

ttf-freefont

Udeb requested in [http://bugs.debian.org/356333 #356333]

Greek script

Lang Code

Language Name

Current Font

Other Fonts

Status / Observations

el

Greek

ttf-dejavu

ttf-freefont

With ttf-freefont, Greek is a little blurred but ok: see [http://lists.debian.org/debian-boot/2006/02/msg00662.html this] thread

Hebrew script

Lang Code

Language Name

Current Font

Other Fonts

Status / Observations

he

Hebrew

ttf-freefont

ttf-freefont was [http://lists.debian.org/debian-boot/2005/12/msg00511.html approved by Lior Kaplan].

Indic family scripts

Lang Code

Language Name

Current Font

Other Fonts

Status / Observations

bn

Bengali

MuktiNarrow

ttf-freefont

ttf-freefont still has issues, while Mukti displays correctly. New freefont have been succesfully tested and can be used after [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=254113 #254113] will be fixed.

hi

Hindi

Gargi_1.7.ttf

Chandas, Lohit Hindi

Displays correctly after a proper stripping. New freefont have been succesfully tested and can be used after [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=254113 #254113] will be fixed.

ne

Nepali

Gargi_1.7.ttf

Chandas, Lohit Hindi

Paras pradhan recommends using Garki_1.7.ttf.freefont contains all the glyphs necessary to display Nepali text and is currently used.

pa

Punjabi (Gumurkhi)

Saab

Lohit Punjabi, AnmolUni

Saab.ttf works fine; new freefont have been succesfully tested and can be used after [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=254113 #254113] will be fixed. Lohit Fonts are most suitable for Linux System. [http://packages.debian.org/unstable/x11/ttf-punjabi-fonts Punjabi Fonts]; (soumyadip: well I was reading somewhere that AnmolUni was better) - this font should be (apparently) in ttf-punjabi-fonts, but is not currently (1:0.4.7)

ml

Malayalam

none(?)

RachanaMedium.ttf ([http://packages.debian.org/unstable/x11/ttf-malayalam-fonts ttf-malayalam-fonts]), Racotf04.ttf

Vivek Varghese Cherian recommends using Racotf04.ttf (not packaged yet). Current font will be dropped in favor of Racotf04

Resources: #indlinux IRC channel on irc.freenode.net and eventually <debian-in-workers@lists.alioth.debian.org>

For Indic languages we currently include fonts from [http://packages.debian.org/unstable/x11/ttf-devanagari-fonts ttf-devanagari-fonts] and [http://packages.debian.org/unstable/x11/ttf-punjabi-fonts ttf-punjabi-fonts] (both maintained by Jaldhar H. Vyas <jaldhar@debian.org>)

  • Gargi_1.7.ttf (ttf-devanagari-fonts)
  • Saab.ttf (ttf-punjabi-fonts)

Bengali script (Brahmic family)

There was [http://lists.debian.org/debian-boot/2005/12/msg00338.html a report] stating that Bengali does not look right. [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=343446 #343446] tries to analyze the problem.

Currently the installer uses freefont; in the near future ?MuktiNarrow will probably be used (recomended by Jamil Ahmed <itsjamil@gmail.com> and confirmed by Baishampayan Ghose <b.ghose@gnu.org.in>).

Mukti Narrow looks great, but there is some more stripping to be done (apparently) because this font is silently overridden by freefont (probably). (by silent I mean that "fc-list :lang:bn" does not list nothing other than Mukti, but the installer uses something else, anyway)

Update: #343446 confirms that ?MuktiNarrow should be used. Although freefont has support for Bengali, it seems that there are still some problems.

Devanagari script

[hi] Hindi

[ne] Nepali

Nepali uses the Devanagari script. Language is not currently supported by the Debian Installer (translations are not present).

Gurmukhi script

[pa] Punjabi (Gumurkhi)

Punjabi Language is Written in Gurmukhi Script for Eastren Punjab (India).

Malayalam script

[ml] Malayalam

Malayalam has a script of his own. Vivek Varghese Cherian recommends using Racotf04.ttf. The suggestion to package it has been sent to Soumyadip Modak who maintains [http://packages.debian.org/unstable/x11/ttf-indic-fonts ttf-indic-fonts], the source package for [http://packages.debian.org/unstable/x11/ttf-malayalam-fonts ttf-malayalam-fonts].

Language is not currently supported by the Debian Installer (translations are not present).

Tamil script

[ta] Tamil

Lang Code

Language Name

Current Font

Other Fonts

Status / Observations

ta

Tamil

TSCu_Paranar!

Font in ttf-tamil-fonts. Request for udeb sent as bug [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=358226 #358226]. 0.4.7.1 with the udeb is in NEW

Tibetan family scripts

Lang Code

Language Name

Current Font

Other Fonts

Status / Observations

dz

Dzongkha

ttf-dzongkha

Jomolhari.ttf [http://lists.debian.org/debian-boot/2006/04/msg00581.html should be used]. udeb OK in unstable

South-East Asian scripts

Lang Code

Language Name

Current Font

Other Fonts

Status / Observations

km

Khmer

KhmerOSsys.ttf

ttf-khmeros

udeb OK in unstable.

lo

Lao

none(?)

ttf-lao

Font named Phetsarath

th

Thai

none

[http://linux.thai.net/~thep/debian/source/thaifonts-scalable/ ttf-thai-tlwg]

Font named Loma. ttf-thai-tlwg-udeb provided by thaifonts-scalable 0.4.4-5 uploaded June 12th, but needs NEW processing

Arabic scripts

Lang Code

Language Name

Current Font

Other Fonts

Status / Observations

ar

Arabic

nazli

ae_AlMohanad and [http://lists.debian.org/debian-boot/2006/01/msg01119.html others]

Davide Viti has created [http://lists.debian.org/debian-boot/2006/02/msg00915.html an iso image] where he uses nazli for arabic, also [http://lists.debian.org/debian-boot/2006/02/msg00916.html sceenshots for all supported languages] were done an published

fa

Persian

nazli

[http://fpf.sourceforge.net/cms/index.php Free Persian Font] and [http://lists.debian.org/debian-boot/2006/01/msg01119.html others]

[http://fpf.sourceforge.net/cms/index.php Free Persian Font]'s italic [http://lists.debian.org/debian-boot/2006/01/msg01108.html looks ugly]. Tests should be done for "[http://lists.debian.org/debian-boot/2006/01/msg01119.html others]", if any of them are suggested by farsi speaking people.

nazli characters should be bigger (same for ae_AlMohanad in case it will be used again).

It seems that for arabic, nazli is the most fitted for arabic scripts. ttf-farsiweb-udeb provided by ttf-farsiweb 0.4-2.1 uploaded June 13th, but needs NEW processing

[ar] Arabic

Resources: #arabeyes IRC channel on irc.freenode.net

Package: [http://packages.debian.org/unstable/debian-installer/ttf-arabeyes-udeb ttf-arabeyes-udeb] (maintained by Mohammed Adnène Trojette <adn+deb@diwi.org>)

The udeb includes "ae_AlMohanad.ttf"; as an alternative we've experimented a tarball containig "ae_Tholoth.ttf". "ae_AlMohanad.ttf" is said to produce better visual results.

See:

Needs to be checked now that ttf-freefont has been stripped.

  • There is some oddity going around in G-I as Arabic was not displayed when ttf-arabeyes was added along with ttf-punjabi-fonts, ?MuktiNarrow, ja, ko and zh fonts. This problem was not present when ttf-farsiweb is added instead of ttf-arabeyes.

[fa] Persian

Glyphs are shared with Arabic; "ae_AlMohanad.ttf" seem to have problems especially with ligatures; we need to see if "ae_Tholoth.ttf" works better. Roozbeh Pournader, upstream maintainer of [http://packages.debian.org/unstable/x11/ttf-farsiweb ttf-farsiweb] fonts, recommends using the nazli.ttf font from the [http://packages.debian.org/unstable/x11/ttf-farsiweb ttf-farsiweb] package. He discourages the use of ae_Tholoth.ttf. [http://packages.debian.org/unstable/x11/ttf-farsiweb ttf-farsiweb] is maintained by Clint Adams, but Arash Bijanzadeh, the Persian translation coordinator is ready to take it over as Clint wants to orphan the package. ChristianPerrier will help him in this process.

Chinese/Japanese/Korean scripts

Lang Code

Language Name

Current Font

Other Fonts

Status / Observations

ja

Japanese

ttf-cjk-compact-udeb

Kenshi and Hidetaka recommend Sazanami-Gothic. A stripped ttf is about 160KB. Still there is a [http://lists.debian.org/debian-boot/2006/02/msg00936.html question] if the kana and kanji glyphs are well mixed for Japanese.

ko

Korean

ttf-cjk-compact-udeb

[http://packages.debian.org/unstable/debian-installer/ttf-cjk-compact-udeb ttf-cjk-compact-udeb] is a custom made font set based on the necessary glyphs that are encountered in D-I. The Korean fonts are taken from UmDotum; We did have report from Sunjae Park <darehanl@gmail.com> stating that the [http://lists.debian.org/debian-boot/2005/11/msg01409.html ?UnDotum looked right]

zh_CN

Chinese (Simplified)

ttf-cjk-compact-udeb

ttf-comapct-fonts is a custom made font set based on the necessary glyphs that are encountered in D-I

zh_TW

Chinese (Traditional)

ttf-cjk-compact-udeb

ttf-comapct-fonts is a custom made font set based on the necessary glyphs that are encountered in D-I

For Chinese and Japanese [http://lists.debian.org/debian-boot/2005/12/msg00150.html we currently use the fonts prepared by Kenshi Muto] (ttf-compact-fonts). For an overview, see [http://people.debian.org/~kmuto/d-i/cjk/cjk.html this page].

We should make sure that none of the fonts below provides glyphs for other scripts than the ones which they were introduced (currently there are latin glyphs provided by them which take up space and harm us a lot for latin scripts).

Chinese and Japanese have an [http://en.wikipedia.org/wiki/Han_unification unification problem]. Unicode defines same codepoint against different glyphs between Japanese/Chinese(/Korean, but the Korean translation does not use any glyphs from this Unified Ideographs region so Korean is free from this issue). Furthermore Chinese font face and Japanese font face are different (do you think Helvetica and NewCentury are same? :-P ). So they don't like to use them together.

For Korean we now use [http://lists.debian.org/debian-boot/2005/12/msg00150.html ttf-compact-fonts], which has stripped UnDotum.ttf from ttf-unfonts (maintained by Changwoo Ryu <cwryu@debian.org>)

We previous included complete ttfs, but these took a lot of space:

  • UnDotum.ttf

  • UnDotumBold.ttf

We did have report stating that the UnDotum looked right: http://lists.debian.org/debian-boot/2005/11/msg01409.html

Cyrillic scripts

Lang Code

Language Name

Current Font

Other Fonts

Status / Observations

be

Belarusian

ttf-dejavu

bg

Bulgarian

ttf-dejavu

kk

Kazakh

ttf-dejavu

mk

Macedonian

ttf-dejavu

ru

Russian

ttf-dejavu

sr

Serbian

ttf-dejavu

uk

Ukrainian

ttf-dejavu

[http://dejavu.sourceforge.net/wiki/index.php/Main_Page ?DejaVu fonts] is based on Bitstream Vera and their recent releases have good cyrilic coverage. The [http://packages.debian.org/unstable/source/ttf-dejavu Debian package] has been updated to version 2.7. The package now creates a udeb since version 2.7-1, using the DejaVuSans fonts. If latin glyphs are not used from this font, then they should be stripped out.

Creating screenshots

As a prerequisite your machine must have been started with support for framebuffer

  • get a minimal g-i image (around 10Mb) and create the test environment:

    $ mkdir -p g-i/tree && cd g-i
    $ wget http://people.debian.org/~joeyh/d-i/images/daily/gtk-miniiso/mini.iso
    $ mount -t iso9660 mini.iso /mnt -o loop
    $ cp /mnt/initrd.gz tree/ && cd tree/
    $ zcat initrd.gz | cpio -i
    $ cd ..
    $ umount /mnt
  • put all you need for taking the screenshots (text files, application, etc) in the test environment:

    $ wget  http://d-i.alioth.debian.org/gtk-frontend/screenshots/samples.tgz
    $ tar xzf samples.tgz -C tree/
  • grab the [http://svn.debian.org/wsvn/d-i/trunk/scripts/g-i/chroot_g-i.txt?op=file&rev=0&sc=0 script] which does some black magic and execute it:

    $ sh chroot_g-i.txt
    $ chroot tree /bin/ash

You can take a screenshoot for Italian language:

$ ./gtk_font_tester it.txt  800 600
$  mv /var/log/test_0.png /var/log/it.png

or if you want to take a screenshot for all supported languages:

$ take_shots.sh

It's now possible to leave the chroot (CTRL-d) and see the pictures inside tree/var/log