I don't know if anyone is using the switchable layout pads I described here but if some do, this may come handy as it is a transposition for the standard keyboard with
.
I've lived with it for two weeks now and It is starting to kick in as a usable mean to kill reaches for fucking-pinky-symbols and fucking-off-home-row-numbers.
As I am pretty new at touch-typing (~1year now), I get pissed off when my hand leaves home row. Being able to type everything from home row and those right above and below make me really happy!
Here it is, without much comments because it is very likely that I am the only one interested and I don't need to explain that to myself here.
Code: Select all
; {{{
; AutoHotkey script: Adding more modifier to the standard keyboard:
; [060412]
;
; With an AutoHotkey script, "Tab", "CapsLock" and "Tilde" can be
; used as chording modifiers.
;
; Still, these keys retain their original value if they are pressed
; then released with no intervening keypress.
;
; In this particular customization script, these additional modifiers
; are used to transform right-hand keys surrounding home-row into a
; "NumberPad", a "PunctPad" or a "SymbolPad".
;
; There are two side effects though that have to be acceptable:
; 1- The autorepeat wont work for these keys anymore since they can be
; maintained depressed without generating any event until some other
; key is activated.
; 2- In case no other key has been activated in the mean time, the
; original key stroke will be sent when the key is released.
; Under normal circumstances, this happens at keypress.
;
; Note. Jargon has keypress renamed "make", release is named "break".
;
; }}}
; Accents -- grave and circumflex {{{
; grave accent
`::Send, {sc29}{Space} ; Note: This key will only trigger on key break
+`::Send, +{sc29}{Space}
` & a::Send, {sc29}a ; `a = à
` & e::Send, {sc29}e ; `e = è
` & v::Send, {sc29}u ; `u = ù
; circumflex accent
6::Send, {sc7} ; Note: This key will only trigger on key break
+6::Send, +{sc7}{Space}
6 & e::Send, +{sc7}e ; ^e = ê
6 & a::Send, +{sc7}a ; ^q = â
6 & i::Send, +{sc7}i ; ^i = î
6 & o::Send, +{sc7}o ; ^o = ô
6 & u::Send, +{sc7}u ; ^u = û
; }}}
; NumberPad -- Tab {{{
LAlt & Tab::AltTab
Tab::Send, {Blind}{Tab}
+Tab::Send, {Blind}{Tab}
Tab & y::Send, {5}
Tab & h::Send, {0}
Tab & n::Send, {*}
Tab & u::Send, {6}
Tab & j::Send, {1}
Tab & m::Send, {+}
Tab & i::Send, {7}
Tab & k::Send, {2}
Tab & ,::Send, {-}
Tab & o::Send, {8}
Tab & l::Send, {3}
Tab & .::Send, {.}
Tab & p::Send, {9}
Tab & `;::Send, {4}
Tab & /::Send, {=}
; }}}
; PunctPad -- CapsLock {{{
CapsLock & y:: Send, {``}{Space}
CapsLock & h:: Send, {"}{Space}
CapsLock & n:: Send, {'}{Space}
CapsLock & u:: Send, {{}
CapsLock & j:: Send, {(}
CapsLock & m:: Send, {[}
CapsLock & i:: Send, {}}
CapsLock & k:: Send, {)}
CapsLock & ,:: Send, {]}
CapsLock & o:: Send, {<}
CapsLock & l:: Send, {\}
CapsLock & .:: Send, {_}
CapsLock & p:: Send, {>}
CapsLock & `;:: Send, {/}
CapsLock & /:: Send, {|}
;; Capslock burden handling: {{{
;; THOSE BELLOW ARE LIKELY TO HAPPEN AND LEAVE CAPSLOCK MODE ON!
;; Just disable CapsLock with Control Panel - It will still be received by AutoHotkey!
;; Or make those as harmless as possible
; *CapsLock:: SetCapsLockState, Off
; CapsLock & LAlt:: SetCapsLockState, Off
; CapsLock & LWin:: SetCapsLockState, Off
; CapsLock & RAlt:: SetCapsLockState, Off
; CapsLock & RWin:: SetCapsLockState, Off ; has no effect, why?
; CapsLock & Space:: Send, {Space}
; CapsLock & Return:: SetCapsLockState, Off
; CapsLock & ':: Send, {'}{Space}
; CapsLock & [:: Send, {[}
; CapsLock & \:: Send, {\}
; CapsLock & ]:: Send, {]}
;; }}}
; }}}
; SymbolPad -- ~ {{{
` & y:: Send, +{``}{Space}
` & h:: Send, {^}{Space}
` & n::
` & u:: Send, {`%}
` & j:: Send, {Tab}
` & m::
` & i:: Send, {#}
` & k:: Send, {Esc}
` & ,::
` & o:: Send, {&}
` & l:: Send, {$}
` & .::
` & p:: Send, {@}
` & `;:: Send, {!}
` & /::
; }}}
; SCAN CODE LOOKUP {{{
; 0 ---- 7 8 ---- F
; sc0 - scF = Esc 1234567 890-= Bksp Tab
; sc10 - sc1F = qwertyui op[] Enter Ctrl as
; sc20 - sc2F = dfghjkl; '`\zxcv
; sc30 - sc3F = bnm,./* Shift Num* Alt Space F1-F5
; sc40 - sc4F = F6...F10 NumLock ScrolLock Home Up PageUp Num- Left Num= Num+ End
; sc50 - sc5F = Down PDown Insrt Del PrtScr <unk> <unk> F11 F12 Num= <unk...>
; sc60 - sc69 = <UNKNOWN> ... <UNKNOWN>
;; {{{
; ` & Tab::
; Send, {sc10}
; Send, {sc11}
; Send, {sc12}
; Send, {sc13}
; Send, {sc14}
; Send, {sc15}
; Send, {sc16}
; Send, {sc17}
; Send, {sc18}
; Send, {sc19}
; Send, {sc1A}
; Send, {sc1B}
; Send, {sc1C}
; Send, {sc1D}
; Send, {sc1E}
; Send, {sc1F}
; return
;; }}}
; }}}