The Linux Danish/International HOWTO
  Niels Kristian Bech Jensen nkbj@sslug.dk
  v2.6, 9 March 2000

  This document describes how to configure Linux and various Linux
  applications for Danish locale standards such as keyboard, font,
  paper-size etc. It is hoped that Linux users from other places in
  Western Europe will find this document useful too.
  ______________________________________________________________________

  Table of Contents


  1. Introduction

  2. Keyboard setup

     2.1 Loading a keytable
     2.2 Getting the AltGr key to work under X11
        2.2.1 Making {, [, ] and } work under Metro-X
     2.3 Dead keys and accented characters
        2.3.1 Removing dead key functionality
        2.3.2 Invoking dead key functionality
     2.4 Making $ (the dollar sign), oe (oslash) and OE (Oslash) work
        2.4.1 $ (the dollar sign)
        2.4.2 oe (oslash) and OE (Oslash)

  3. Display and application setup

     3.1 Loading the ISO-8859-1 font on the console
     3.2 The Euro symbol
     3.3 Characters you can display under Linux
     3.4 International character sets in specific applications

  4. Miscellaneous problems

     4.1 Time zone
     4.2 A4 papersize
     4.3 Text file formats for other platforms

  5. Locale support in libc 5.4.x and higher

  6. Programming tips for X11

  7. Getting X11 applications to speak Danish

  8. Information resources

     8.1 Other documents of relevance
     8.2 FTP and Web sites

  9. Credits and legal stuff

     9.1 Legal stuff


  ______________________________________________________________________

  1.  Introduction

  All European users of almost any operating system have two problems:
  The first is to tell the computer that you have a non-American
  keyboard, and the second is to get the computer to display the special
  characters. To make matters worse some applications will also consider
  you an exception if you are not an American and require special
  options or the setting of environment variables.
  Under Linux you change the way your computer interprets the keyboard
  with the commands loadkeys and xmodmap. loadkeys will modify the
  keyboard for plain Linux while xmodmap makes the modifications
  necessary when the handshaking between X11 and Linux is imperfect.

  To display the characters you need to tell your applications that you
  use the ISO-8859-1 (a.k.a. Latin-1) international set of glyphs. This
  is not always necessary, but a number of key applications need special
  attention.

  This HOWTO is intended to tell Danish users how to do this. If you
  continue to have problems after reading this you can try the German
  HOWTO, the Linux Keyboard and Console HOWTO or the ISO 8859-1 National
  Character Set FAQ. Many of the hints contained herein are cribbed from
  there. See section ``Other documents of relevance'' for pointers to
  these documents. You should also send me a mail describing your
  problems.

  A final problem is that error-messages, menus and documentation of the
  applications are mostly in English. There is a GNU project under way
  to address this problem. You can see what it is all about by
  downloading the file ABOUT-NLS or the package gettext-0.10.tar.gz (or
  any later version) from your favourite mirror of the GNU archive. This
  project needs volunteers for the translations. Send a mail to da-
  request@li.org with the body ``subscribe'' if you want to contribute
  to the Danish part of the project. The documentation in the gettext
  package describes how to use such translations in your own programs.


  2.  Keyboard setup

  2.1.  Loading a keytable

  You have two tools for configuring your keyboard. Under plain Linux
  you have loadkeys and under X11 you have xmodmap.

  To try out loadkeys type one of these two commands:

  loadkeys /usr/lib/kbd/keytables/dk.map


  or

  loadkeys /usr/lib/kbd/keytables/dk-latin1.map



  The difference between the two keymaps is that dk-latin1.map enables
  `dead' keys while dk.map does not. Dead keys are explained in section
  ``Dead keys and accented characters''. The program loadkeys and the
  keymaps are part of the package kbd-0.??.tar.gz which (with differing
  version numbers ??) is available with all Linux distributions.

  Usually loadkeys is executed at boot-time from one of the scripts
  under the directory /etc/rc.d/. Details vary between distributions.

  (Note for non-Danish readers: Support for other languages is enabled
  in a similar manner. Use es.map for Spanish keyboards etc.)

  Versions of XFree86 up to and including v3.1.2 will normally follow
  the keymap used by plain Linux, but you can modify keyboard behavior
  under X11 with xmodmap. Usually the X11 initialization process will
  run this command automatically if you have a file called .Xmodmap in
  your home directory.


  In XFree86 v3.2 and higher you should have the following Keyboard
  section in your /etc/XF86Config (or /etc/X11/XF86Config) file (it
  should be made automatically by the program XF86Setup if you choose a
  Danish keytable):

  Section "Keyboard"
     Protocol        "Standard"
     XkbRules        "xfree86"
     XkbModel        "pc101"
     XkbLayout       "dk"
     XkbVariant      "nodeadkeys"
  EndSection



  The only keyboard variant available at the moment is "nodeadkeys", but
  dead keys can still be made to work. See section ``Dead keys and
  accented characters'' for more information on this.


  2.2.  Getting the AltGr key to work under X11

  For versions of XFree86 up to and including v3.1.2 you should edit the
  file /etc/XF86Config (or /etc/X11/XF86Config) and make sure the line

  RightAlt    ModeShift


  appears in the Keyboard section. Usually you can do this by uncomment-
  ing the appropriate line. In XFree86 v3.1.2 you can use AltGr as an
  alias for RightAlt.

  The AltGr key should work as expected in XFree86 v3.2 and higher if
  you choose Danish keyboard support.


  2.2.1.  Making {, [, ] and } work under Metro-X

  You can't input the characters ``{'' (<AltGr><7>), ``['' (<AltGr><8>),
  ``]'' (<AltGr><9>) and ``}'' (<AltGr><0>) under the Metro-X server.
  This bug has been observed under versions 3.1.5 and 3.1.8 of the
  server.

  To correct this bug you have to edit the file
  /usr/X11R6/lib/X11/xkb/symbols/dk and change the lines

  key <AE07> {    [               7,           slash      ]       };
  key <AE08> {    [               8,       parenleft      ]       };
  key <AE09> {    [               9,      parenright      ]       };
  key <AE10> {    [               0,           equal      ]       };


  to

  key <AE07> {    [               7,           slash      ],
                  [       braceleft,        NoSymbol      ]       };
  key <AE08> {    [               8,       parenleft      ],
                  [     bracketleft,        NoSymbol      ]       };
  key <AE09> {    [               9,      parenright      ],
                  [    bracketright,        NoSymbol      ]       };
  key <AE10> {    [               0,           equal      ],
                  [      braceright,        NoSymbol      ]       };



  2.3.  Dead keys and accented characters

  Dead keys are those that do not type anything until you hit another
  key. Tildes and umlauts are like this by default under plain Linux if
  you use the dk-latin1.map keymap. This is the default behaviour for
  these keys under Microsoft Windows as well.


  2.3.1.  Removing dead key functionality


  o  Removing dead key functionality under plain Linux and XFree86
     v3.1.2

     Under plain Linux type

     loadkeys dk.map



  o  Removing dead key functionality under XFree86 v3.2 and higher

     Put the following line in the Keyboard section of your
     /etc/XF86Config (or /etc/X11/XF86Config) file:

     XkbVariant      "nodeadkeys"



  2.3.2.  Invoking dead key functionality


  o  Invoking dead key functionality under plain Linux

     Under plain Linux type

     loadkeys dk-latin1.map



  o  Invoking dead key functionality under X11R6 sessions

     First you must make sure you are running XFree86 v3.1.2 or higher.
     Download and install everything related to the newest release if
     you have a lower version number. Neither compose nor dead keys will
     work in X11R6 applications unless these are compiled with support
     for accented (8-bit) character input. An example of such an
     application is GNU emacs version 19.30 (or higher.)

     Some X11 applications still do not support this input method.
     Eventually this situation might improve, but until that happens you
     can either hack your applications or submit polite bug reports to
     the  program authors. The latter approach is often the most
     efficient. See section ``Programming tips for X11'' for some advice
     on what needs to be done.

     Next you will have to map a key to Multi_key (Compose.) The Scroll
     Lock key is most likely already mapped as such if you use XFree86
     v3.1.2 (you can verify this with the program xev,) and it is easy
     to map the right Control key by uncommenting the appropriate line
     in the Keyboard section of the XFree86 configuration file (often
     /etc/XF86Config or /etc/X11/XF86Config.) If you wish to use some
     other key, or if you are using XFree86 v3.2 or higher and want to
     change the default, you should put something like

     keycode 78 = Multi_key


  in your ~/.Xmodmap file. The statement in the example defines Scroll
  Lock as the Compose key. The default Compose key in XFree86 v3.2 and
  higher is <Shift><AltGr>.

  XFree86 v3.2 and higher comes without support for the dead keys on the
  standard Danish keyboard. To get this support you have to change a few
  lines in the xkb_symbols "basic" section of the file
  /usr/X11R6/lib/X11/xkb/symbols/dk. The lines

  key <AE12> {    [           acute,           grave      ],
                  [             bar,     dead_ogonek      ]       };
  key <AD12> {    [       diaeresis,     asciicircum      ],
                  [      asciitilde,     dead_macron      ]       };


  should be changed to

  key <AE12> {    [      dead_acute,      dead_grave      ],
                  [             bar,     dead_ogonek      ]       };
  key <AD12> {    [  dead_diaeresis, dead_circumflex      ],
                  [      dead_tilde,     dead_macron      ]       };



  After these changes you can get support for dead keys by removing the
  line

  XkbVariant      "nodeadkeys"


  from the Keyboard section of your /etc/XF86Config (or
  /etc/X11/XF86Config) file.

  (Note for non-Danish readers: There are files for many local keyboard
  maps in /usr/X11R6/lib/X11/xkb/symbols.)

  The available keystroke combinations are listed in
  /usr/X11R6/lib/X11/locale/iso8859-1/Compose. There are some bugs in
  that file you will want to fix:

  o  The line reading

     <dead_tilde> <space>                    : "~"   tilde


  should be changed to

  <dead_tilde> <space>                    : "~"   asciitilde



  o  In several places asciicircum is misspelled as asciicirum


     Finally make sure your shells and/or applications are set up for
     ISO-8859-1 compatibility as described in section ``International
     character sets in specific applications'' and you should be all
     set.



  2.4.  Making $ (the dollar sign), oe (oslash) and OE (Oslash) work

  2.4.1.  $ (the dollar sign)

  There is a bug in the Danish keymaps causing the dollar sign to be
  accessed with <Shift><4> instead of <AltGr><4> by default. If this is
  a problem for you, determine what keymap you load at boot-time. You
  can find it by looking around in the directory /etc/rc.d/ or simply by
  paying attention to what happens at boot-time.  On my computer the
  relevant keymap is called /usr/lib/kbd/keytables/dk-latin1.map. You
  can fix the problem by changing the line

  keycode   5 = four             dollar           dollar


  in the keymap file to

  keycode   5 = four             currency         dollar


  and then (re-)loading the keytable as described in section ``Loading a
  keytable''. Currency (dansk: ``soltegn'') is the default <Shift><4>
  character on a Danish keyboard.

  This should fix the problem for both X11 and plain Linux.


  2.4.2.  oe (oslash) and OE (Oslash)

  In some older distributions ``oe'' and ``OE'' appear as cent and yen.
  Find the line for keycode 40 in the keymap file and change it from

  keycode  40 = cent              yen


  to

  keycode  40 = +oslash           +Ooblique



  This bug appears to have been fixed in kbd-0.88.tar.gz and newer
  versions.

  The plus signs are necessary to get Caps Lock working properly.
  ``Oslash'' can be used as an alias for ``Ooblique'' in kbd-0.90.tar.gz
  and newer versions.

  You can read more about keyboard configuration at this site
  <http://www.ibbnet.nl/~anne/keyboard.html>.


  3.  Display and application setup

  Most applications need to be compiled as ``8-bit-clean'' to work well
  with European characters. Some need a few extra hints to get it right.


  3.1.  Loading the ISO-8859-1 font on the console

  Execute the following commands from your shell prompt:

  setfont lat1u-16.psf



  In Red Hat Linux 5.2 and higher you can do this by adding these lines
  to /etc/sysconfig/i18n:

  SYSFONT=lat1u-16.psf
  SYSTERM=linux


  Due to a bug in the ncurses package on Red Hat Linux 5.2, you also
  have to change ``linux-lat'' to ``linux'' in /etc/profile.d/lang.sh.
  This is not necessary in Red Hat Linux 6.0.


  3.2.  The Euro symbol

  A new symbol has been added to the Danish character set: The symbol
  for the Euro (the new currency of the European Monetary Union.) A new
  character set called ISO-8859-15 a.k.a. latin0 (or latin9) has been
  created to replace ISO-8859-1 (latin1.) You must use the EURO
  <ftp://ftp.freshmeat.net/pub/euro-patch/> package to get support for
  latin0. The package includes both fonts and keymaps.


  3.3.  Characters you can display under Linux

  Type dumpkeys -l | less at the prompt to find out which characters
  that are readily available. You can map them to your keyboard via the
  keymap files mentioned in section ``Loading a keytable''.


  3.4.  International character sets in specific applications

  A number of applications demand special attention. This section
  describes how to set up configuration files for them.


     bash:
        Put the following in your ~/.inputrc file:

        set meta-flag on
        set convert-meta off
        set output-meta on



     elm:
        Put the following definitions in your ~/.elm/elmrc file:

        charset = iso-8859-1
        displaycharset = iso-8859-1
        textencoding = 8bit



     This may not work on some versions of elm. You can get partial MIME
     support in elm if you use metamail.


     emacs:
        Put the following in your ~/.emacs or the the system-wide
        initialization file (probably /usr/lib/emacs/site-
        lisp/default.el or /usr/share/emacs/site-lisp/default.el):



        (standard-display-european t)
        (set-input-mode (car (current-input-mode))
                (nth 1 (current-input-mode))
                0)



     Dead keys should work under GNU emacs provided you use GNU emacs
     v19.30 or higher and XFree86 v3.1.2 or higher (it works for me
     anyway,) so do not start researching available elisp packages
     implementing ``electric keys'' or anything like that. If you want
     to implement European keyboard conventions in emacs without
     upgrading, the best choice is probably the remap package available
     from SunSite DK
     <ftp://sunsite.auc.dk/pub/emacs/auctex/ftp/auctex/>.  There are
     also two packages called iso-acc.elc and iso-trans.elc included
     with emacs that have similar functionality, but they are not nearly
     as powerful.


     groff:
        Issue the command as

        groff -Tlatin1 <your_groff_input_file>


     if you want ISO-8859-1 text output.

     Remember to change this in /etc/man.config to get latin1 characters
     working in man (don't remove the -mandoc switch.)


     ispell --- Spell checking in Danish:
        First make sure that you install version 3.1.20 instead of
        version 4.0 of ispell. The latter is obsolete and multiple
        brain-damaged. You can download the sources for ispell at the
        GNU archive <ftp://sunsite.auc.dk/pub/gnu/> and you can get a
        Danish dictionary from SSLUG
        <http://www.sslug.dk/ispell/idanish/dansk.html>. Follow the
        compilation instructions and you should have no trouble (One
        caveat: When defining the variables necessary for compilation
        you must tell ispell that Linux is a SysV type OS by defining
        the variable USG.)

        When you have installed the Danish dictionary for ispell you can
        check the spelling of a Danish language file by executing the
        command:

        ispell -d danish -T latin1 -w "" <your_danish_text_file>



     (Note for non-Danish readers: You can find dictionaries for most
     Western languages by reading the file Where included with the
     sources for ispell.)


     joe:
        Issue the command as

        joe -asis


     or put the following in your ~/.joerc file:


     -asis



     The hyphen character must be in the first column.


     kermit:
        This is as close as I can get, but not completely satisfying
        yet. Put the following in your ~/.kermrc file:

        set terminal bytesize 8
        set command bytesize 8
        set file bytesize 8
        set language danish
        set file character-set latin1-iso
        set transfer character-set latin1-iso
        set terminal character-set latin1-iso



     I think there are more variables to set, but they are hiding. You
     would have to modify these settings if the remote system is DOS or
     OS/2 based.


     less:
        Set the following environment variable:

        LESSCHARSET=latin1


     This is not necessary if your system support locales. Then you
     should just set LANG, LC_CTYPE or LC_ALL (see section ``Locale sup-
     port in libc 5.4.x and higher''.)


     ls:
        Issue the command as

        ls -N


     or possibly

     ls --8bit



     lynx:
        Put the following definition in your ~/.lynxrc file:

        character_set=ISO Latin 1



     This can also be set via the Options menu in lynx. Type `o' and set
     the relevant option.


     man:
        See entry for groff in this section.



     metamail:
        Set the following environment variable:

        MM_CHARSET=ISO-8859-1



     nn:
        Put the following in your ~/.nn/init file:

        set data-bits 8



     pine:
        Put the following definition in your ~/.pinerc file:

        character-set=ISO-8859-1



     This can also be set via the Setup, Config menu option in pine.  It
     won't hurt to enable enable-8bit-esmtp-negotiation and enable-8bit-
     nntp-posting (for news) in that menu too.


     rlogin:
        Issue the command as

        rlogin -8 foo.bar.dk



     sendmail:
        Put (or uncomment) the following in your /etc/sendmail.cf file:

        O SevenBitInput=False
        O EightBitMode=pass8
        O DefaultCharSet=iso-8859-1



     tcsh:
        Put the following in your /etc/csh.login or ~/.tcshrc file:

        setenv LANG C



     Actually you just have to define one of the environment variables
     LANG or LC_CTYPE. The value does not matter. Read the tcsh man page
     for more information.


     telnet:
        Put one line of the following type in your ~/.telnetrc file for
        each host you want to log on to using telnet:

        <hostname> set outbinary true



     Example:

     localhost set outbinary true
     foo.bar.dk set outbinary true



     TeX/LaTeX:
        There are several problems with TeX/LaTeX: You want LaTeX to
        understand the special characters and you do not want LaTeX to
        put in English words like ``Chapter'' at the beginning of every
        chapter or use English typesetting conventions.

        Under LaTeX2e the header of your input file should look
        something like this:

        \documentclass[a4paper]{article}

        \usepackage[latin1]{inputenc}
        \usepackage{t1enc}
        \usepackage[danish]{babel}



     The first usepackage statement ensures that LaTeX will interpret
     European characters correctly, so you do not have to use escape
     codes for European characters. The second one is not strictly
     necessary, but it is recommended including it to use the new EC
     fonts (previously called DC fonts.) The third usepackage statement
     defines a range of standards for typesetting texts in Danish.

     All the major Linux distributions now includes the teTeX package.
     To set up teTeX you must run the script texconfig. Here you can
     choose Danish hyphenation (dansk: ``orddeling''), A4 papersize for
     dvips and xdvi etc.

     All new Linux distributions include LaTeX2e, but on older systems
     you might come across LaTeX 2.09. If that happens you can use

     \documentstyle[a4,isolatin]{article}


     to include support for ISO-8859-1 characters and European paper
     sizes. A better thing to do would be to ask your system administra-
     tor to upgrade to LaTeX2e.

     isolatin.sty is available from all CTAN servers
     <ftp://sunsite.auc.dk/pub/tex/ctan/>.

     Some people prefer to use emacs in a special mode which translates
     ``special'' letters into TeX escape codes, but this method is
     obsolete.


     tin:
        Put the following definitions in your ~/.tin/headers file:

        Mime-Version: 1.0
        Content-Type: text/plain; charset=iso-8859-1
        Content-Transfer-Encoding: 8bit



     Now you can post messages with the proper Danish characters in the
     message body.
  4.  Miscellaneous problems

  4.1.  Time zone

  Denmark is placed in the Central European Time zone (CET or MET,)
  which (in the winter) is equivalent to Greenwich Mean Time plus 1
  (GMT+1.) You set the time zone on a Linux system by making a symbolic
  link between /usr/lib/zoneinfo/localtime and the file in
  /usr/lib/zoneinfo/ with a name corresponding to your zone or country.
  Danes will want to execute one of the commands

  ln -sf /usr/lib/zoneinfo/MET /etc/localtime


  or

  ln -sf /usr/lib/zoneinfo/Europe/Copenhagen /etc/localtime



  This automatically sets Daylight Saving Time (GMT+2) in the summer.

  You synchronize the system time with the CMOS clock by issuing the
  command clock as root. If your CMOS clock is set to GMT (a.k.a. UTC
  --- the standard on proper Unix systems) use

  clock -u -s


  or if your CMOS clock is set to local time use

  clock -s



  4.2.  A4 papersize


  o  ghostscript: Add the command line option -sPAPERSIZE=a4.

  o  ghostview: Define the following Xresource:

     Ghostview.pageMedia:  A4



  o  TeX/LaTeX, dvips, xdvi: See the entry for TeX/LaTeX in section
     ``International character sets in specific applications''.


  4.3.  Text file formats for other platforms

  You can translate files between an ISO-8859-1 formatted text file and
  e.g. a DOS text file using codepage 850 with the recode package. A DOS
  file called foo.txt would be translated into a proper Unix file with
  the command

  recode cp850:latin1 foo.txt



  recode is available as recode-3.4.tar.gz from all mirrors of the GNU
  archive <ftp://sunsite.auc.dk/pub/gnu/>.


  5.  Locale support in libc 5.4.x and higher

  The locale support has been updated in libc 5.4.x. You can avoid many
  of the individual program setups described in section ``International
  character sets in specific applications'' if the programs on your
  system is prepared for locale support. The Debian distribution comes
  with this support if you install the wg15-locale package. Systems with
  GNU libc 2 (libc 6.x) support locales by default (see remarks about
  Red Hat Linux release 5.0 later in this section.)

  If you use a system without locale support, you can add such support
  using the following method:

  1. Make sure you have the latest libc 5.4.x library. You can get this
     from Yggdrasil Computing <ftp://ftp.yggdrasil.com/private/hjl/>.

  2. Make sure you have the localedef program installed. It should come
     with the library.

  3. Get the locale sources. You can get them from DKUUG. You need to
     get both locale <ftp://dkuug.dk/i18n/WG15-collection/locales/> and
     charmap <ftp://dkuug.dk/i18n/WG15-collection/charmaps/> sources.

  4. Put the locale sources in /usr/share/i18n/locales/ and the charmap
     sources in /usr/share/i18n/charmaps/.

  5. Execute the localedef program to build the locale data files:

     localedef -ci da_DK -f ISO_8859-1:1987 da_DK


  (Note for non-Danish readers: You can build locale data files for
  other locales in the same way. All locale and charmap sources are at
  the DKUUG site.)

  To enable support for the Danish locale on a system with locale
  support you just have to set one of the following environment
  variables:

  LANG=da_DK


  or

  LC_ALL=da_DK



  Try da_DK.ISO_8859-1 if da_DK does not work.

  Both environment variables set all the individual locale catgories.
  You can also set a single locale category by using the name of the
  category as an environment variable. The locale catogories are:

  Locale category         Application
  ---------------         -----------
  LC_COLLATE              Collation of strings (sort order.)
  LC_CTYPE                Classification and conversion of characters.
  LC_MESSAGES             Translations of yes and no.
  LC_MONETARY             Format of monetary values.
  LC_NUMERIC              Format of non-monetary numeric values.
  LC_TIME                 Date and time formats.
  LC_ALL                  Sets all of the above (overrides all of them.)
  LANG                    Sets all the categories, but can be overridden
                          by the individual locale categories.

  In Red Hat Linux 5.2 you can set the environment variables LANG and/or
  LC_ALL in the file /etc/sysconfig/i18n by adding lines such as this:

  LC_ALL=da_DK



  A few programs such as bash and GNU emacs still need specific setup as
  described in section ``International character sets in specific
  applications'', but most should work without further attention.
  Programs such as nvi which did not work with 8 bit characters before
  should work now.

  Locale support should be more common as distributions based on the new
  GNU libc 2 become available. Beware that although Red Hat Linux
  release 5.0 comes with GNU libc 2, the locale support is not working.
  You have to build the locale data files by executing localedef
  yourself. You can build the Danish locale data files with the
  following command:

  localedef -c -i da_DK -f ISO-8859-1 da_DK



  As of glibc-2.0.7-4.i386.rpm the locale data files are included with
  the libraries and this is no longer necessary.


  6.  Programming tips for X11

  Displaying 8-bit charaters is easy. You can use them just as you would
  use 7-bit ASCII. Getting applications to accept input of special
  characters is an entirely different matter.

  If you are using e.g. the Xt toolkit and a widget set like Motif you
  need only add one line to your program. As your first call to Xt use
  XtSetLanguageProc. Like this:

      int main (int argc, char** argv)
      {
          ...
          XtSetLanguageProc (NULL, NULL, NULL);
          top = XtAppInitialize ( ... );
          ...
      }



  Now your program will automagically look up the LC_CTYPE variable and
  interpret dead keys etc. according to the Compose tables in
  /usr/X11R6/lib/X11/locale/. This should work for all Western European
  keyboard layouts and is entirely portable. As XFree86 multilanguage
  support gets better your program will also be useful in Eastern Europe
  and the Middle East.

  This method of input is supported by Xt, Xlib and Motif v1.2 (and
  higher.) According to the information I have available it is only
  partially supported by Xaw. If you have further information on this
  subject I would like to hear from you.

  This section was adapted from a more extensive discussion in Michael
  Gschwind's Programming for Internationalization. See section ``Other
  documents of relevance'' for a pointer to that document.



  7.  Getting X11 applications to speak Danish

  To get Danish texts on menus, buttons, etc. in a well behaved X11
  application, you just have to translate the resource strings defining
  the texts. Jacob Nordfalk has done such translations for a lot of
  applications including Netscape and Ghostview. The translations and a
  description of how to install them can be found at this site
  <http://alf.nbi.dk/~nordfalk/ovs/>.


  8.  Information resources

  8.1.  Other documents of relevance

  The HOWTOs are available from all mirrors of www.linuxdoc.org. There
  is a Danish mirror at SunSite DK <http://sunsite.auc.dk/ldp/HOWTO/>.

  The German HOWTO (in German) by Winfried Truemper. A lot of other
  national HOWTOs such as Finnish, Spanish and Polish are also available
  in the native languages.

  The Linux Keyboard and Console HOWTO by Andries Brouwer.

  The ISO 8859-1 National Character Set FAQ and Programming for
  Internationalization (plus much more) by Michael Gschwind is available
  from this site <http://www.vlsivie.tuwien.ac.at/mike/i18n.html>.


  8.2.  FTP and Web sites

  SSLUG (Skaane Sjaelland Linux User Group) <http://www.sslug.dk/> is a
  Swedish/Danish Linux user group. Their mailing list is a good place to
  get help with Linux in Danish (or Swedish.) They are also hosts for
  this document <http://www.sslug.dk/DanishHowto/>.

  AUC in AAlborg is the home of SunSite DK
  <ftp://sunsite.auc.dk/pub/os/linux/> which has the Debian and Red Hat
  distributions, the latest kernels, a mirror of the Linux Documentation
  Project <http://sunsite.auc.dk/ldp/> and mirrors of metalab.unc.edu
  <ftp://sunsite.auc.dk/pub/os/linux/sunsite/> and the GNU archive
  <ftp://sunsite.auc.dk/pub/gnu/>. There is also a mirror of the CTAN
  archive <ftp://sunsite.auc.dk/pub/tex/ctan/> with everything you need
  to get TeX and LaTeX running.


  9.  Credits and legal stuff

  Thanks to Peter Dalgaard, Anders Majland, Jon Haugsand, Jacob
  Nordfalk, the authors of the German HOWTO, Michael Gschwind and
  numerous others for suggestions and help with several questions. And a
  big thanks to the people at Aalborg University Center for writing and
  making available several of the packages described in this document. A
  special Thank You to Thomas Petersen; the original author of this
  document.


  9.1.  Legal stuff

  Trademarks are owned by their owners.

  Although the information given in this document is believed to be
  correct, the author will accept no liability for the content of this
  document. Use the tips and examples given herein at your own risk.

  Copyright (C) 1996 by Thomas Petersen. Copyright (C) 1997-2000 by
  Niels Kristian Bech Jensen. This document may be distributed only
  subject to the terms and conditions set forth in the LDP license at
  http://www.linuxdoc.org/COPYRIGHT.html
  <http://www.linuxdoc.org/COPYRIGHT.html>.