rxvt support for greek keyboard
A. Haritsis <firstname.lastname@example.org>
rxvt supports both ELOT-928 (ISO-8859-7 standard) and IBM-437 keyboard
translations for greek character entry. It is possible to start rxvt windows
in any of the two translations, making it possible to use both translations
modes simultanesuly on the same screen! No need to convert your files back
and forth if you don't want to.
When in greek mode, type ; or : twice to emit the respective symbol.
No need to switch language mode back and forth!
rxvt ISO-8859-7 includes mappings for the following (usually forgotten):
anw teleia = ;.
<< = ;<
>> = ;>
Copyright = ;c
Section = ;s
For Greek Elot-928 or IBM-437 keyboard for rxvt & X greek entry support
you will need to:
1) compile rxvt with an ANSI C compiler (eg gcc) as follows:
Use the --enable-greek option in configure , or edit config.h and
Then your rxvt executable with greek support should be created. Install
it as you would do for the normal rxvt. There is no need to change its
name. It works fully as a normal rxvt but if you press the 'toggle'
keysym (see below) it will switch into greek translation mode. The extra
memory it takes in less than 4 kBytes.
2) install greek elot & ibm437 fonts(s) for X-windows
cp a_greek_font.pcf.Z /usr/lib/X11/misc/
and ammend the fonts.dir and fonts.alias in /usr/lib/X11/misc/. Greek
fonts are available as a separate file which you can download from
sunsite (/pub/Linux/X11/misc/greek-xfont-pack.tgz). A new release of a
FULL set of fixed (and proportional and Type1 for use by netscape etc)
can be found in the HCR archive - see at end). I might upload them at
sunsite et all as well.
3) include the following in your X resources:
rxvt.font: grfixed (or the name of your preferred greek font)
rxvt.bits: 8 (default)
rxvt.greektoggle_key: Mode_switch (default)
where grfixed is an alias for one of the elot-928 font in the pack.
Remember that the default keyboard translation is ELOT928. If you need
to start rxvt with suppport for IBM437, use the command line of rxvt to
set mode & font (command line option -grk4 can do this). Remember to use
an Elot font with the Elot translation mode and a 437 font with the
You can choose any keysym you wish as the "toggler" greek_switch_keysym.
Choosing `VoidSymbol' will effectively _disable_ the greek keyboard.
The default is keysym `Mode_switch'.
For XFree86 this is defined in the /usr/lib/X11/Xmodmap.* files as:
keycode 113 = Mode_switch (it is the Right Alt key or ALtGr)
You may define it to be something else with a command like:
xmodmap -e "keycode ... = Mode_switch"
or changing your ~/.Xmodmap file (see xmodmap(1) and X(1) about this).
I personally prefer the AltGr key on PC X terminals since it allows fast
switching. Of course this might not be liked by left-handed people. You
can redefine it to whtever you like under X, but I would NOT recommend
keycodes that have other uses.
5) Not all programs are 8-bit clean -- ie, they sometimes strip the top bit
of a character which is essential for the greek fonts.
Unfortunately bash is one of these programs (at least I couldn't figure
out how to make it to work). Use tcsh instead: it is 8-bit clean.
You will generally need to include in your ...rc files:
LC_CTYPE=iso_8859_1; export LC_CTYPE
LESSCHARSET=latin1; export LESSCHARSET
For bash to be 8-bit clean, add the following lines to ~/.inputrc:
set meta-flag on
set convert-meta off
set output-meta on
setenv LC_CTYPE iso_8859_1
setenv LESSCHARSET latin1
Still some applications will have problems. Emacs has its own support for
greek characters achieved with the .el script written by email@example.com
(for 19.20 +). It might be possible to have greek support via emacs
invocations with the -nw argument (with this version of rxvt) but I have not
tried it. Elvis (vi clone) works fine. I highly recommend vim version 3.15
and later. I have added support for making native languge vi'ing very easy
(see langmap option). It's by far the most powerful vi (or maybe editor :-)
I have ever seen.
If some (terminal-based) applications do not work, please direct complaints
to their authors stating that you would like them to be 8-bit clean.
I will soon release a linux version of an 8-bit clean curses lib and
versions of some useful programs that work with it (eg ytalk). Watch the
Do not expect programs that are not running within an rxvt window to have greek
keyboard support. For this, it will be needed to change the Xlib so that it
supports 4-state FSMs (rather than only 2 - I do not count shift keys or caps
lock) for keyboard entry (required for greek keyboards).
And something amusing and (maybe) useful: some filesystems (including SunOS
and Linux filesystems -- haven't checked others) allow names with 8-bit
characters; so you can create files or directories with names containing
Angelo Haritsis <firstname.lastname@example.org>
For more greek related tools/fonts etc, have a look at the
HELLENIC RESOURCES ARCHIVE (HCR) : ftp://dolphin.doc.ic.ac.uk/pub/greek/
maintained by the above author.