• You are not logged in.

    Colemak with Autohotkey

    • Started by fmate14
    • 7 Replies:
    • Reputation: 0
    • From: Hungary, Budapest
    • Registered: 21-Oct-2007
    • Posts: 23

    Hello.

    I implemented the FULL colemak layout in AutoHotkey.
    See: https://forum.colemak.com/viewtopic.php?id=345
    (Here is the new, Portable Keyboard Layout program with Colemak support)

    This is an old topic, please, do not post anything to here.

    Last edited by fmate14 (12-Feb-2008 20:47:35)

    Portable Keyboard Layout with Colemak support
    http://pkl.sourceforge.net/

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

    Kudos, Farkas!

    That is extremely awesome, and pretty much what I've been looking for! However, I'm going to want to tweak it to my own needs which includes multiple national layouts, and for that I'll want to use some sort of tables for the definitions. I'm thinking XML or just plain old INI. I'll get to work on it unless you beat me to it, heh. I wasn't anywhere near such a brilliant use of a dll call though, so great thanks both to you and to Shimanov!

    Is <^>! the 'one and only' way of specifying AltGr? I've been wondering about that. Its scancode seems messy - looks like it sends two codes (e038?) which looks like an escape code plus the Euro LAlt mapping. Will <^>! work on a US board too, I wonder (pressing the two keys together)?

    Last edited by DreymaR (25-Oct-2007 14:20:19)

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

    Offline
    • 0
    • Reputation: 0
    • From: London
    • Registered: 02-Feb-2007
    • Posts: 24

    This is fantastic. No, really. Köszönöm szépen.

    Offline
    • 0
    • Reputation: 0
    • Registered: 07-Jan-2007
    • Posts: 47
    CheckShiftState()
     {
     global
     ShfSt = 1
    
    ; Check Shift Key
     if ( GetKeyState("sc038","P") or GetKeyState("Shift","P") )
      {
      ShfSt += 1
      }
    ; Check AltGr
     if ( GetKeyState("sc138","P") or GetKeyState("AltGr","P") )
      {
      ShfSt += 2
      }
     }
    return
    
    *sc025::
    CheckShiftState()
     if dkSt = 32
     {
      dkSt = 0
      if ShfSt = 1
       sendinput î
      else if ShfSt = 2
       sendinput Î
     }
     else if dkSt = 16
     {
      dkSt = 0
      if ShfSt = 1
       sendinput ì
      else if ShfSt = 2
       sendinput Ì
     }
     else if dkSt = 2
     {
      dkSt = 0
      if ShfSt = 1
       sendinput í
      else if ShfSt = 2
       sendinput Í
     } 
     else if dkSt = 1
     {
      dkSt = 0
      if ShfSt = 1
       sendinput ï
      else if ShfSt = 2
       sendinput Ï
     }
     else
     {
      dkSt = 0
      if ShfSt = 1
       sendinput {blind}i
      else if ShfSt = 2
       sendinput {blind}I
      else if ShfSt = 3
       dkSt = 64
      else if ShfSt = 4
       dkSt = 128
     }
    Return

    The above demonstrates another approach to detecting shift states and dead keys that I gleaned from a NEO AutoHotKey implementation. I hope this helps.

    "Things will get better despite our efforts to improve them" - Will Rogers
    "...even the dog doesn't think I'm a monster." - Humphrey Bogart in The Caine Mutiny (1954)

    Offline
    • 0
    • Reputation: 0
    • From: Hungary, Budapest
    • Registered: 21-Oct-2007
    • Posts: 23
    sorenk said:

    I hope this helps.

    Thank you, it is nice! But not helps, because I rewrote my program to an universal “Portable Keyboard Layout”.  It works fine with me.

    Please, see my new program!

    Last edited by fmate14 (12-Feb-2008 20:49:08)

    Portable Keyboard Layout with Colemak support
    http://pkl.sourceforge.net/

    Offline
    • 0
    • Reputation: 0
    • Registered: 24-May-2007
    • Posts: 9

    this is really awesome.

    i am beta tester too with that script for the ENTI-key++ Layout:

    some more hints here:
    https://www.autohotkey.com/forum/viewtopic.php?t=28447

    Offline
    • 0
    • Reputation: 0
    • Registered: 13-Dec-2007
    • Posts: 27
    fmate14 said:

    If someone would like help, please create two icon (like the favicon in the colemak.com): a red and a green to display to show: the Colemak Layout is active or suspended?

    Like S and H in AutoHotkey, but one green and one red.

    I'd recommend against red and green only out of concern for colorblind users where red-green colorblindness is the most prevalent. Green and grey might be a better choice.

    Offline
    • 0
    • Reputation: 0
    • Registered: 24-May-2007
    • Posts: 9

    do you know an easy Typing tutor program, that works with any layout? and with this autohotkey script running?

    Offline
    • 0