문맥 감지 도움말 -- by Rajat
이 스크립트는 Ctrl+2 (선택에 따라 다른 핫키)를 누르면 선택된 오토핫키 명령어나 키워드에 대한 도움말을 보여줍니다. 아무것도 선택하지 않으면 명령어 이름을 현재 줄의 처음으로부터 추출합니다.
이 스크립트 내려받기 | 다른 샘플 스크립트 | 홈으로
; 아래의 핫키는 (ControlGet이 대부분의 고급 편집기와 작동하지 않기 때문에) ; 가능하면 많은 에디터와의 호환성을 위해 클립보드를 사용합니다. ; 원래 클립보드 내용을 나중에 복구하지만, 평범한 텍스트로 복구합니다. ; 그래도 없는 것보다는 낫습니다. $^2:: ; 다음 값들은 이 핫키의 쓰레드가 존재하는 동안에만 효과가 있습니다. ; 그러므로, 원래 값으로 다시 복구할 필요가 없습니다 ; 왜냐하면 쓰레드가 끝나면 자동으로 복구되기 때문입니다: SetWinDelay 10 SetKeyDelay 0 AutoTrim, On if A_OSType = WIN32_WINDOWS ; Windows 9x Sleep, 500 ; 사용자에게 키를 뗄 시간을 줍니다. C_ClipboardPrev = %clipboard% clipboard = ; 있다면 강조된 단어를 사용합니다. ; (어떤 경우 사용자는 명령어가 아닌 것을 의도적으로 강조할 수 있기 때문입니다): Send, ^c ClipWait, 0.1 if ErrorLevel <> 0 { ; 편집기는 커서 키를 다르게 취급하기 때문에 전체 줄을 얻습니다: Send, {home}+{end}^c ClipWait, 0.2 if ErrorLevel <> 0 ; 거의 없는 경우이므로 에러를 보고하지 않습니다. { clipboard = %C_ClipboardPrev% return } } C_Cmd = %clipboard% ; 이것으로 앞뒤의 탭과 & 스페이스가 제거됩니다. clipboard = %C_ClipboardPrev% ; 사용자를 위해 원래 클립보드를 복구합니다. Loop, parse, C_Cmd, %A_Space%`, ; 첫 번째 스페이스나 쉼표가 명령어의 끝입니다. { C_Cmd = %A_LoopField% break ; 즉, 한 번만 반복하면 됩니다. } IfWinNotExist, AutoHotkey Help { ; 오토핫키의 위치를 알아냅니다: RegRead, ahk_dir, HKEY_LOCAL_MACHINE, SOFTWARE\AutoHotkey, InstallDir if ErrorLevel ; 발견이 안 되면, 다른 위치에서 찾아봅니다. { if A_AhkPath SplitPath, A_AhkPath,, ahk_dir else IfExist ..\..\AutoHotkey.chm ahk_dir = ..\.. else IfExist %A_ProgramFiles%\AutoHotkey\AutoHotkey.chm ahk_dir = %A_ProgramFiles%\AutoHotkey else { MsgBox 오토핫키 폴더를 발견하지 못했습니다. return } } Run %ahk_dir%\AutoHotkey.chm WinWait AutoHotkey Help } ; 위에서 "마지막 발견" 창을 설정했고 그것을 아래에 사용합니다: WinActivate WinWaitActive StringReplace, C_Cmd, C_Cmd, #, {#} send, !n{home}+{end}%C_Cmd%{enter} return