Home

Contact Us

General

Initiative B@bel

WSI Guidelines

Encoding

Principles

Unicode

Training

Tutorials

PUA

Conversion

Resources

Utilities

TECkit

Maps

Resources

Input

Principles

Utilities

Tutorials

Resources

Type Design

Principles

Design Tools

Formats

Resources

Font Downloads

Gentium

Doulos

IPA

Rendering

Principles

Technologies

OpenType

Graphite

Resources

Font FAQ

Links

Glossary


NRSI: Computers & Writing Systems

SIL HOME | CONTACT US | DONATE

You are here: General
Short URL: http://scripts.sil.org/FLOSS

Resources for Writing Systems Implementation using Copyleft and FLOSS (Free/Libre and Open Source Software)

Note

Although many of the solutions mentioned in this document can be very helpful for those interested in implementing writing systems, SIL International has not tested them, does not make any specific recommendations or specific claims about their legality or suitability for use. It is the user's responsibility to test the maturity and to understand the licensing of the following items before using, modifying or redistributing them.

Comments and feedback welcome. If you have experience with any of the projects mentioned below, feel free to add a comment.
Please use the "Add a response to.." link at the bottom of this page. Thank you.

    Introduction
    Use Existing Writing System Components
        Fonts
            Copylefted fonts
            Freeware fonts
            Public domain fonts
        Libraries and rendering toolkits
        General Input Methods and keyboarding tools
        Language specific IM (Input Methods) and keyboarding tools
        Keyboards (copyleft and freeware)
        Character mappers and glyph selectors
        Locales and related tools
        Printing systems - Device independent files and PDF generation
    Read documentation about WSI components and frameworks
        i18n primers
        Howtos, FAQs, man pages and tutorials
        Examples of language howtos
        Papers from the i18n specialists within the FLOSS community
        Publications about font technologies
    Configure your Desktop Environment (GNOME or KDE on the X Window system) for specific language needs
        Under GNOME
        Under KDE
        Other font tools
        Manual font installation at command-line level
        Command-line tools
        Font Matching and Anti-aliasing settings
        Other font management tools
        Dotfiles and important configuration files and directories in your filesystem
            Dotfiles
            Directories
        Some useful environment variables
    Create your own WSI components based upon the existing copyleft models and tools
        Font creation, conversion and modification tools
        Localisation teams and translation statistics
        Localization tools
    Plan a Free/Libre and Open strategy for your WSI components
        Be aware of open standards and build interoperable and sustainable WSI components
        Licensing and cooperative development models
            Compare the copyleft vs. proprietary models
            Understand and choose the appropriate license
            Beware of software patents problems
        Partnerships and funding
    Set up your FLOSS WSI project and get the community's interest and help
        Understand the basics of Free, Libre and Open Source software development
        Learn and contribute to the discussion on the major i18n mailing-lists
        Learn how to package and deploy your WSI projects
        Create and publish documentation for your WSI components
        Create training material for your WSI
            Typing
            Language learning software
    Use extra WSI components to extend your language community's cyber-literacy
        Office, Publishing, Typesetting and DTP (DeskTop Publishing) software
        Graphic design software
        Web browsing, Email, Usenet, IRC (Internet Relay Chat) and IM (Instant Messenging) software
        Website creation and publication tools
        Text editing with Unicode support
        XML editors
        Document processing markup languages (What You See Is What You Mean)
        Text processing and massaging tools
        Databases, thesaurus, dictionaries and library tools
        Open language data repositories
        Language data viewers and converters
        Accessibility tools
        Text to Speech tools
        Scanning and OCR (Optical Character Recognition)
    Look for further resources on related portals
        Associations
        Software and documentation portals
        Desktop integration:
        Language resources:
        Open hardware

-----

Introduction

Are you looking for ideas, information and tools to enhance or start from scratch a WSI (Writing System Implementation) or one of its components for a specific language community? This collection of links will help you use copyleft and FLOSS (Free/Libre and Open Source Software) technologies and methods to develop, adapt or enhance a WSI.

The  copyleft approach can increase a language community's ability to fully enjoy the benefits of the information age and to effectively reduce the Digital Divide. Using open standards and copylefted technologies can lower the barrier of entry for use, cooperation and dissemination of a particular WSI by bringing cyber-literacy to minority language communities through improved sustainability, interoperability, and capacity building. The cooperative models allow a distributed and networked team to be set up to get volunteers and users more closely in touch with the developers than with proprietary development models. In fact, copyleft and FLOSS are methods of creating software more than just freely available tools.

As a developer - or any kind of contributor - there are many advantages to a well-managed copyleft strategy, you can:

  • Adapt and improve specific existing WSI components to support your language
  • Use the collaborative intelligence and expertise of the FLOSS community to better understand the requirements and the complexity of a WSI component
  • Use the components and the source code created by the FLOSS community as a source of inspiration
  • Use the various creation and modification tools to create new components
  • Set up a participatory and distributed project for your WSI components using the free hosting and cataloging services
  • Make your WSI known, supported, packaged and included on major platforms and distributions to help it work out-of-the-box
  • Track and maintain the adaption of various WSI components to the evolution of your language
  • Create documentation and training material for your WSI using existing documentation and language learning tools
  • Extend the field of use of your WSI with extra components
  • Increase the number of info-tools that support your language
  • Set up and manage a language team to organise software localisation projects
  • Keep a electronic archive of useful interoperable language data
  • Follow more easily the trend of new technologies and new standards and retain interoperability
  • Cooperate and bring expertise to other WSI projects related to your language

Note

It is a good idea to check software catalogs (such as  freshmeat.net) and to keep an eye on community news-sites (such as  newsforge.net) to track the evolution and the maturity of these various writing systems-related projects. Be aware of the direction of the various leading projects as well as the discussions about new standards. Being able to give input at the right time can dramatically help improve support for your language. You're also very likely to hear about new interesting projects being set up in the meantime.

Use Existing Writing System Components

Fonts


The major GNU/Linux distributions usually bundle a mix of copylefted, public domain and freeware fonts such as:

courrier, helvetica, new century schoolbook, symbol, times, utopia, lucida, lucidabright, lucidatypewriter, luxi, charter, bookman, open look, avant-garde, chancery, nimbus, palladio, courier, veranda, gothic, tymes, aerial, palatino...

Various models of redistribution restrict the availability of fonts in a default installation, but you can download and add a lot of other fonts including proprietary ones.

Copylefted fonts

A selection of fonts packaged by Mandrake:

 rpms.mandrakeclub.com/rpms/System_Fonts_True_type.html

A selection of fonts packaged by Redhat:

 www.redhat.com/

A selection of fonts packaged by Debian:

  packages.debian.org/

A selection of fonts packaged by Gentoo:

 www.gentoo.org/dyn/pkgs/media-fonts/

The Vera Bitstream fonts from GNOME:

 www.gnome.org/fonts/

The Toga fonts derived from Vera:

 www.binara.com/toga/

The Arkpandora fonts derived from Vera:

 www.users.bigpond.net.au/gavindi/

The Culmus Hebrew fonts:

 culmus.sourceforge.net

The Paktype Paskistani fonts:

 www.zaban.net/paktype/

The Free UCS Outline fonts:

 www.nongnu.org/freefont

The ETL Unicode font:

 ftp.x.org/contrib/fonts/

The Bengali/Bangla fonts:

 www.bengalinux.org

The Mayayalam font:

 malayalamlinux.sourceforge.net

The Stix scientific fonts:

 www.stixfonts.org/faq.html

The Dustimo fonts:

 freshmeat.net/projects/dustismofont

The GNU Unifont:

 czyborra.com/unifont/HEADER.html

The Linux Font Project:

 sourceforge.net/projects/xfonts/

The Linux Libertine Open fonts:

 sourceforge.net/projects/linuxlibertine/

A set of Cyrillic fonts:

 ftp.gnome.ru/fonts

A set of Tamil fonts:

 www.tamillinux.org/fonts.html

The JHCFonts fonts:

 savannah.nongnu.org/projects/jhcfonts/

The URW++ standard PostScript fonts:

 ftp.gnome.ru/fonts/urw/release/

The HindiFreehand fonts:

 savannah.nongnu.org/projects/fontdudes/

The Wadalab Kanji fonts:

 ftp.ipl.t.u-tokyo.ac.jp/Font/README.html

The Legendum and Garioger OpenType fonts:

 home.kabelfoon.nl/~slam/fonts/fonts.html

The Malayalam Keli True type and Opentype font:

 www.linuxense.com/oss/

The Andagii TrueType font and the Penuturesu Linear B script font:

 www.i18nguy.com/unicode/unicode-font.html

The Junicode (short for Junius-Unicode) medievalist font:

 www.engl.virginia.edu/OE/junicode/junicode.html

The Khotot Arabic fonts:

 www.arabeyes.org/project.php?proj=Khotot

The StayPuft MS Comic-like font:

 www.thibault.org/fonts/staypuft/

The Isabella calligraphic hand-style font:

 www.thibault.org/fonts/isabella/

The ClearlyU BDF Unicode font:

 clr.nmsu.edu/~mleisher/cu.html

The Gimp fonts:

 www.gimp.org/fonts.html

A font catalog and with the corresponding source and data files:

 bibliofile.mc.duke.edu/gww/fonts/fonts.html

Freeware fonts

These fonts are redistributable for free but with restrictions — no source and data files available and no modification rights.



The Code2001 Plane 1 Unicode font:(with experimental provisional scripts added to Plane 15)

 http://web.archive.org/web/http://code2000.net/

The pxl2000 font:

 userpage.fu-berlin.de/~cantsin/homepage/computing/hacks/pxl2000/

A selection of original font designs:

 jeff.cs.mcgill.ca/~luc/originalfonts.html

The free font archive:

 cgm.cs.mcgill.ca/~luc/freefonts.html

George Williams's Unicode fonts:

 bibliofile.mc.duke.edu/gww/fonts/Unicode.html

Various other freeware fonts collections:

 www.identifont.com/free-fonts.html

 www.alanwood.net/unicode/fonts.html

 www.hclrss.demon.co.uk/unicode/fontsbyrange.html

 www.truetype.demon.co.uk/ttfonts.htm

 rpmfind.net/linux/RPM/X11_fonts.html

 www.masterstech-home.com/The_Library/Font_Samples/FontIndexMain.html

 www.fontfreak.com

 home.c2i.net/dark/linux.html#ttf

 http://www.babelstone.co.uk/Fonts/Index.html

 www.ccss.de/slovo/unifonts.htm

 www.simplythebest.net/fonts

 www.moorstation.org/typoasis/designers/westwind/

 www.fontgarden.com

 www.planete-typographie.com

The font section from the Google/DMOZ directory:

 directory.google.com/Top/Computers/Software/Fonts/Collections/

SIL's Fonts in Cyberspace has now been moved to here:

 Finding Software on ScriptSource

Public domain fonts

These fonts are available for redistribution with less restrictions but source code and data files are most of the time unavailable.



The Ghostscript fonts:

 www.cs.wisc.edu/~ghost/aladdin/doc/Fonts.htm

The Kanji scripts fonts:

 ftp.ipl.t.u-tokyo.ac.jp/Font/

The Electronic Font Open Laboratory:

 openlab.ring.gr.jp/efont/

The Raghu OpenType fonts:

 rohini.ncst.ernet.in/indix

Libraries and rendering toolkits

Freetype: a free and portable TrueType font rendering engine, developed to provide TrueType support for a variety of platforms and environments. FreeType is a library which can open and manage font files as well as efficiently load, hint and render individual glyphs. FreeType is not a font server or a complete text-rendering library.

 www.freetype.org

The Freetype alternate packages: it is worth noting that you can get alternate Freetype packages from special repositories in software patent-unencumbered countries. A good example of this are the Freetype plf (Penguin Liberation Front) packages with hinting enabled

 plf.zarb.org/faq.html

Pango: a library for layout and rendering of internationalized text as well as handling Unicode strings and complex bidirectional or context dependent shaped strings

 www.pango.org

QT: The KDE toolkit

 www.trolltech.com/products/qt/


GTK+: The GNOME toolkit

 www.gtk.org

WxWindows: another cross-platform UI library

 www.wxwindows.org

XFree86: The free implementation of the X Window system

 www.xfree86.org/

Xouvert: The open development community for the new improved X Window system

 www.xouvert.org

X11 for Mac OS X: the extensions and contributions to X11 (X Windows) by Apple

 www.apple.com/macosx/features/x11/

Cairo: a vector graphics library with cross-device output support

 www.cairographics.org

Freedesktop: a standards initiative for all the desktop-related technologies. The cooperation initiative between the leading desktops environments: GNOME and KDE

 www.freedesktop.org

xlibs: the X Libraries and Protocol Headers Project

 www.freedesktop.org/Software/xlibs

directfb: a library that provides hardware graphics acceleration, input device handling and abstraction, integrated windowing system with support for transparency

 www.directfb.org

GLTT: a library for reading and drawing TrueType fonts in OpenGL

 gltt.sourceforge.net

FontTools: a library for manipulating fonts

 sourceforge.net/projects/fonttools/

STFS (Standard Type Services Framework): a portable and extensible software framework for rendering typographically sophisticated text

 stsf.sourceforge.net

libunicode: a set of charset converters and string manipulation functions for the Unicode standard

 sourceforge.net/projects/libunicode/

ICU (International Components for Unicode): a portable, open-source C/C++ Unicode library with: charset-independent locales (and multiple locales simultaneously supported in the same thread), character conversions, formatting/parsing for numbers, currencies, date/time and messages, message catalogs (resources), transliteration, collation, normalization, text boundaries (grapheme, word, line-)), etc.

 www.icu-project.org/

ICU4j: a Java Unicode library with extensions to the core Java internationalization libraries: enhanced number formatting and parsing, customizable BreakIterators, additional Calendars (Japanese, Buddhist, Hebrew, Islamic), Business Holidays, Normalizer, optimized international searching, UnicodeSet and Transliteration, SCSU, etc.

 www.icu-project.org/

fribidi: an implementation of the Unicode BiDi (bidirectional) algorithm

 sourceforge.net/projects/fribidi/

Protobidi: a prototype bidirectional widget

 imagic.weizmann.ac.il/~dov/Hebrew/protobidi/

libots: a text summary library

 sourceforge.net/projects/libots/

gtkspell: a set of tools to allow highlighting and replacement of misspelled words in a GtkText widget

 freshmeat.net/projects/gtkspell/

Enchant: the new cross-platform abstract layer to spellchecking

 www.abiword.org/enchant/

libSDL_ttf: a True-type rendering library for SDL (Simple Direct Layer)

 www.libsdl.org/projects/SDL_ttf/

ucdata: a library to handle character properties, case, decomposing and combined classes

 crl.nmsu.edu/~mleisher/ucdata.html

librecode: a transliteration, non-ASCII to ASCII conversion library

 www.iro.umontreal.ca/contrib/recode/HTML/

Computational Resources for Linguistic Research

 http://www.ling.upenn.edu/courses/ling538/compres.htm

SILGraphite: the new generation smart rendering engine and CTL (Complex Text Layout) library

 graphite.sil.org

General Input Methods and keyboarding tools

gswitchit: the XKB toolkit (configurator, indicator) for GNOME

 sourceforge.net/projects/gswitchit

K_TTY: a Keyman style keyboard interpreter for the console and attached (or pseudo) terminals (including X terminals, remote sessions, etc.) for IPA and non-roman scripts input

 sourceforge.net/projects/ktty/

edk (Enhanced Dispositionned Keyboard): an enhanced input method

 sourceforge.net/projects/edk/

xvkbd: a virtual (graphical) keyboard program for X

 freshmeat.net/projects/xvkbd/

tkxinput: a set of tools to bring Xinput management capabilities to the Tk toolkit

 www.tls.cena.fr/divisions/PII/produits/tkxinput/

SCIM (Smart Common Input Method): a development platform that significantly reduces the difficulty of input method development. SCIM splits input method into three parts: FrontEnd, which handles user interface and communication with client applications, Server, which handles the key event to string conversion work, and BackEnd, which manages all of the Servers

 freshmeat.net/projects/scim/

IIIMF (Internet/Intranet Input Method Framework): a set of tools designed to be the next generation of input method framework which provides the following capabilities:

  • Multiplatform, platform independent
  • Multilingual and Full Unicode support, but satisfactory for native speakers
  • Windowing System Independent
  • Multiple language engines concurrently run
  • Multiuser
  • Distributed, lightweight clients and scalable server
  • Extensible in multiple means
  • Input method protocol efficient enough to be used over low-speed modem connection
  • Easy input method engine development with plugin API
  • Easy input method enabling with libiiimcf, even on console apps
  • Small core part to start from
 www.openi18n.org/subgroups/im/IIIMF/

libklavier: a utility library for X keyboard-related projects.

 wiki.fontconfig.org/Software/LibXklavier

gtkeyboard: a graphical keyboard that can be useful for the physically disabled and for keyboardless workstations. It provides the ability to type into foreign windows, to redirect output, and it also provides many shortcuts for common editing tasks

 freshmeat.net/projects/gtkeyboard

XKeyCaps: a graphical front-end to xmodmap. It displays a keyboard and lets you remap keys using dialog boxes, rather than having to learn the arcane syntax used by the xmodmap command.

 freshmeat.net/projects/xkeycaps

xkb: the standard X keyboard tool

 www.xfree86.org/downloads.html

kxkb: the keyboard-switcher in KDE (part of the kdebase package)

  www.kde.org

gkb: the map selection applet for setxkbmap or xmodmap in GNOME

 projects.gnome.hu/gkb/

settxkbmap: the command-line keyboard-switcher

 www.xfree86.org/downloads.html

gtk-im-extra: a collection of third party GTK+ input method modules

 gtk-im-extra.sourceforge.net

Language specific IM (Input Methods) and keyboarding tools

Chinput (Chinese input): an input method for Chinese languages

 www.opencjk.org/~yumj/project-chinput-e.html

kinput2: an input method for Japanese

 ftp.sra.co.jp/pub/x11/kinput2/

skkinput: a simple Kana-Kanji-like Japanese input application (website in Japanese)

 skkinput2.sourceforge.jp

im-ja: a generic Japanese input module for GTK+ 2. Currently supported input modes are Hiragana, Katakana, Half-Width Katakana, Zenkaku, Canna, Wnn, and Kanji character recognition

 freshmeat.net/projects/im-ja/

Canna: a CJK (Chinese/Japanese/Korean) input method (website in Japanese)

 www.nec.co.jp/canna/

Interxim: a X11 XIM server that uses the Yudit kmaps files to translate ASCII character sequences to Unicode

 www.oksid.ch/interxim/

imhangul: a Korean input method for GTK+

 imhangul.kldp.net

xcin (X window Chinese INput): a collection of Simplified Chinese input methods based on XIM (X Input Method), including WuBi, PinYin, and QuWei. It is the descendent of gWuBi

 xcin.linux.org.tw

fcitfx (Fun Chinese Input Toy for X): a user-friendly input method for Chinese languages

 www.fcitx.org/en.htm

FreeWnn: a free implementation of the most widely-used Japanese input systems

 www.freewnn.org

xsim: a simple and fast GB and BIG5 Chinese XIM server

 developer.berlios.de/projects/xsim

ivrix: a Hebrew input method

 www.ivrix.org.il

acon (Arabic CONsole): an input method for left-to-right Arabic text on the console and ligature processing

 www.gnu.org/directory/localization/adaptations/acon.html

zhcon: a fast CJK console system

 zhcon.sourceforge.net

im-classicalgreek: an input method for classical Greek

 im-classgreek.sourceforge.net

unicon: a CJK (Chinese/Japanese/Korean) Linux console input and display system from the GNU Project. Supports console virtual terminals, GPM mouse, keyboard, and almost all video devices using the kernel frame buffer. It supports multiple language fonts with a font manager so each virtual console can display a different font and input method. UNICON also can display IBM table characters mixed with double byte language encodings

 www.gnu.org/directory/UNICON.html

Luit: Locale and ISO 2022 support for Unicode terminals

 www.xfree86.org/current/luit.1.html

KanjiPad: a Japanese handwriting recognition system. It uses the GTK toolkit for a GUI and Todd David Rudicks's algorithms from JavaDict for Kanji recognition.

 www.gtk.org/~otaylor/kanjipad/

Brahmi: Java Input Methods and OpenType fonts for Indian languages

 sourceforge.net/projects/brahmi/

Keyboards (copyleft and freeware)

Inscript Keymaps for Indian languages:

 www.indlinux.org/keymap/keymaps.php

Maltese keyboards:

 linux.org.mt/article/keyboard?lang=en

Keyboards included with SIL fonts: (under SIL academic licensing)

 www.sil.org/computing/fonts/

Keyman keyboards:

 www.tavultesoft.com/keyman/downloads/keyboards/

 people.freenet.de/LukasPietsch/Keyman/Keyboards.html

 zsigri.tripod.com/fontboard/links.html

Character mappers and glyph selectors

Word processors offering a "special character" insertion dialog:

gucharmap: the full Unicode character map for GNOME

 gucharmap.sourceforge.net

kcharselect: the glyph palette for the KDE environment (part of the kdebase package)

 www.kde.org

Locales and related tools

A collection of locales By Pablo Saratxaga (The Mandrake i18n specialist):

 chanae.walon.org/linux/locales/

A collection of locales by IBM:

 oss.ibm.com/developerworks/projects/locale

localedrake: the locale switcher from Mandrake (part of the drakxtools administration suite)

 rpms.mandrakeclub.com/linux/rpm2html/search.php?query=drakxtools

redhat-config-language: the locale switcher from Redhat (part of the redhat-config package)

  www.redhat.com

Printing systems - Device independent files and PDF generation

cups (Common UNIX Printing System): the cross-platform printing solution for all UNIX environments. Based on the "Internet Printing Protocol", it provides complete printing services to most PostScript and raster printers

 www.cups.org

foomatic: a database-driven system for using free software printer drivers with all known free software spoolers on Unix and Mac OS X

 sourceforge.net/projects/foomatic/

ghostscript: a set of software that provides a PostScript interpreter, a set of C procedures (the Ghostscript library, which implements the graphics capabilities in the PostScript language) and an interpreter for Portable Document Format (PDF) files. Ghostscript translates PostScript code into many common, bitmapped formats, like those understood by your printer or screen. Ghostscript is normally used to display PostScript files and to print PostScript files to non-PostScript printers

 www.gnu.org/software/ghostscript/ghostscript.html

a2ps: a utility providing pretty-printing capabilities and including support for a wide number of programming languages, encodings (ISO Latins, Cyrillic, etc.), and medias

 freshmeat.net/projects/a2ps/

Tipograf: a frontend to a2ps

 www.gnu.org/directory/print/postscript/tipograf.html

PangoPDF: the PDF and PostScript backends for Pango (the internationalization library from GNOME)

 pangopdf.sourceforge.net

LinuxPrinting: a documentation website around printing technologies and hardware for GNU/Linux, xBSD as well as Solaris and OS X

 www.linuxprinting.org

Read documentation about WSI components and frameworks

i18n primers

The GNOME i18n project:

 www.gnome.org/i18n/

 developer.gnome.org/doc/whitepapers/gtki18n/

The KDE i18n project:

 i18n.kde.org

The Intro-i18n documentation from Debian:

 www.debian.org/doc/manuals/intro-i18n/

Howtos, FAQs, man pages and tutorials

The Font Howto:

 www.linuxdoc.org/HOWTO/Font-HOWTO.html

The True type font howto:

 www.linuxdoc.org/HOWTO/Font-HOWTO.html

The UTF8 and Unicode FAQ:

 www.cl.cam.ac.uk/~mgk25/unicode.html

 www.tldp.org/HOWTO/Unicode-HOWTO.html

The Sub-Pixel Font Positioning howto:

 jmason.org/howto/subpixel.html

The Font de-uglification mini-howto:

 www.linuxdoc.org/HOWTO/mini/FDU/

The comp.fonts FAQ (unmaintained but still interesting):

 www.nwalsh.com/comp.fonts/FAQ/

 www.faqs.org/faqs/fonts-faq/

The keyboard and console howto:

 www.tldp.org/HOWTO/Keyboard-and-Console-HOWTO.html

The XKB Configuration Guide:

 www.xfree86.org/current/XKB-Config.html

The Linux Accessibility howto:

 www.linuxdoc.org/HOWTO/Access-HOWTO.html

A Unicode bibliography:

 www.math.utah.edu/pub/tex/bib/index-table-u.html#unicode

A portal on Chinese computing:

 seba.ulyssis.org/thesis

Examples of language howtos

The Chinese-Howto:

 www.tldp.org/HOWTO/Chinese-HOWTO.html

The Spanish Howto:

 www.tldp.org/HOWTO/Spanish-HOWTO.html

The Thai Howto:

 www.tldp.org/HOWTO/Thai-HOWTO.html

The Linux Documentation Project:

 www.tldp.org

The man (manual) and info pages: (you can use the man pinfo yelp or khelpcenter tools to browse the documentation directly on your system, and you can find further documentation in /usr/share/doc/<nameofthepackage>)

  tldp.org/docs.html#man

Papers from the i18n specialists within the FLOSS community

Owen Taylor:

 people.redhat.com/otaylor/

Noah Levitt:

 www.columbia.edu/~nlevitt/

Pablo Saratxaga:

 chanae.walon.org/~srtxg/

Keith Packard:

 keithp.com/~keithp/talks/

Frank Tang:

 people.netscape.com/ftang/paper/

Edward Cherlin:

 www.unicode.org/iuc/iuc24/b005.html

Yannis Haralambous:

 www.unicode.org/iuc/iuc16/b014.html

 omega.enstb.org/yannis/

Publications about font technologies

"Things we wish we knew when we started on Truetype fonts":

 home.c2i.net/dark/linux.html#ttf

"Fighting Font Frustration" by Steve Coile:

 people.redhat.com/~mgalgoci/fonts/fixing.html

"Using TrueType Fonts with Red Hat Linux" by Dan Kegel :

 www.kegel.com/linux/tt.html

The "Advanced Font System" White Paper by Redhat:

 www.redhat.com/knowledgebase/newfontsystem/

Configure your Desktop Environment (GNOME or KDE on the X Window system) for specific language needs

Setting up the various WSI components to work smoothly together involves:

  • setting up a locale and a charset
  • viewing a font
  • installing a font
  • modifying and activating the font path
  • generating the index and the cache
  • choosing a font for the console or the Desktop Environment
  • setting up anti-aliasing, scaling, matching

You need to set up these different font types for desktop use:

  • Proportional
  • Serif
  • Sans-serif
  • Cursive
  • Fantasy
  • Monospace
  • Minimum font size

Under GNOME

fontilus: a set of extensions for the Nautilus graphical shell to help manage fonts on your system

 freshmeat.net/projects/fontilus

  • launch the Nautilus graphical shell from a menu or desktop shortcut
  • type "fonts:" in the address bar
  • drag and drop the fonts into your font folder (you can also type "nautilus fonts:" directly from a shell)

(the "gnome-font-viewer" and the "gnome-thumbnail-font" utilities are part of fontilus)

after installing your font you can click on them for a preview

to select a particular font as your desktop font, use "Set as Application Font" entry in the context menu



gfontview: an outline font viewer

 freshmeat.net/projects/gfontview

gnome-font-properties: a font configuration dialog (part of the GNOME Control Center)

 www.gnome.org/

  • type "gnome-font-properties" to choose a desktop font and adjust the anti-aliasing settings

Under KDE

Kfontinst: font installation tool for KDE

 freshmeat.net/projects/kfontinst/

  • launch "font install" in your menu under Configuration-KDE->System->Font Install (you can also type "kcmshell kcmfontinst" to access the kcontrol item directly from a shell)
  • use the dialog boxes to browse to your fonts and install them
  • type "kcmshell fonts" to set it up as your desktop font and adjust the anti-aliasing.

Other font tools

xfontsel: a font selection tool from XFree86 to filter fonts by foundry, family, weight, slant, s width, ad style, pixel size, point size, resx, resy, spacing, average height, registry, encoding

 www.xfree86.org/4.2.0/xfontsel.1.html

The OpenOffice.org administration tool: a utility to configure OpenOffice.org and to add new fonts (they will only be available to OOo)

 www.openoffice.org/FAQs/fontguide.html

  • type "/usr/lib/openoffice/spadmin" from a shell
  • press the "Fonts" button and point OpenOffice.org to the folder where the *.ttf files are located.
  • Select them and launch the installation.
  • They will then be copied to ~/.openoffice/user/fonts.

Manual font installation at command-line level

You can also install fonts manually:

  • copy the fonts to ~/.fonts (you will have to create it if it doesn't exist)
  • run mkfontdir to generate the fonts.dir description file
  • run fc-cache to generate the fonts.cache1 cache file

This will only make the fonts available to that specific user (since there are copied to his private home directory).

Command-line tools

fc-cache: a font cache creation utility (part of the fontconfig package)

fc-list: a font-lister in command-line mode (part of the fontconfig package)

 www.fontconfig.org

mkfontdir, mkfontscale, fslsfonts, xlsfonts, showfont: a set of utilities to handle font configuration (part of the XFree86-xfs package)

 www.xfree86.org

Font Matching and Anti-aliasing settings

In OpenOffice.org:

  • Use the menu entry "Tools -> Options" and then "OpenOffice.org -> Fonts" to adjust the replacement and font matching capabilities.
  • Use the menu entry "Tools -> Options" and then "OpenOffice.org -> View" to adjust the font scaling and anti-aliasing.

In Mozilla:

  • Use the menu entry "Edition -> Preferences" and then "Display -> Fonts" to adjust the font settings

Other font management tools

Fontconfig: a set of tools designed to locate fonts within the system and select them according to requirements specified by applications

 www.fontconfig.org

drakfont: the Mandrake font manager - a flexible font configuration framework

 rpms.mandrakeclub.com/linux/rpm2html/search.php?query=drakxtools

defoma: the Debian Font Manager - automatic font configuration framework

 packages.debian.org/stable/admin/defoma.html

dfontmgr: the GUI frontend for defoma

 packages.debian.org/stable/admin/dfontmgr.html

oto (Open Type Organizer): a tool to show precise font info and allow table mapping

 sourceforge.net/projects/oto/

fontlingue: a font management tool with a web interface

 www.gesindel.de

Dotfiles and important configuration files and directories in your filesystem

Although all these settings are handled by front-end administration tools, it helps to know where to look for settings in your filesystem.
Here is a selection of these important dotfiles:

Dotfiles

  • font-cache-1
  • fonts.dir
  • fonts.scale
  • fonts.alias
  • /etc/fonts/fonts.conf
  • /etc/fonts/fonts.dtd
  • /etc/X11/XftConfig
  • /etc/sysconfig/i18n
  • ~/.i18n
  • /etc/pango/pangox.aliases
  • ~/.xftcache
  • /etc/X11/XF86Config-4

Directories

  • ~/.fonts/
  • /usr/X11R6/lib/X11/fonts/
  • /usr/share/fonts/
  • .kde/share/fonts/
  • /usr/lib/openoffice/share/fonts/
  • /etc/gnome/fonts/
  • /lib/kbd/consolefonts/*.psf
  • /usr/lib/kbd/keymaps/
  • /lib/kbd/keymaps/

Some useful environment variables

$QT_XFT

$GDK_USE_XFT

$KEYBOARD

$KEYTABLE

$KBCHARSET

$GTK_IM_MODULE

Create your own WSI components based upon the existing copyleft models and tools

Font creation, conversion and modification tools

gfe (GNU Font editor): a graphical font editor based on the GIMP Toolkit

 www.gnu.org/software/gfe/gfe.html

gote (GNOME Opentype editor): an editor for vector fonts

 sourceforge.net/projects/gote/

Gribouy: a PostScript font editor

 www.nongnu.org/gribouy/

fonter: a interactive font editor for the console

 freshmeat.net/projects/fonter/

PfaEdit (Postscript font editor): an outline font editor that lets you create your own PostScript, True type, OpenType, cid-keyed, SVG and bitmap (bdf) fonts, or edit existing ones. Also lets you convert one format to another. PfaEdit has support for many MacIntosh font formats

 pfaedit.sourceforge.net

Cfe (Console Font Editor): a font editor allowing various glyph transforming, multi-level undo, and comparing glyphs of two fonts. cfe automatically supports loading of .psf and raw binary fonts

 lrn.ru/~osgene/

fontutils: a set of tools to access font internals

  • showttf: a tool to decompose a True type (or OpenType) font file into its various tables and display their contents
  • ttf2eps: a tool to extract one (or all) glyphs from a font and convert them into eps files
  • pfadecrypt: a tool to decrypt a PostScript font and convert the byte codes into readable PostScript-like instructions.
 pfaedit.sourceforge.net/fontutils.html

otcomp (OpenType COMPiler): a compiler for OpenType fonts (with makefile examples)

 home.kabelfoon.nl/~slam/fonts/otcomp.html

PostScript-utilities: a set of tools to handle PostScript and Truetype fonts

 bibliofile.mc.duke.edu/gww/fonts/postscript-utilities/

tftmod: a utility to edit font tables (a companion to PfaEdit)

 pfaedit.sourceforge.net/TtfMod/

truetypeviewer: a useful tool for debugging TrueType instructions and for viewing OpenType Layout features. It supports OpenType single, pair and mark-to-base positioning as well as single, multiple, alternate and ligature substitution

 home.kabelfoon.nl/~slam/fonts/truetypeviewer.html

tticomp (True type Instruction COMPiler): a compiler for TrueType fonts

 home.kabelfoon.nl/~slam/fonts/tticomp.html

otlegacy: a tool to decompose Unicode characters into their components

 home.kabelfoon.nl/~slam/fonts/otlegacy.html

freetype-tools and demos: a set of test tools from the Freetype rendering library

 www.freetype.org

A collection of related Perl modules from CPAN (the Comprehensive Perl Archive Network):

 search.cpan.org/search?query=font

 search.cpan.org/search?query=unicode

 search.cpan.org/search?query=ttf

 search.cpan.org/search?query=i18n

ttfquery: a Python module using FontTools to query TTF font files for metadata and font outlines in a cross-platform manner

 sourceforge.net/projects/ttfquery/

T1utils: six programs that manipulate PostScript Type 1 fonts. Allowing you to change PFB (binary) fonts into PFA (ASCII) format (and back), translate fonts into a disassembled human-readable format (and back), and translate Macintosh Type 1 fonts into PFB or PFA (and back).

 freshmeat.net/projects/t1utils

font-tools: a set of font conversion utilities

  • t1asm: a tool to convert pfb font files to pfa fonts
  • ttf2pt1: a tool to convert ttf font files to afm and pfb fonts
  • type1inst: a tool to build fonts.dir fonts.scale Fontmap needed by xfs and ghostscript
 sourceforge.net/projects/fonttools/

lcdf-type-tools: various programs for manipulating PostScript Type 1 and PostScript-flavored OpenType fonts.

 www.lcdf.org/type/

MyToys:

  • pfadecrypt: a tool to decrypt a PostScript font (only show the internal font information)
  • pfa2pfb: a tool to convert a pfa font to a pfb font
  • pfb2pfa: a tool to convert a pfb font to a pfa font
  • pfa2bdf: a tool to rasterize a PostScript type1 font and produce a bdf file
  • pfa2afm: a tool to generate an afm file from a PostScript type1
  • pfb2outline: a tool to convert a pfa or pfb file (and its afm file) to an outline font by changing PaintType
  • ttf2eps: a tool to convert a glyph from a Truetype font into an eps (Encapsulated Postscript)
 bibliofile.mc.duke.edu/gww/FreeWare/MyToys.html

fontutils: a tool to convert between font formats and to create fonts

 www.gnu.org/software/fontutils/fontutils.html

fontconv: a simple raster font converter

 www.is-vn.bg/hamster/jimmy-en.html

ttf2pt1: a tool to convert scalable and bitmapped fonts into PostScript Type 1

 sourceforge.net/projects/ttf2pt1

Fondu: a tool to convert between mac fonts (and FONDs) and Unix font formats

 sourceforge.net/projects/fondu/

TTX: a tool to convert OpenType and TrueType fonts to and from XML

 sourceforge.net/projects/fonttools/

ttf2pt1: a tool to convert nearly all True Type fonts to an Adobe Type 1 .pfa file

 ttf2pt1.sourceforge.net

Localisation teams and translation statistics

The Translation project:

 www.iro.umontreal.ca/contrib/po/HTML/

The man page and howto translation projects:

 www.tldp.org

The GNOME Translation project:

 developer.gnome.org/projects/gtp/

Review the GNOME translation status:

 developer.gnome.org/projects/gtp/status/

Bring your language to GNOME by setting up a language team:

 developer.gnome.org/projects/gtp/teams.html#starting

The KDE Internationalization project:

 i18n.kde.org

Review the KDE translation statistics:

 i18n.kde.org/stats/gui/

Bring your language to KDE by setting up a language team:

 i18n.kde.org/translation-howto/new-language.html

Mandrake Linux i10n:

 www.mandrakelinux.com/l10n/translations.php3

Fedora i10n:

 fedora.redhat.com/projects/translations/

Localization tools

GNU gettext: a set of libraries and utilities from the GNU project for producing multi-lingual messages

 www.gnu.org/software/gettext/

gtranslator: an enhanced GNU gettext catalogs (.po files) editor for the GNOME desktop environment

 www.gtranslator.org

kbabel: A set of tools for editing and managing PO files created in GNU gettext for KDE

 freshmeat.net/projects/kbabel

intltool (internationalization tool collection): a tool to extract translatable strings from various source files, collect the extracted strings together with messages from traditional source files (.c, .h), and merge translations from .po files into .xml, .desktop, and .oaf files

 freshmeat.net/projects/intltool/

poedit: a cross-platform GNU gettext catalogs (.po files) editor

 poedit.sourceforge.net

getxml: an XML internationalization tool, comprised of getxml-extract (makes the header for GNU gettext) and getxml-merge (merges XML and po files)

 freshmeat.net/projects/getxml

phpbabel: a web application making PHP internationalization easier by allowing a net of translators to do translations on a project and to generate include message files automagically (both constants and functions...)

 sourceforge.net/projects/phpbabel

Plan a Free/Libre and Open strategy for your WSI components

Be aware of open standards and build interoperable and sustainable WSI components

The ISO 639 Language Names: The standard names for use in SGML and XML, including a complete list of language name codes

 www.loc.gov/standards/iso639-2/iso639jac.html

IANA Character Sets: the official names for character sets that may be used in the Internet and referred to in Internet documentation - held at the Internet Assigned Number Authority.

 www.iana.org/assignments/character-sets

The SIL Language IDs:

 sil.org/ethnologue

The W3C's (World Wide Web Consortium) specification for internationalization (XML, CSS...):

 www.w3.org/International/

The Charsets:

 czyborra.com/charsets/


The Unicode Charts: precise specifications from the current Unicode version

 www.unicode.org/charts/

The Script Encoding Initiative: organising new languages additions to the the Unicode standard

 www.linguistics.berkeley.edu/~dwanders/

The Unicode Test Pages: a set of pages to test the behaviour of Unicode-capable applications online

 www.phon.ucl.ac.uk/home/sampa/unicodetest.htm

 http://web.archive.org/web/20110108105420/http://code2000.net/

World Wide Web Consortium: resources from the international web standards organisation covering code tables, Unicode, HTML and XML with links to other resources and forums about internationalization and localization issues relating to character sets.

 www.w3.org/International/O-charset.html

Resources from the Unicode Consortium:

 www.unicode.org/onlinedat/resources.html

The Free Standards Group: an important standard body

 www.freestandards.org

Li18nux: The Linux internationalization project

 www.li18nux.org

The RFCs (Requests for Comments): the standards of the various building blocks of the Internet

 www.rfc-editor.org

IDN: the Internationalized Domain Names (IDN) Committee for multilingual Internet addresses

 www.icann.org/committees/idn/

Licensing and cooperative development models

Compare the copyleft vs. proprietary models

If you're serious about creating a sustainable WSI component, you need to think about the following items:

  • dissemination and acceptance
  • standards compliance
  • mixing FLOSS components with non-free/proprietary components
  • balance between non-profit and commercial involvement
  • short-term benefit vs. long-term benefits
  • evolutivity of the WSI components to the future language needs
  • adaptability of the WSI components to related languages
  • cooperation and partnership

Understand and choose the appropriate license

FSF licence review

 www.fsf.org/licenses/

GPL FAQ:

 www.gnu.org/licenses/gpl-faq.html

FDL howto:

 www.gnu.org/licenses/fdl-howto.html

Beware of software patents problems

Software patents are an increasing threat to interoperability and independant software creation. As a WSI component developper or contributor, you must be aware of this important issue.

Example of the aliasing and hinting patent from Apple and other similar problems:your project may be safe in some countries and a big hassle in some others

 www.freetype.org/patents.html

FFI (Foundation For a Free Information Infrastructure): a non-profit association registered in Munich dedicated to the spread of data processing literacy. FFII supports the development of public information goods based on copyright, free competition about open standards.

 www.ffii.org

Partnerships and funding

There are other models than commercial-only WSI components:private/public/funding has to be considered for minority-friendly low-commercial-value WSI components

Look for possible partners for WSI development:

  • Trusts and Foundations interested in literacy and WSI availability
  • Government and UN agencies
  • Friendly font foundries
  • NGOs and non-profits
  • Foundations
  • Academic communities

Set-up a micropayment funding model:

Paypal:

 www.paypal.com

The street performer models:

 www.logarithmic.net/pfh/RSPP

The Potlach protocol:

 www.potlatch.net

Look into research grants and awards:

  • academic funding
  • awards and grants
  • contest and competitions

Set up your FLOSS WSI project and get the community's interest and help

Understand the basics of Free, Libre and Open Source software development

The concept of copyleft:

 www.gnu.org/copyleft/

 www.wikipedia.org/wiki/Copyleft

The GNU project:

 www.gnu.org

The Linux kernel:

 www.linux.org

A timeline of Unix and GNU/Linux:

 www.robotwisdom.com/linux/timeline.html

What is Free Software?

 www.fsf.org/philosophy/free-sw.html

What is Open Source?

 www.opensource.org/docs/definition.php

The GNU Coding standards:

 www.gnu.org/prep/standards_toc.html

The Software Project Management Howto:

 www.tldp.org/HOWTO/Software-Proj-Mgmt-HOWTO/

The Software Release Practise Howto:

 www.tldp.org/HOWTO/Software-Release-Practice-HOWTO/

The Jargon File: a comprehensive compendium of hacker slang illuminating many aspects of hackish tradition, folklore, and humor (very useful to somewhat understand the values and the mindset ot the FLOSS community)

 info.astrian.net/jargon/

The Open Source, Free Software and copyleft classics:

OpenSources: Voices from the Open Source Revolution

 www.oreilly.com/catalog/opensources/

The Cathedral and the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary

 www.oreilly.com/catalog/cathbazpaper/

Free Software, Free Society: Selected Essays of Richard M. Stallman

 www.gnupress.org/book13.html

Free as in Freedom: Richard Stallman's Crusade for Free Software

 www.oreilly.com/catalog/freedom/

Code and Other laws of Cyberspace:

 code-is-law.org/

The Future of Ideas:

 cyberlaw.stanford.edu/future/


Distrowatch: a good review website for the many major and specialized GNU/Linux distributions (with precise package version tracking)

 www.distrowatch.net

Learn and contribute to the discussion on the major i18n mailing-lists

The Mandrake-i18n mailing-list:

 archives.mandrakelinux.com/cooker-i18n/

The Redhat-i18n mailing-list:

 www.redhat.com/mailman/listinfo/i18n-list

The Debian-i18n mailing-list:

 lists.debian.org/debian-i18n/

The GNOME-i18n mailing-list:

 lists.gnome.org/mailman/listinfo/gnome-i18n/

The KDE-i18n mailing-list:

 mail.kde.org/mailman/listinfo/kde-i18n-fa/

The XFree86-i18n mailing-list:

/' target='_blank'>  www.mail-archive.com//

Learn how to package and deploy your WSI projects

RPMS howtos:

 www.rpm.org/RPM-HOWTO/

 qa.mandrakesoft.com/twiki/bin/view/Main/RpmHowTo

Smart package managers (with repository creation tools):

 www.urpmi.org/en

 linux.duke.edu/projects/yum/

 freshrpms.net/apt/

Community sites that offer to host your WSI component project and set up a distributed team so that speakers and specialists can contribute:

 www.sourceforge.net

 savannah.gnu.org

 www.mozdev.org

If you feel like it you can also set up your own team platform using FLOSS groupware:

 kolab.kde.org

 www.opengroupware.org

 groupware.openoffice.org/glow/

 www.ximian.com/products/evolution/

 www.open-steam.org/en/

Community sites and software catalogs where you can announce your project to make users and developpers aware of your project and get some potential contributors:

Freshmeat: the largest FLOSS catalog

 www.freshmeat.net

Footnotes: GNOME desktop news

 www.gnomedesktop.org

The Dot: KDE desktop news

 dot.kde.org

Slashdot: the huge news portal

 slashdot.org

Create and publish documentation for your WSI components

manedit: the ManEdit UNIX Manual Page Editor is an editor specifically tailored for UNIX manual pages. It has a preview viewer, uses the manual page XML format for easy editing, and comes with a tutorial and reference guide and templates

 freshmeat.net/projects/manedit

docbook: an XML and SGML dialect that enables you to author and store document content in a presentation-neutral form that captures the logical structure of the content. Using the modular DocBook stylesheets and related resources, you can transform, format, and publish your DocBook content as HTML pages and PDF files, and in many other formats, including TeX, RTF, FrameMaker MIF, JavaHelp, Microsoft HTML Help, UNIX man pages, and TeXinfo

 sourceforge.net/projects/docbook/

yelp (gman): The man and info interface for GNOME

 www.gnome.org/softwaremap/projects/Yelp

khelpcenter: The man and info interface for KDE (part of the kdebase package)

 www.kde.org

Create training material for your WSI

Typing

gtypist (GNU typist): a universal typing tutor

 www.gnu.org/software/gtypist/

ktouch: a program for learning how to touch-type

 ktouch.sourceforge.net

typingtrainer: a typing skills training programme. Allows teachers to examine and record student's typing speed and accuracy

 sourceforge.net/projects/typingtrainer

Language learning software

klettres: a tool to help learning the alphabet and practise reading syllables in different languages

 edu.kde.org/klettres/

flashkard: a vocabulary training tool. It is designed to be used in any situation where a fixed set of vocabulary (technical or linguistic) is to be learnt

 freshmeat.net/projects/flashkard

vocabularytrainer: a flashcard training system for learning words in foreign languages. You can use language modules to change the language of its interface and can choose one of three learning modes (Random, Often-unknown words, and Seldom-asked words)

 freshmeat.net/projects/vocabularytrainer

kvoctrain: a vocabulary trainer from the KDE project

 kvoctrain.sourceforge.net

Minivoki: a minimal console-based vocabulary learning aid which has some interesting features. It comes with Korean, Chinese, and Japanese input parsers, 7-bit input for 8-bit characters like accents, one-direction-only word pairs, learning and test modes, and some others features

 freshmeat.net/projects/minivoki

zaban: a multimedia database of human languages. It provides the flash card functionality people often use for learning foreign languages. You can enter words (both text and sounds) from multiple languages and have them played back to you in multiple ways. It has support for many different alphabets, audio recording, playback, and compression, configurable auto-cycle with audio playback, a shuffle mode to rearrange the order of playback, searching with regular expressions, configurable keymaps, and support for user generated lists. The sample database contains Swahili, Farsi, Hebrew, and English

 freshmeat.net/projects/zabaan

hanzim ("Hanzi Master"): an interactive visual dictionary for learning and seeing relationships between Chinese radicals, characters, and compounds

 freshmeat.net/projects/hanzim

kanjidrill: a multiple-choice Kanji quiz program that helps people learn Japanese characters with different guess formats and history options. Dictionary with Romaji, SKIP, four-corner, cut-n-paste, radical lookup methods and English search features

 freshmeat.net/projects/kdrill/

kanatest: a simple, GTK 2-based kana drill tool. It offers three drill modes: hiragana, katakana, and mixed mode

 freshmeat.net/projects/kanatest/

moji: a japanese language learning dictionnary for Mozilla

 moji.mozdev.org

pauker: a java-based flashcard program

 pauker.sourceforge.net

Use extra WSI components to extend your language community's cyber-literacy

Office, Publishing, Typesetting and DTP (DeskTop Publishing) software

OpenOffice.org: a Free Software and Open Source, community-developed, multi-platform office productivity suite. It includes the key desktop applications, such as a word processor, spreadsheet, presentation manager, formula editor and drawing program, with a user interface and feature set similar to other office suites. Sophisticated and flexible, OpenOffice.org also works transparently with a variety of file formats, including Microsoft Office formats

 www.openoffice.org

 l10n.openoffice.org

GNOME Office: a meta-project, with the mission to coordinate productivity applications for the GNOME Desktop

 www.gnome.org/gnome-office/

KOffice: a free, integrated office suite for KDE

 www.koffice.org

Abiword: a free word processing program similar to Microsoft Word. It is suitable for typing papers, letters, reports, memos, and so forth. Various plugins and templates are available

 www.abisource.com

Scribus: a desktop publishing program. Its goal is to provide an easy-to-use tool for simple desktop publishing

 freshmeat.net/projects/scribus

Passepartout: a desktop publishing application. The goal of this project is to create a system capable of producing pre-press material of professional quality, but also to be a useful tool for any enthusiast with access to a printer. The main focus is on making it easy for the user to create publications with a flexible layout, typical examples being magazines, brochures and leaflets

 freshmeat.net/projects/pptout/

Graphic design software

GIMP (GNU Image Manipulation Program): a cross-platform Photoshop equivalent for photo retouching, image composition and image authoring. Lots of plugins and scripts are available

 www.gimp.org

Sodipodi: a vector-based drawing program with native SVG (Scalable Vector Graphics) support

 sodipodi.sourceforge.net

Sketch: a vector drawing program for Unix

 sketch.sourceforge.net

GNU Paint: a small, easy-to-use paint program for GNOME

 savannah.gnu.org/projects/gpaint/

Web browsing, Email, Usenet, IRC (Internet Relay Chat) and IM (Instant Messenging) software

Mozilla: the standards-compliant cross-platform Internet suite from the Mozilla Foundation. Browser, Mail&News, AddressBook, Chat, Web design, Xul application framework. Lots of plugins and extensions are available. Check out the light stand-alone versions of the browser and email clients called Firebird and Thunderbird.

 www.mozilla.org

The Mozilla internationalization and i18n projects:

 www.mozilla.org/projects/intl/

 i18.mozilla.org

sila: a smart rendering and CTL (Complex Text Layout) enabled version of Mozilla based on the SILGraphite library

 sila.mozdev.org

Pan: a Usenet newsreader for GNOME

 pan.rebelbase.com

Xchat: a multiplatform IRC (Internet Relay Chat) client

 www.xchat.org

Gaim: a cross-platform cross-network IM (Instant Messenging) client for GNOME

 gaim.sourceforge.net

Kopete: a cross-platform cross-network IM (Instant Messenging) client for KDE

 kopete.kde.org/

Jabber: a well-established and open IM client-server protocol

 www.jabber.org

Website creation and publication tools

bluefish: a web development studio for GNOME

 bluefish.openoffice.nl

quanta: a web development tool for KDE

 quanta.sourceforge.net

screem (Site CReation and Editing EnvironMent): an integrated development environment for creating and maintaining websites

 www.screem.org

Mozilla editor/composer: a HTML and plain text editor in Gecko-based applications with DOM (Document Object Model) and IME (international text input) support

 www.mozilla.org/editor/

nvu ("new view"): the next-generation Mozilla composer

 www.nvu.com/

CMS (Content management systems) portals: a collection of dynamic website packages based on a database and a scripting language

 www.oscom.org

 www.cmsinfo.org

Wiki systems: a new website publication engine for easy and open collaborative web design

 phpwiki.sourceforge.net

flp-i18n (Flaimo's Little Package): a collection of PHP classes for internationalization. It formats date and time strings, replaces keywords, converts measurement units between SI and the US Customary System, and more

 freshmeat.net/projects/flp-i18n/

Amaya: a web editor to create and update documents directly on the Web with HTML XML XHTML MathML and SVG support from the W3C (World Wide Web Consortium)

 www.w3.org/Amaya/

Text editing with Unicode support

gedit: a lightweight text editor for the GNOME desktop with full Unicode and Pango support. Various plugins are available

 gedit.sourceforge.net

kwrite: a text editor with QT internationalisation support for the KDE Desktop (part of the kate editor)

 kate.kde.org

yudit: a free (Y)unicode text editor for all unices

 www.yudit.org

mined98: a free cross-platform versatile unicode CJK text editor

 towo.net/mined/

worldpad: a smart non-roman script html and xhtml editor with SILGraphite support (win32 platform)

 fieldworks.sil.org/WorldPad/worldpad.html

emacs: a powerful, customizable, self-documenting, modeless text editor with strong internationalisation features

 savannah.gnu.org/projects/emacs/

 www.emacswiki.org/cgi-bin/wiki/CategoryInternationalization

vim: a highly configurable text editor for programmers

 www.vim.org

Simredo: a free Java Unicode editor

 www4.vc-net.ne.jp/~klivo/sim/simeng.htm

Bengali Writer: a set of utilities for computerized editing and typesetting in Bengali

 sourceforge.net/projects/bengaliwriter/

XML editors

Conglomerate: an XML editor for GNOME

 www.conglomerate.org

MLView: another xml editor for GNOME

 www.freespiders.org/projects/gmlview/

kxmleditor: an XML editor for KDE

 sourceforge.net/projects/kxmleditor/

XML-type: a multilingual utf-8 XML editor

 xmltype.sourceforge.net

Document processing markup languages (What You See Is What You Mean)

LaTeX: a high-quality typesetting system, with features designed for the production of technical and scientific documentation. LaTeX is the de facto standard for the communication and publication of scientific documents. Based on TeX

 www.latex-project.org

LyX: a friendly LaTeX frontend

 www.lyx.org

kyle: a friendly LaTex frontend for KDE

 kile.sourceforge.net

PDFTeX: an extended version of TeX that can create PDF directly from TeX source files and enhance the result of TeX typesetting with the help of PDF

 freshmeat.net/projects/pdftex/

Omega: an extension of TeX for printing all of the world's languages and for generating XML+MathML documents

 sourceforge.net/projects/omega-system/

Text processing and massaging tools

Perl (Practical Extraction and Report Language): The amazing do-it-all scripting language by Larry Wall

 www.perl.org

GNU coreutils: text manipulation utilities from the GNU Project

 freshmeat.net/projects/coreutils/

GNU aspell: an intelligent spellchecker from the GNU Project

 www.aspell.net

GNU ispell: a spellchecker from the GNU Project

 ficus-www.cs.ucla.edu/ficus-members/geoff/ispell.html

spellutils: a set of programs to help spellcheckers isolate the target text

 home.worldonline.dk/byrial/spellutils/

unac: a utility to remove accents from strings

 www.nongnu.org/unac/

emdros: a text database engine for storage and retrieval of analyzed or annotated text

 www.emdros.org

compare: a text analysis and comparison tool

 www.english.upenn.edu/~jlynch/Computing/compare.html

HSpell: a Hebrew spell-checker and morphology engine

 freshmeat.net/projects/hspell/

bookconv: a Cyrillic converter/filter

 www.is-vn.bg/hamster/jimmy-en.html

minpair: a tool to find minimal pairs in a wordlist

 www.cis.upenn.edu/~wjposer/minpair.html

msort: a sorting program (capable of sorting shoebox style databases)

  www.cis.upenn.edu/~wjposer/msort.html

redet: GUI regular expression development and execution tool (for matching and substitution)

  www.cis.upenn.edu/~wjposer/redet.html

Transcriber: a program for creating (typically orthographic) transcriptions of sound recordings, time linked (typically at the phrase level) to a digital audio file

 sourceforge.net/projects/trans/

cttext: a Thai word separator program

 thaigate.nacsis.ac.jp/files/

unitex: a corpus processing system

 www-igm.univ-mlv.fr/~unitex/

Databases, thesaurus, dictionaries and library tools

OpenOffice.org dba (database access): a frontend for various data sources

 dba.openoffice.org

GNOME-DB: a free unified database access architecture for GNOME

 www.gnome-db.org

kexi: an integrated environment for managing data in KDE. It helps creating database schemas, inserting, querying and processing data

 www.koffice.org/kexi/

The GNOME dictionary applet: a frontend to online dictionaries (part of the gnome-utils package)

 www.gnome.org/softwaremap/projects/gnome-utils/

gidic (Gtk Inter DICtionary): a front-end for GNOME to The Internet Dictionary project from Tyler Chambers, which includes French, German, Italian, Latin, Portuguese, and Spanish dictionaries

 www.gnome.org/softwaremap/projects/gidic/

visDic: a browser and editor of dictionaries stored in XML format

 www.gnome.org/softwaremap/projects/visdic/

Gjiten: a Japanese and Kanji dictionary program for GNOME, any combination of stroke count, radicals and search key can be used for Kanji lookups.

 gjiten.sourceforge.net

StarDict: a cross-platform and international dictionary written in Gtk2 with powerful search features such as "Glob-style pattern matching", "Scan selection word", "Fuzzy query," etc.

 stardict.sourceforge.net

Aiksaurus: an English-language thesaurus library

 www.aiksaurus.com

oss4lib: a portal dedicated to open source software for libraries

 www.oss4lib.org

Open language data repositories

OLAC (Open Language Archive Community): an international partnership of institutions and individuals who are creating a worldwide virtual library of language resources by: (i) developing consensus on best current practice for the digital archiving of language resources, and (ii) developing a network of interoperating repositories and services for housing and accessing such resources

 www.language-archives.org

UNESCO - Memory of the World Programme: an initiative from the Education, Scientific and Culture United Nations organisation to preserve documentary heritage

 www.unesco.org/webworld/memory/basictexts.htm

The Project Gutenberg: a big collection of multilingual public domain e-texts

 gutenberg.net

ABU (Association des Bibliophiles Universels): a collection of francophone public domain resources

 abu.cnam.fr

Eldrich press: a famous public domain literature archive under Creative Commons Licensing

 www.eldritchpress.org

The European Language Resources Association: a non-profit organisation hosting language resources for research purposes

 www.elra.info

The Project Runenberg: the public domain center for Nordic literature

 www.lysator.liu.se/runeberg/

The Rosetta Project: a language archive seeking to become the contemporary counterpart of the historic Rosetta Stone

 www.rosettaproject.org

Ibiblio: a huge conservancy of freely available information, including software, music, literature, art, history, science, politics, and cultural studies. Ibiblio.org is a collaboration of the Center for the Public Domain and The University of North Carolina - Chapel Hill (Ibiblio is formerly known as Sunsite and Metalab)

 www.ibiblio.org

Creative commons: an organisation devoted to expanding the range of creative work available for others to build upon and share: using private rights to create public goods

 www.creativecommons.org

A selection of resources compiled by the University of Columbia:

 www.columbia.edu/cu/lweb/indiv/ets/offsite.language.html

A selection of resources compiled by SIL:

 www.sil.org/linguistics/etext.html

Language data viewers and converters

lv: a powerful multilingual file viewer

 www.ff.iij4u.or.jp/~nrt/lv/

jless (Jam less): a patched less for multi character sets using ISO 2022 code extention techniques. With support for some code conversion among Japanese encoding schemes, JIS X 0208, JIS X 0213, SJIS, and UJIS

 www.io.com/~kazushi/less/

utf8conv: a tool to encode Unicode values (in hexadecimal) as UTF-8, optionally displaying the resulting character and/or the Unicode description thereof.

 freshmeat.net/projects/utf8conv/

libiconv: a Unicode converter from the GNU Project

 www.gnu.org/software/libiconv/

enca (Extremely Naive Charset Analyser): detects charsets and allows conversion to other encodings

 trific.ath.cx//software/enca/

uniconv: a text conversion utility from the yudit project

 www.yudit.org

ddsk: a Kana to Kanji conversion tool

 openlab.ring.gr.jp/skk/main.html

kakasi (KAnji KAna Simple Inverter): a simple language processing filter to convert Kanji characters to Hiragana, Katakana or Romaji  kakasi.namazu.org

UTF8_STRING: a selection format for UTF-8 data interchange

 www.pps.jussieu.fr/~jch/software/UTF8_STRING/

enscript: a plain ASCII to PostScript converter

 www.gnu.org/directory/enscript.html

Accessibility tools

The GNOME accessibility project:

  developer.gnome.org/projects/gap/

The KDE accessibility project:

 accessibility.kde.org

The IBM Linux accessibility team:

 oss.software.ibm.com/developerworks/opensource/linux/projects/access/

Text to Speech tools

gnopernicus: the GNOME Text to Speech project

 developer.gnome.org/projects/gap/AT/Gnopernicus/

Speaker: a text-to-speech output system for the Konqueror Web browser and the Kate text editor, both part of KDE. Speaker is a pair of plugins that allow for text and selected text to be output as speech using an external speech synthesizer program.

 freshmeat.net/projects/speaker/

festival: a general multi-lingual speech synthesis system developed at CSTR. It offers a full text to speech system with various APIs, as well an environment for development and research of speech synthesis techniques.

 freshmeat.net/projects/festival/

Freetts: a speech synthesis system written entirely in Java. It is based upon Flite, a small runtime speech synthesis engine developed at Carnegie Mellon University. Flite is derived from the Festival Speech Synthesis System from the University of Edinburgh and the FestVox project from Carnegie Mellon University

 freshmeat.net/projects/freetts/

MBROLA: a set of free speech synthesizers for as many languages as possible for non-commercial and non-military applications only

 tcts.fpms.ac.be/synthesis/mbrola.html

speechd: a speech service implementing a /dev/speech device using either the Festival or rsynth speech synthesis packages. All plaintext written to this device will be spoken aloud

 freshmeat.net/projects/speechd/

emacsspeak: Emacspeak turns Emacs into a complete audio desktop to provide a pleasurable eyes-free computing experience

 sourceforge.net/projects/emacspeak

The comp.speech FAQ:

 fife.speech.cs.cmu.edu/comp.speech/

Scanning and OCR (Optical Character Recognition)

Kooka: a raster image scan program for KDE

 www.kde.org/apps/kooka/

Clara OCR: a powerful GUI and a web interface for cooperative digitalization of books

 www.claraocr.org

GNU ocrad: a character recognition system from the GNU project. It is implemented as a filter and based on a feature extraction method

 www.gnu.org/software/ocrad/ocrad.html

kognition: the Omnifont OCR software for KDE

 freshmeat.net/projects/kognition/

gocr: a character recognition system. It reads pnm, pbm, pgm, ppm, some pcx, tga, pnm.gz, pnm.bz2, png, jpg, tiff, gif, bmp and other image files and outputs a text file

 altmark.nat.uni-magdeburg.de/~jschulen/ocr/

OCRE: a character recognition system that reads an image file and writes ASCII characters

 freshmeat.net/projects/ocre/

Look for further resources on related portals

Associations

Typeright: a diverse group of type designers, developers, foundries, and aficionados who are working together to promote typefaces as creative works and to advocate their legal protection as intellectual property

 www.typeright.org

i18nGurus: an open directory of links to internationalization (i18n) resources and related material

 www.i18ngurus.com

Software and documentation portals

The UNESCO Free Software portal:

 www.unesco.org/webworld/portal_freesoft/

A selection of Free/Libre and Open Source Software for Mac OS X:

 www.apple.com/downloads/macosx/unix_open_source/

 fink.sourceforge.net

O'Reilly: the respected and FLOSS-friendly technical publisher

 www.oreilly.com/

Desktop integration:

The Ximian Desktop: a internationalization-aware enterprise Desktop based on GNOME technologies

 www.ximian.com/products/desktop/

The Desktop Linux Consortium: a non profit organization dedicated to the advancement of the use of Linux on the desktop

 www.desktoplinuxconsortium.org

The Sun Desktop project:

 www.sun.com/software/learnabout/desktopsystem/

Some related entries in the Google/DMOZ directory:

  directory.google.com/Top/Computers/Software/Globalization/Internationalization/

Language resources:

Open hardware

The open hardware definition:

 www.wikipedia.org/wiki/Open_hardware

The Simputer: an open device designed to work with non-roman scripts

 www.simputer.org

LinuxDevices:

 www.linuxdevices.com

Note

The fine print: All copylefts, copyrights and trademarks mentioned here are owned by their respective owners.


Backlinks (20 most popular; affiliated sites and popular search engines removed)
 http://search.marsfind.com/ufts.html?ver=100&uid=cd1ede8bc52149bea351052e285c...



Note: If you want to add a response to this article, you need to enable cookies in your browser, and then restart your browser.

Note: the opinions expressed in submitted contributions below do not necessarily reflect the opinions of our website.



© 2003-2014 SIL International, all rights reserved, unless otherwise noted elsewhere on this page.
Provided by SIL's Non-Roman Script Initiative. Contact us at .