Nästa Föregående Innehållsförteckning

9. Kinesiska-relaterade problem med andra program

9.1 Netscape Navigator

Netscape 2.0 och senare versioner stödjer både BIG5- och GB-kodning, vilket redan diskuterats på flera hemsidor. För att visa kinesiska i Netscape, utför följande tre enkla steg:

  1. Installera kinesiska X-typsnitt. Se avsnittet Installering av kinesiska typsnitt.
  2. Kör netscape och ställ in Document Encoding som Traditional Chinese (Big5) eller Simplified Chinese.
  3. Välj de kinesiska typsnitt du vill använda.

Du kanske tycker att det är konstigt att du bara kan använda Fixed(HKU) Size 16.0-typsnitt. Detta beror på inställningarna i /usr/X11R6/lib/X11/app-defaults/Netscape. Vi antar att du har följande BIG5-typsnitt:

# xlsfonts | grep big5
-hku-fixed-medium-r-normal--0-0-72-72-c-0-big5.hku-0
-hku-fixed-medium-r-normal--16-160-72-72-c-160-big5.hku-0
-kc-kai-medium-r-normal-fantizi-0-0-75-75-c-0-big5.eten.3.10-1
-kc-kai-medium-r-normal-fantizi-20-200-75-75-c-200-big5.eten.3.10-1
-kc-kai-medium-r-normal-fantizi-24-240-75-75-c-240-big5.eten.3.10-1
-kc-ming-medium-r-normal-fantizi-0-0-75-75-c-0-big5.eten.3.10-1
-kc-ming-medium-r-normal-fantizi-15-150-75-75-c-160-big5.eten.3.10-1
-kc-ming-medium-r-normal-fantizi-24-240-75-75-c-240-big5.eten.3.10-1

Lägg till en rad till /usr/X11R6/lib/X11/app-defaults/Netscape:

*documentFonts.charset*big5.eten.3.10-1:              x-x-big5

Sedan kan Netscape även använda dessa typsnitt.

En annan lösning är att skapa alias för dina typsnitts namn: lägg till alias i fonts.alias-filen (skapa en sådan själv om det inte redan finns någon) i din typsnitts-katalog:

-big5-taipeik-medium-r-normal--16-160-72-72-c-160-big5.hku-1 taipei16
-big5-taipeik-medium-r-normal--20-200-72-72-c-200-big5.hku-1 taipeik20
-big5-taipeik-medium-r-normal--24-240-72-72-c-240-big5.hku-1 taipeik24

Typsnittens filnamn, t.ex. taipeik20, är allt du behöver bör att skapa alias för dem. Efter modifieringen, gör följande:

# xset fp rehash
för att ladda in typsnittens namn och göra dem tillgänliga.

Du kan finna att storlekarna av kinesiska och engelska tecken inte är proportionella, om du tittar på hemsidor som är kinesisk/engelska, t.ex. kan de engelska bokstäverna vara för små. Detta beror på att de engelska och kinesiska typsnitt du valt inte matchar varandra. Gå tillbaks till typsnitts-konfigurationen och välj Western(iso-8859-i). Sen kan du ändra storleken, så att proportionerna stämmer med din personliga smak.

9.2 sendmail

sendmail 8.8.x med standard-inställningar kodar alla 8-bitars e-brev innan det skickar iväg dem, vilket i vissa fall kan påverka hur de kommer se ut för mottagaren. Se nästa avsnitt för lösningar. De flesta servrar kan skicka 8-bitars e-brev direkt nu, så det är bäst att du kompilerar om sendmail och stänger av dess kodning.

9.3 procmail

procmail är ett e-post-filter, som kan manipulera e-brev, innan de lagras i din brevlåda, genom att t.ex. klassificera dem på olika sätt. Jag tänker lära dig hur du kan använda procmail för att avkoda kodade meddelanden till rena text-filer och att konvertera olika kodade meddelanden till de vanliga kodnings-formaten, som du använder.

Skapa en .procmailrc-fil i din hemkatalog. Den ska innehålla följande:


# För att undvika olyckor, lagra din e-brev innan du kör procmail.
# Du kan filtrera e-brev för att säkerställa vilka e-brev som inte
# behöver dupliceras, t.ex. av MAILER-DAEMON.
:0 c
* !^From.*MAILER-DAEMON
mail/procmail-backup

# Avkoda e-brev som är kodade med quoted-printable eller base64.
:0
* ^Content-Type: *text/plain
{
  :0 fbw
  * ^Content-Transfer-Encoding: *quoted-printable
  | mimencode -u -q

      :0 Afhw
      | formail -I "Content-Transfer-Encoding: 8bit" \
                -I "X-Mimed-Autoconverted: quoted-printable to 8bit by procmail"

  :0 fbw
  * ^Content-Transfer-Encoding: *base64
  | mimencode -u -b

      :0 Afhw
      | formail -I "Content-Transfer-Encoding: 8bit" \
                -I "X-Mimed-Autoconverted: base64 to 8bit by procmail"
}

# Här avgörs om ett e-brev är GB-kodad eller ej; om det är det, 
# konvertera det till BIG5-kodning. Om du vill konvertera BIG5- 
# till GB-kodning så måste du byta ut big5 mot gb2312 och byta ut 
# 'hc -m b2g' mot 'hc -m g2b'.

:0
* ^Content-Type:.*text/plain;.*charset=gb2312 
{
  :0 fw
  | hc -m b2g -t /usr/local/lib/chinese/hc.tab

      :0 Afhw
      | formail -I "Content-Type: text/plain; charset=big5" \
                -I "X-Charset-Autoconverted: gb2312 to big5 by procmail"
}

# Lagra e-brev i brevlådan.
:0:
${ORGMAIL}

I det här fallet, integrerat med mimeencode och formail för att avkoda e-brev, används hc för att konvertera GB-kodade meddelanden till BIG5- kodade. Du måste alltså installera dessa verktyg för att kunna använda procmail.

Sedan måste du även rätta till din .forward-fil:

"|IFS=' ' && exec /usr/bin/procmail -f- ~/.procmailrc ||exit 75 #login"

OBS: byt ut login mot ditt användarnamn.

9.4 telnet

Om du kan använda kinesiska på din maskin, men inte kan använda kinesiska då du telnettar till en annan maskin, kan problemen vara orsakade av telnet självt. När telnet är under uppkoppling kan du trycka

Ctrl-]
för att tillfälligt hoppa ut, och skriva set binary vid telnet-prompten, för att säkerställa att alla bitar sänds och tas emot. Du kan också använda telnet -8 för att upprätta förbindelsen (vilket dock inte verkar fungera överallt...?). Här kommer en enklare metod är att använda ett 8-bitars telnet-program. Ladda ner binär-filen från:

ftp://linux.cis.nctu.edu.tw/packages/chinese/misc/

9.5 less

less självt kan visa kinesiska direkt; sätt bara följande miljö-variabel, och du kan se kinesiska:

# export LESSCHARSET=latin1

9.6 pine

pine, version 3.95 och senare, stödjer läsning och skrivning av kinesiska e-brev. När du kör pine, välj SETUP/Config i feature list, och välj detta (tryck X):

   [X]  enable-8bit-esmtp-negotiation
   [X]  enable-8bit-nntp-posting

Tryck sedan Ccharacter-set och byt ut dess värde mot big5 eller gb2312. Slutligen, tryck E för att avsluta SETUP och spara ändringarna.

Du kan också installera cpine, vilket kan visa kinesiska meddelanden:

ftp://ftp.vit.edu.tw/unix/linux/chinese/cpine-3.91.bin.tgz

9.7 samba

9.8 lynx

Lynx v2.7 kan visa kinesiska hemsidor direkt. Kör Lynx och tryck O)ption / C)haracter set, och välj sedan Taipei(Big5) med piltangenterna, och tryck slutligen ">" för att spara denna inställning.

9.9 minicom

Använd parametern -l för att starta minicom, sen kan du se kinesiska i minicom.

9.10 fingerd

Om du kan skriva kinesiska i din .plan, men inte kan ses av andra, så beror det antagligen på fingerds oförmåga att skicka ut 8-bitars kinesiska tecken. Skaffa cfingerd från:

ftp://nctuccca.edu.tw/OS/Linux/packages/network/finger/cfingerd-1.3.2.tar.gz

Packa upp det och kör ./Configure, skriv sedan make all.

Sen kan du modifiera /etc/inetd.conf, genom att att byta ut det ursprungliga finger mot:

finger  stream  tcp     nowait  root    /usr/sbin/tcpd  /usr/sbin/in.cfingerd

Gör så att inetd läser om konfigurations-filen:

# kill -HUP `cat /var/run/inetd.pid`

9.11 tintin++

Tintin++ är inte ett kinesiskt program, utan ett användbart verktyg för att spela kinesiska mud. Du kan ladda hem det från:

ftp://ftp.princeton.edu/pub/tintin++

Här är några kinesiska mud-sajter:

FengYun                  fengyun.com       5555
Xi You Ji                129.105.79.24     6905
Xia ke Xing              207.76.64.2       5555


Nästa Föregående Innehållsförteckning