• You are not logged in.
  • Index
  • Technical
  • Windows software for custom keyboard layouts (advanced options)

    Windows software for custom keyboard layouts (advanced options)

    • Started by rpnfan
    • 7 Replies:
    • Reputation: 2
    • Registered: 04-Sep-2022
    • Posts: 14

    I am in the process to create a custom keyboard layout and need to decide for a solution which allows:

    * custom key layout
    * compose sequences
    * dead keys for diacritics
    * navigation and media button assignments
    * extra layers
    * custom modifier keys
    * home-row mods
    * one-shot-keys
    * screen overlay with keyboard layout (to help learn or to look up seldom used chars)
    * ... something I am possibly missing right now ...?

    Is there somewhere an overview, in the best case a table, listing the different options?

    The solution can be either a single program, but could also be a combination, for example creating a custom keyboard layout, which shows up in the windows settings, but then adding functions like compose keys, home-row mods and so on, which are not available with that.

    I know of

    * Autohotkey → not the ideal solution in my experience, because from time to time it gives problems and the re-assignments do not work reliable always
    * http://www.kbdedit.com/ → likely no home-row mods, but might be a good solution otherwise?
    * Microsoft Keyboard Layout Creator (MSKLC) Version 1.4 → limited to basic remapping, no navigation keys (arrows...) possible
    * Kmonad → seems to cover the special wishes, does one need a basic remapping tool like MSKLC in addition
    * ReNeo → seems harder to configure, but likely addresses most remapping wishes, but not home-row-mods and the like!?
    * neo2-llkh → similar to ReNeo, but limited options!?
    * others.....?

    What about special needs and experiences (admin rights? Works in console windows as well? Available in login screen already, Can be switched to a "standard" layout like qwerty easily, runs stable? Works in virtual machines? ...)?

    What do you think is the "best" option?

    Offline
    • 1
    • Reputation: 214
    • From: Viken, Norway
    • Registered: 13-Dec-2006
    • Posts: 5,361

    EPKL can do nearly all of that. I don't know of any other free software that will do composes and everything else you need. It will not work on first startup since it has to run a program, but I don't think you'll get any single software that does absolutely everything you ask for. One answer is a hybrid solution: I use EPKL in conjunction with MSKLC and SharpKeys (registry remapping) for a complete and robust total solution.

    Home row mods may be the hardest thing to accommodate. I haven't gotten the timing right or something, so I haven't looked at it for a while. I don't feel the need for them myself, with all my other tricks, so that's a thing.

    EPKL, like AHK, in itself doesn't need admin rights, just run rights. It's portable and can be run from a USB drive or even over an internet connection I think. It's not 100% stable but good enough I'd say and easy to refresh by a hotkey. Not robust in all games, as holding down keys for a long time leads to the generation of an overflow of system hotkeys. Also easy to suspend (by hotkey or automatically by app or layout). I've used it with VMs in different ways.

    I am EPKL's creator. It is based on PKL by Máté Farkas, and it is compiled AHK code. I am open to suggestions for improvement and additions, but I usually can't promise quick implementations even with sponsoring as it isn't my main job.

    See my Big Bag for more info, especially the Windows platform.

    Last edited by DreymaR (21-Nov-2022 11:10:04)

    *** Learn Colemak in 2–5 steps with Tarmak! ***
    *** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

    Offline
    • 1
    • Reputation: 2
    • Registered: 04-Sep-2022
    • Posts: 14

    Thanks DreymaR. I'll keep that in my mind as another option and will include when I make an overview. For myself I first try not to use Autohotkey solutions for that kind of tasks any longer. You're right that it runs relatively stable -- but not totally -- and that is what I would want from a keyboard driver.

    Offline
    • 0
    • Reputation: 214
    • From: Viken, Norway
    • Registered: 13-Dec-2006
    • Posts: 5,361

    If you want a real driver, you may have to pay for KbdEdit. I have no idea whether it's still under active development, but if it is then you may be able to persuade its maker to implement dual-function keys too so you can have your HRMs?

    I want to address the issue of hotkey buffer overflow in EPKL soon. In that case, it may become very stable indeed – at least, that's what I'm hoping for. But if and when that'll work is uncertain right now.

    *** Learn Colemak in 2–5 steps with Tarmak! ***
    *** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

    Offline
    • 0
    • Reputation: 2
    • Registered: 04-Sep-2022
    • Posts: 14

    Thanks for the answer Dreymar. I am not sure what can be done exactly with KbdEdit and what you mean with HRMS. But the program is still under development and 40 $ not that expensive either to create layouts one can distribute AFAIK. The other answers to e-mails, although it might take a while... ;-)

    Regarding EPKL / Autohotkey you think you know where it goes wrong sometimes? That would be great when this can be fixed. Would that be a fix for EPKL only or can also be applied to other Autohotkey scripts easily? I have a custom script which is doing what I need. I just do not like that once in a while the keyboard goes crazy and I need to cancel the program and restart. Do you know if there is a difference between running a script or a compiled version? I typically run the script the version.

    Offline
    • 0
    • Reputation: 214
    • From: Viken, Norway
    • Registered: 13-Dec-2006
    • Posts: 5,361

    HRM: Home-Row Modifier

    Good news: EPKL buffer overflow is pretty much fixed already. I don't think it'll hang on you anymore, but of course I cannot be 100% certain as it is a very complex program with much functionality in it. To use the newest EPKL, you have to compile using the enclosed .bat file, from the latest commit. Release versions don't have the latest developments; once the dust settles I'll make a new release but I'm still testing and developing the next release so it's pre-α still.

    Other AHK scripts have other issues. I don't use them much but I've heard so. You could harden a simpler AHK script but it'd take a pretty profound knowledge of Windows threads and hotkeys, as I understand it.

    Last edited by DreymaR (09-Dec-2022 10:05:41)

    *** Learn Colemak in 2–5 steps with Tarmak! ***
    *** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

    Offline
    • 0
    • Reputation: 2
    • Registered: 04-Sep-2022
    • Posts: 14

    Hello Dreymar,

    thanks for the answer. So when I understand it right I could use EPKL to create the custom layout I am looking for? I do not want / need the default mappings for additional layers, but need to create my own.

    For the standard qwertz-layout I am using my own Autohotkey-script since now 14 years. (https://github.com/rpnfan/DeutschlandPlus). The script works fine most of the time, but when you press keys very rapidly, for example zooming in/out with Ctrl-+ / - it can happen that the script totally goes crazy and messes up the keyboard and mouse. Even after killing the relevant Autohotkey-process it still is not o.k. and I do not know of another solution, but a re-boot. Luckily that happens only rarely, but I would wish for a really robust solution of course.

    1) I understand you think EPKL could be such a robust solution?
    2) Do I understand you correct that you think all standard autohotkey scripts are not really robust (without the need of tweaking them somehow!)?

    Offline
    • 0
    • Reputation: 214
    • From: Viken, Norway
    • Registered: 13-Dec-2006
    • Posts: 5,361

    I believe EPKL will be more robust, yes. I've worked hard to make it so, as did my predecessor.

    Standard AHK scripts may be made more robust by using thread and priority settings right. This is a complex discipline, and I don't fully understand it but often resort to trying out solutions to see how they work.

    *** Learn Colemak in 2–5 steps with Tarmak! ***
    *** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

    Offline
    • 1
      • Index
      • Technical
      • Windows software for custom keyboard layouts (advanced options)