If you want to build an .Xmodmap and you know how the character looks visually, you may have problems about knowing how it is defined by name. A good site that may help you with this may be: http://www.geocities.com/gorazd.hribar/latin-2/eng-iso-8859-2.html Here you can see ISO8859-2 characters visually.
I also included here some ISO8859-2 Character definitions for you to know which names are used for pertinent keys. It may not be complete and you should not bother about the keycode numbers, but notice how keys are named. Much of this information is useful to build a keyboard with ISO8859-1 characters only, or a combination of East European characters and Western characters. If you're going to use other languages than the Central European or West-European ones, find a pertinent table for your ISO*** character set on the Internet. The gdkkeysyms.h file that contains all the crazy names for keycode entities including hexcodes is in (older versions of RedHat) /usr/include/gdk/ directory. If no gdkkeysyms.h file is on your sustem, see the file /usr/X11R6/include/X11/keysymdef.h (you must install XFree86 development package to make use of this directory), or try to look in /lib/perl5/site_perl/5.6.0/i386-linux/GTK/keysyms.pm (it also contains names of keycode entities including hex codes). If you have a newer version of PERL, the version number "5.6.0" may differ. The similar thing should apply to other systems (FreeBSD), too, as they also use PERL.
Xmodmap entities with their word definitions (which you put in the Xmodmap file) and their visual representation. Some word definitions lack their visual forms.
----------------------------------------------------------------------
space
exclam !
quotedbl "
numbersign #
dollar $
percent
ampersand &
quoteright '
parenleft (
parenright )
asterisk *
plus +
comma ,
hyphen -
period .
slash /
zero 0
one 1
two 2
three 3
four 4
five 5
six 6
seven 7
eight 8
nine 9
colon :
semicolon ;
less < <
equal =
greater > >
question ?
at @
A A
B B
C C
D D
E E
F F
G G
H H
I I
J J
K K
L L
M M
N N
O O
P P
Q Q
R R
S S
T T
U U
V V
W W
X X
Y Y
Z Z
bracketleft [
backslash \
bracketright ]
asciicircum ^
underscore _
quoteleft `
a a
b b
c c
d d
e e
f f
g g
h h
i i
j j
k k
l l
m m
n n
o o
p p
q q
r r
s s
t t
u u
v v
w w
x x
y y
z z
braceleft {
bar |
braceright }
tilde
space
Aogonek
breve
Lslash
currency
Lcaron
Sacute
section
dieresis
Scaron Š
Scedilla
Tcaron Ť
Zacute Ź
hyphen
Zcaron Ž
Zdotaccent
degree
aogonek
ogonek
lslash
acute
lcaron ľ
sacute ś
caron
cedilla
scaron š
scedilla
tcaron ť
zacute
hungarumlaut
zcaron ž
zdotaccent
Racute
Aacute
Acircumflex
Abreve
Adieresis
Lacute
Cacute
Ccedilla
Ccaron Č
Eacute É
Eogonek
Edieresis
Ecaron Ě
Iacute Í
Icircumflex
Dcaron Ď
Eth
Nacute Ń
Ncaron Ň
Oacute Ó
Ocircumflex
Ohungarumlaut
Odieresis
multiply
Rcaron Ř
Uring Ů
Uacute Ú
hungarumlaut
Udieresis
Yacute
Tcedilla
germandbls
racute
aacute á
acircumflex
abreve
adieresis
lacute
cacute
ccedilla
ccaron č
eacute
eogonek
edieresis
ecaron
iacute
icircumflex
dcaron
dbar
nacute
ncaron
oacute
ocircumflex
ohungarumlaut
odieresis
divide
rcaron
uring
uacute
uhungarumlaut
udieresis
yacute
tcedilla
dotaccent
----------------------------------------------------------------------
First, if you are using older systems (see the legacy solution), try to see if definitions will give you (after installing pertinent fonts and building the Xmodmap map with keyboard definitions for X) what they say they are. If they will not give you what they say they are, see my legacy soluttion.