Bring back Cobol - that's what I say
I will try installing the extra packages and have another go at compiling, but I probably won't have time until the weekend. I'm using Debian (Bullseye/testing) btw.
Meanwhile, apologies for using up your time like this. It would probably be easier if I actually understood the whole input process better. Is there somewhere I could read about it? I only encounter linux boxes so it doesn't matter in the slightest whether any of this works with Windows or MacOS. I can live without the multi key as well, and leave that to be defined by the OS. I don't use it a lot.
I *think* I now understand about the Swedish characters. At the moment, I have LANG set to en_IE.UTF-8 but keyboard layout set to "gb" with variant "dvorakukp" as that puts most of what I want in the right place. I achieve the remainder with xmodmap. I use it to do things like make the Win key into Caps Lock, etc, and to add extra characters that I need, eg with "keycode 24 = aring Aring" which gives me lower and upper case Å on what is usually the Q key. All this works with no apparent mention of Swedish character sets in either locale or keyboard settings.
As I understood it (and I now think this is wrong, and that my misunderstanding has caused most of my problems) the usb-usb convertor works by juggling the keycodes. So if I swapped, say, the Q and the W on a standard qwerty layout, every time the convertor got keycode 24, which is normally Q, it would output 25, and vice versa, and so on for any other altered mappings I made. I think my error is that I assumed there is an absolute relationship between keycode 24 and Q, and that there is also therefore a keycode specifically for Å (and all the other non-latin charaters), and that the convertor would exchange 24 for whatever the actual keycode for Å is. I now think that is probably wrong: there is no absolute mapping that says "24 -> Q", I think the 24 just means whichever is the top left character in the current layout. If that is true, then if I just switched the keyboard settings to a Swedish layout, then I would get Å in the top left corner because in the svorak layout, which linux already has, that is where Å is located. In that situation, it would be the case that "24 -> Å" and no further re-mapping is necessary. If this is correct, then I can easily use the online Keymap Editor to achieve the layout I want, since it's a simple question of swapping keys around, and it doesn't matter what character appears on the key in the online keyboard. Is that correct?
Sorry this has turned into such a long post but I think if I properly understood what was going on here, I could probably go away and save you quite a lot of time!
I will try to get to grips with the compiling anyway, as presumably that would be a good way of adding extra characters to the layout by using the other layers. Eg for Irish, it's useful to have all of the standard English vowels with acute accents, and I do that at the moment by using xmodmap to specify level 2 and 3 values for some of the letters, eg "keycode 41 = u U uacute Uacute udiaeresis Udiaeresis". None of these are as important as getting the basic layout right.
One final (for now) thing: can the convertor be used to change what you get as the upper case character on non-letter keys? For example, I'm used to having Shift-4 -> $ but you don't get that with the Swedish layout. That's the main reason I use gb layout, it keeps all the punctuation characters in the places I expect them to be.
Thanks again for all the help!!