If you have problems with some keys in RHIDE, it is probably
because you have an other keyboard layout than the US standard
keyboard. In that case try at first to run RHIDE with the
'-k ...' switch, where '...' stands for the shortcut of
your country. (for instance in germany try '-k de').

If you are running RHIDE on linux, it is the best to use
exact the same name, like your loaded keyboard table, since
the config files here are derived from them.

If that doesn't solve the problem, try any other of the
files in $(prefix)/share/rhide which ends in '.txt' by

(but NOT 'pmacros.txt' or 'syntaxhl.txt', which is an totaly
different config file)

giving after the '-k' only the part before '.txt'. 
If you found any working file, copy it to 'keybind.txt'
and RHIDE will use it from now on as default.

If all of the above doesn't help you, read below:

   Instructions to create a new keyboard config file:

   1) Create 'gkey.exe', which is in the tvision subdirectory
      either with RHIDE using the .gpr file or type there

make -f gkey.mak

   2) Read the 'keybind.cc' file, this file contains ALL the keyboard
assigments for the commands of the editor.

   3) Search any difference between the commands and your keyboard. For
example: the german keyboards don't do ^Y like we spect, that's the line
isn't deleted, instead the editor is scrolled. Put all the annoying diffs.
in a paper or file.

   4) Read the 'keybind.h' and 'keybind.cc' to find what scan code have the
differenece, for example (I'll continue with the german example):
In 'keybind.cc' says:

[CONTROL]
.
. [snipped lines]
.
Y         = cmbDelLine
...

  That means Control+Y will triggers the cmbDelLine command (a description of
all the commands is in 'editor.inf').
  Searching in 'keybind.h' you'll find:

#define Y           21

  So the editor spects a 21 value of scan code for the Y key.
  Take notes of all the scan codes that generate problems based on your
first list.

  Until now we have: ^Y doesn't work, the editor wants 21 for Y.

  5) Run gkey and press the problematic keys to find the scans reported for
your keyboard, in our example:

Pressing ^Y the german people gets (the dots stand for other
information):
 ... ScanCode: 44 ...

 The difference is in the scan 44 v.s. 21, the ascii is correct in this case.
So you must correct the #define in the keybind.h to reflect this situation,
but don't do that in the keybind.h file, make the corrections in the file
named 'my.h', rename this file to the internet domain of your country, in
our example is Germany == de, so you must rename the file to 'de.h', then
modify the keybind.h file to load the de.h file, there are an explanation
of that in the keybind.h file.

  That's the half of the work because the scan 44 is mapped to other key in
keybind.h, there are two ways to know what's the key:

1) I'm sure that you can detect pairs of problems like that, in the german
keyboards the ^Z will delete the line, pressing ^Z in gkey the german people
gets: Scancode: 21, that's logic because these keyboards have the
Z and the Y swapped!
2) Search in the keybind.h what key have the 44 assigned, you'll get Z.

  With this info. you can correct the #define for Z.

  6) With all or any of the problems fixed you must test if that's works, for
this purpose you must create 'keybind.txt', use:

   cpp keybind.cc > keybind.txt

   Now copy the keybind.txt file to the %DJDIR%/share/rhide directory, if you
   don't have this directory create it. For testing first, you can rename it
   to test.txt and run RHDIDE with the '-k test' switch to use the file
   'test.txt' as keyboard definition file.

  7) When you get all working send me the xx.h file to:

  salvador@inti.edu.ar
and
  robert.hoehne@mathematik.tu-chemnitz.de

  and I'll include the file in the package.

Good luck and thank you.





