[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

i18n of cdebconf (Re: i18n of tasksel (and cdebconf))


From: Petter Reinholdtsen <pere@hungry.com>
Subject: Re: i18n of tasksel (and cdebconf)
Date: 27 Aug 2003 00:25:47 +0200

> >   LANGUAGE=ja LANG=ja_JP.UTF-8 dpkg-reconfigure -fslang ssh
> Hm, perhaps the cdebconf version of dpkg-reconfigure is unable to
> handle the -f option?  I have never tried this myself.

I found that DEBIAN_FRONTEND variable is available for this purpose.
like: LANGUAGE=ja DEBIAN_FRONTEND=newt LANG=ja_JP.UTF-8 dpkg-reconfigure ssh

I tested following frontends:

  newt: can display UTF-8 on UTF-8 terminal.  Text-wrapping works
        very minimal (I mean, it doesn't destroy screen or Mojibake),
        but wrapping position for Japanese is not very good (sometimes
        wrapped at near beginning of a line with leaving large empty
        space at right side).  I found that newt frontend uses newt's
        text-wrapping feature which supports UTF-8 but doesn't support
        languages which don't use whitespaces between words.
        To solve this, usage modified strwrap() in strutl.c (see below:
        "text" frontend) or modification of libnewt is needed.

 text:  can display UTF-8 on UTF-8 terminal.  However, text-wrapping
        doesn't work well for languages which don't use whitespaces
        between words, like Japanese.  strwrap() in strutl.c is
        responsible for this.  I am planning to replace this with
        my libtextwrap.

 slang: can display UTF-8 on UTF-8 terminal.  strwrap() in strutl.c
        is used for text-wrapping just like "text" frontend.

 bogl:  "Error loading fonts: opening helvR10.bdf" is displayed.
        Where can I find the font?

Now my local test of replacing strwrap() in strutl.c with libtextwrap
is working well for "text" and "slang" frontends.  "newt" interface
has to be rewritten using libtextwrap instead of relying on newt's
feature, or newt itself has to be modified.

Which frontend will be used for the installation process?

> The selected language is passed into stage 2, and the required locale
> should be generated, and the needed terminal emulator / configuration
> should be enabled by /usr/bin/termwrap.  I've tested it for a few
> languages using UTF-8 and ISO-8859-{1,15}, but not for Japanese.

You mean, the Stage 1 always uses UTF-8 while the Stage 2 uses
popular encodings for each language/country?  (For example, ISO-8859-1
for pt_BR, ISO-8859-15 for de_DE, EUC-JP for ja_JP, and so on).

In such a case, cdebconf (which should be as small as possible and,
as a result, supports UTF-8 only) cannot be used for the Stage 2.
Am I right?  Then, are there a list of programs which run on the
termwrap in the Stage 2 (or how can I make such a list) ?  I would
like to test whether these programs can handle multibyte characters.

Tomohiro KUBOTA <kubota@debian.org>

Reply to: