2017년 11월 21일 화요일

autohotkey 설정 (like hhkb)

;; 우측 alt 키를 KeyTweak 프로그램을 이용해 MacKeyPad (NumpadClear) 버튼으로 변경

;;;; mouse ;;;;

SetKeyDelay, -1
SetMouseDelay, -1
#UseHook

초기속도=8
가속도=0.3
한계속도=50
현재속도:=초기속도


NumpadClear & h::
NumpadClear & j::
NumpadClear & k::
NumpadClear & l::
위아래값=0
좌우값=0
if (현재속도<=한계속도)
  현재속도+=가속도

if GetKeyState("j", "P") and GetKeyState("LAlt", "P")
  위아래값 := 현재속도
else if GetKeyState("j", "P") and !GetKeyState("LAlt", "P")
  Send, {Blind}{Down}

if GetKeyState("k", "P") and GetKeyState("LAlt", "P")
  위아래값 := -현재속도
else if GetKeyState("k", "P") and !GetKeyState("LAlt", "P")
  Send, {Blind}{Up}

if GetKeyState("h", "P") and GetKeyState("LAlt", "P")
  좌우값 := -현재속도
else if GetKeyState("h", "P") and !GetKeyState("LAlt", "P")
  Send, {Blind}{Left}


if GetKeyState("l", "P") and GetKeyState("LAlt", "P")
  좌우값 := 현재속도
else if GetKeyState("l", "P") and !GetKeyState("LAlt", "P")
  Send, {Blind}{Right}

MouseMove, %좌우값%, %위아래값%,0,R
if (위아래값) OR (좌우값)
  {
  sleep 10
  goto NumpadClear & j
  }
현재속도:=초기속도
return



NumpadClear & Space::
if GetKeyState("LAlt", "P") {
SendEvent {Blind}{RButton down}
KeyWait RAlt
SendEvent {Blind}{RButton up}
} else {
SendEvent {Blind}{LButton down}
KeyWait RAlt
SendEvent {Blind}{LButton up}
}
return

;;;;;;;;;;;;;;;;


;; left (vi style)
;; NumpadClear & h::
;;    Send, {Blind}{Left}
;; Return

;; down (vi style)
;; NumpadClear & j::
;;      Send, {Blind}{Down}
;; Return
 
;; up (vi style)
;; NumpadClear & k::
;;      Send, {Blind}{Up}
;; Return

;; right (vi style)
;; NumpadClear & l::
;;      Send, {Blind}{Right}
;; Return

;; windows lock (win key + L) 비활성화
SetDisableLockWorkstationRegKeyValue( 1 )
return

;; win + l - block
;; regedit HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System // key = DisableLockWorkstation / value dword = 1
;; #l::
;;   MsgBox, Win-L was pressed! ; Arbitrary code here
;; return

;; 우측 windows key + lock 만 기능 활성화
>#l::
  ; RWin-L
  ; Temporary enable locking
  SetDisableLockWorkstationRegKeyValue( 0 )
  sleep, 100
  ; Lock
  DllCall( "User32\LockWorkStation" )
  sleep, 100
  ; Disable locking again
  SetDisableLockWorkstationRegKeyValue( 1 )
return

;; 좌측 win key + 좌측 alt + L : windows lock
<#<!l::
  ; LWin-LAlt-L
  ; Temporary enable locking
  SetDisableLockWorkstationRegKeyValue( 0 )
  sleep, 100
  ; Lock
  DllCall( "User32\LockWorkStation" )
  sleep, 100
  ; Disable locking again
  SetDisableLockWorkstationRegKeyValue( 1 )
return

OnExitSub:
  ; Enable LockWorkStation, because this script is ending (so other applications aren't further disturbed)
  SetDisableLockWorkstationRegKeyValue( 0 )
  ExitApp
return

SetDisableLockWorkstationRegKeyValue( value )
  {
  RegWrite, REG_DWORD, HKEY_CURRENT_USER, Software\Microsoft\Windows\CurrentVersion\Policies\System, DisableLockWorkstation, %value%
  }

// home key remap : 우측alt + u
NumpadClear & u::
     Send, {Blind}{Home}
Return

// end key remap : RAlt + i
NumpadClear & i::
     Send, {Blind}{end}
Return

// pagedown : RAlt + m
NumpadClear & m::
     Send, {Blind}{pgdn}
Return

// Pageup : RAlt +,
NumpadClear & ,::
     Send, {Blind}{pgup}
Return

;; 한영 : ctrl + space
^space::Send, {vk15sc138}

;; capslock : RAlt + tab
NumpadClear & tab::
     Send, {Blind}{capslock}
Return

;; esc : RAlt + `
NumpadClear & `::
     Send, {Blind}{esc}
Return

;; f1 : RAlt + 1
NumpadClear & 1::
     Send, {Blind}{f1}
Return

NumpadClear & 2::
     Send, {Blind}{f2}
Return

NumpadClear & 3::
     Send, {Blind}{f3}
Return

NumpadClear & 4::
     Send, {Blind}{f4}
Return

NumpadClear & 5::
     Send, {Blind}{f5}
Return

NumpadClear & 6::
     Send, {Blind}{f6}
Return

NumpadClear & 7::
     Send, {Blind}{f7}
Return

NumpadClear & 8::
     Send, {Blind}{f8}
Return

NumpadClear & 9::
     Send, {Blind}{f9}
Return

NumpadClear & 0::
     Send, {Blind}{f10}
Return

NumpadClear & -::
     Send, {Blind}{f11}
Return

NumpadClear & =::
     Send, {Blind}{f12}
Return


NumpadClear & backspace::
 GetKeyState, shiftState, LShift
 GetKeyState, ctrlState, LControl
 if shiftState = D
  if ctrlState = D
   Send, +^{esc}
  else
        Send, +{del}
 else
      Send, {Blind}{del}
Return

NumpadClear & \::
 Send, {Blind}{Insert}
Return

LAlt & backspace::
 Send, {del}
Return

NumpadClear & a::
     Send, {Blind}^a
Return

NumpadClear & c::
     Send, {Blind}^c
Return

NumpadClear & d::
     Send, {Blind}^d
Return

NumpadClear & e::
     Send, {Blind}^e
Return

NumpadClear & f::
     Send, {Blind}^f
Return

NumpadClear & o::
     Send, {Blind}^o
Return

NumpadClear & r::
     Send, {Blind}^r
Return

NumpadClear & t::
     Send, {Blind}^t
Return

NumpadClear & x::
     Send, {Blind}^x
Return

NumpadClear & v::
     Send, {Blind}^v
Return

NumpadClear & w::
     Send, {Blind}^w
Return

NumpadClear & s::
     Send, {Blind}^s
Return

NumpadClear & z::
     Send, {Blind}^z
Return

NumpadClear & enter::
     Send, {AppsKey}
Return

댓글 없음:

댓글 쓰기

Intelij 설정 및 plugin

1. preferences... (settings...) Appearance & Behavior > Appearance - Window Options        ✓   Show memory indicator Editor &...