2017-01-08 6 views
-4

AutoHotkey를 사용하여 스크립트 파일을 편집하기위한 바로 가기를 만들 수 있습니까?편집을 위해 스크립트 파일을 여는 더 빠른 방법

Context + E를 누르거나 마우스 오른쪽 버튼으로 클릭하고 편집 할 수 있음을 알고 있습니다. 빠른 것은 Ctrl + Shft를 누르고 파일을 두 번 클릭하는 것입니다. 이것에 대한 우선 순위는 Alt 키를 누른 상태에서 바로 가기로 파일을 두 번 클릭하여 [등록 정보] 대화 상자로 바로 이동할 수있는 방법입니다. Ctrl + Shft를 누른 상태에서 폴더를 두 번 클릭하면 새 창에서 열립니다.

분명히 탐색기 창 (하지 바탕 화면)에 현재 포커스 파일을 얻을 수 AHK, BAT, VBS, REG 파일 등

답변

2

사용 Shell.Application.Windows 같은 언어 파일을 갈 것입니다.

; Alt + single click opens the file in notepad 
~!LButton up::openFilesInEditor() 

openFilesInEditor() { 
    static shellApp := comObjCreate("Shell.Application") 

    mouseGetPos x,y, clickedWindow 
    winGetClass clickedWindowClass, ahk_id %clickedWindow% 
    if (clickedWindowClass != "CabinetWClass") 
     return 

    try { 
     shellWindows := shellApp.Windows() 
     loop % shellWindows.count 
     { 
      win := shellWindows.Item(A_Index-1) 
      if (win.HWND = clickedWindow) { 
       focusedFile := win.Document.FocusedItem.Path 
       run notepad "%focusedFile%" 
       return 
      } 
     } 
    } catch e { 
     ;traytip,,Error %e% 
    } 
} 

코드는 Windows 7에서 테스트되었습니다 run *Edit

및 10

+0

답장을 보내 주셔서 감사합니다. 나는 일할 수 없다. 헤더와 불일치 할 수 있을까? 나는'#NoEnv; 성능 및 향후 AutoHotkey 릴리즈와의 호환성을 위해 권장됩니다. # 경고; 일반적인 오류를 감지하는 데 도움이되는 경고를 활성화하십시오. SendMode 입력; 탁월한 속도와 안정성으로 인해 새 스크립트에 권장됩니다. SetWorkingDir % A_ScriptDir %; 일관된 시작 디렉토리를 보장합니다. ' – Nathan

+0

@Nathan 데스크탑에서 파일을 열려고합니까? 코드는 그것을 설명하지 않습니다. @wOxxOm 함수 내에서 윈도우 클래스를 검사하는 대신 핫키 앞에'#IfWinActive ahk_exe explorer.exe'를 넣을 수 있습니다. 이렇게하면 스크립트가 데스크톱에서 작동하게되며 (적어도 Win7에서는) 필요하지 않은 경우 함수를 호출하지 않아도됩니다. 또한 창을 찾으면 루핑을 계속할 이유가 없습니다. – MCL

+0

@MCL, 1) 데스크톱이'Shell.Application.Windows'에 올라 있지 않아 도움이되지 않을 것입니다. 2) 현재 스크립트는 비활성 탐색기 윈도우에서 alt-clicking을 허용하므로 ifwinactive가 도움이되지 않습니다. 3) 감사합니다. '일단 창을 찾으면 – wOxxOm

-1

Ctrl 키 + 더블 클릭하거나 Ctrl 키 + run notepad 교체 상황에 맞는 메뉴에서 Edit을 사용하려면을 입력하면 VBS 파일의 경우 오른쪽 클릭 메뉴에서 두 번째 동사가 편집됩니다.

+0

정상적인 Windows 환경에서는 작동하지 않습니다. – Nathan