MorphOS keymap and dead keys
  • Order of the Butterfly
    Order of the Butterfly
    BatteMan
    Posts: 282 from 2003/2/24
    From: France
    Hi everyone,

    I tried to finalize a keymap for a bépo keyboard (french version of dvorak) but I don't understand how to make dead key (example : put the ^ on a o to make ô after typing two keys).

    I looked at others keymaps and I still don't understand.

    Can someone give me a hint or an example ? I share source of my keymap if it can help.

    http://batteman.free.fr/amiga/typematrix_bepo.c

    Thank you ;)
    Proud user of MorphOS since 2003 !
  • »13.07.21 - 09:33
    Profile Visit Website
  • Paladin of the Pegasos
    Paladin of the Pegasos
    Amigaharry2
    Posts: 1224 from 2010/1/6
    From: EU-Austria (Wien)
    I don't know if this helps, but take a look at USB-Prefs of keyboard (HID-Class). There are some possibilties to manipulate.
    Peg2, 3xPowerMac G5, 2xPowerbookG4, 2x MacMiniG4, Efika (again), A3000T and life is never boring.....
  • »13.07.21 - 11:57
    Profile
  • Acolyte of the Butterfly
    Acolyte of the Butterfly
    Georg
    Posts: 106 from 2004/4/7
    https://wiki.amigaos.net/wiki/Keymap_Library#Dead-Class_Keys
  • »13.07.21 - 17:44
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    BatteMan
    Posts: 282 from 2003/2/24
    From: France
    @Amigaharry2 : Thank you. It can do the trick but I want to do a full keymap, without settings in Poseidon ;)

    @Georg : Very helpful. I didn't find this page before and I don't know why. I'll read it very carefuly and I hope I'll succeed. Thank you !
    Proud user of MorphOS since 2003 !
  • »17.07.21 - 07:57
    Profile Visit Website
  • Moderator
    guruman
    Posts: 461 from 2003/7/22
    If you still have not succeeded , I have a few suggestions:
    - download the keymaps sourcecode from the MorphOS site (from https://morphos-team.net/sources you can select for instance the keymaps from MorphOS 3.15)
    - have a look at pc105_d.c (the german keymap, which is one of the most complete for obvious reasons) and compare with one without dead keys defined, like pc105_gb.c or pc105_sp.c for reference
    - you will notice that in order to implement dead keys you have to indicate the "target" keys (usually a, e, i, o, u and y) and the proper dead keys used in the combination to generate the accent (for instance f, g, h, j, k) as D|V in the lokeymaptypes[]. You will see that also the spacebar is defined as D|A in the hikeymaptypes[]. Then you have to create the const UBYTE keyXX_descr[] for those keys (which I see you did) and substitute BYTES(whatever) in lokeymap[] with DEAD(keyXX_descr).
    I hope this can help you.

    Kind regards,
    Andrea
  • »22.07.21 - 23:24
    Profile