전역 이벤트
전역 이벤트는 어떤 프로그램이 맨 앞에 있든 무언가가 일어나면 스크립트를 실행합니다. 전역 이벤트는 13가지이며 항상 같은 13가지입니다. 각 이벤트를 설정하고 켜거나 끌 뿐, 추가하거나 제거하지는 않습니다. 작업과 달리 전역 이벤트는 앱 그룹에 속하지 않습니다.
고급 모드. 전역 이벤트 페이지는 탐색 영역의 엔진 섹션에 있으며, 구성 창은 이 섹션을 고급 모드에서만 표시합니다.
이벤트 설정
| 이벤트 | 스크립트 | 실행 시점 |
|---|---|---|
| 가운데 단추 | 단계, 1단계 | 누름 및 놓음 |
| 오른쪽 단추 | 설정된 내용 없음 | 누름만 |
| 휠 — 세로 | 설정된 내용 없음 | 틱마다 |
- 이벤트 행을 찾습니다. 스위치 ①을 켜서 이벤트를 사용하도록 설정합니다.
- 설정 → 단추(이미 스크립트가 있으면 스크립트 편집 → 단추) ②를 클릭합니다. 행이 제자리에서 열리며, 한 번에 행 하나만 열립니다.
- 마우스 단추나 휠이면 입력 가로채기 ③ 여부를 선택합니다(입력 가로채기).
- 실행 방식 ④에서 단계 또는 스크립트(일반 설정에서 AutoHotkey가 켜져 있으면 AutoHotkey도)를 선택하고, 할 일을 작성합니다(작업).
- 완료를 클릭한 다음 저장합니다.
행의 가운데 열은 스크립트를 요약합니다(예: 단계, 3단계 또는 설정된 내용 없음). 켜져 있지만 아무것도 설정되지 않은 이벤트는 그 요약이 경고로 표시되며, 아무것도 실행하지 않습니다. 탐색 배지는 사용 중인 이벤트 수를 셉니다.
13가지 이벤트
| 이벤트 | 카드 | 발생 시점 |
|---|---|---|
| 왼쪽 단추, 가운데 단추, 오른쪽 단추, 측면 단추 1, 측면 단추 2 | 마우스 및 휠 | 단추를 누를 때와 놓을 때 각각(누름 및 놓음). 그리기 단추는 누를 때만(누름만). |
| 휠 — 세로 | 마우스 및 휠 | 휠 틱마다(틱마다). |
| 휠 — 가로 | 마우스 및 휠 | 틸트 휠이나 가로 스크롤의 틱마다(틱마다). |
| 그리기 단추를 놓음 | 제스처 결과 | 제스처를 시작한 그리기 단추를 놓을 때(각 캡처 후). |
| 일치 항목 없음 | 제스처 결과 | 그린 제스처가 아무 작업도 실행하지 않았을 때(제스처가 끝난 후). |
| 구성 로드됨 | 시스템 및 수명 주기 | 엔진이 시작될 때, 그리고 저장하거나 구성 다시 로드를 할 때마다(시작, 저장, 다시 로드 시). |
| 엔진 종료 중 | 시스템 및 수명 주기 | 엔진이 종료될 때(시간 초과 시 확인 요청). |
| 하드웨어 추가 또는 제거됨 | 시스템 및 수명 주기 | 장치를 연결하거나 제거할 때(실제 연결만). |
| 포그라운드 창 변경됨 | 시스템 및 수명 주기 | 다른 창이 맨 앞으로 올 때마다(사용 안 함 상태에서는 건너뜀). |
스크립트는 Context 기본 제공 함수로 무엇이 자신을 실행했는지 알 수 있습니다. 예를 들어 마우스 단추를
눌렀는지 놓았는지, 어떤 단추와 창이 관련되었는지 알 수 있습니다(기본 제공 함수).
마우스 단추
마우스 단추 이벤트는 포인터가 어디에 있든 그 단추를 누를 때마다 발생합니다. 무시되는 프로그램 위, 제외 영역 안, 제스처 도중에도 발생합니다(제스처 도중에 누른 단추는 제스처 한정자로도 계산됩니다). Input.Observer 자체의 스크립트가 보내는 클릭에 대해서는 절대 발생하지 않습니다.
그리기 단추이기도 한 단추(일반, 그리기 단추)는 단추를 누를 때만 이벤트가 발생합니다. 행에 누름만 표시와 함께 그 단추가 제스처를 그리는 데 사용된다는 안내가 나타납니다. 누름은 여전히 평소처럼 제스처를 시작합니다. 놓는 것에 반응하려면 그리기 단추를 놓음을 사용하십시오.
Windows에서 마우스 단추를 바꾸었으면 단추 이름은 Windows를 따릅니다. 오른쪽 단추는 상황에 맞는 메뉴를 여는 단추입니다.
휠
휠 이벤트는 포인터 아래의 프로그램과 관계없이 틱마다 발생하며, 제스처 도중에도 발생합니다. 그 휠을 포함하는 제외 영역 안에서는 발생하지 않습니다.
한 휠 이벤트의 스크립트는 순서대로 하나씩 실행됩니다. 스크립트가 끝나는 것보다 틱이 더 빨리 들어오면 최대 8개가 차례를 기다리며, 그 이상은 버려집니다.
틱 사이의 최소 간격(고급 모드, 열린 행 안, 기본값 0)은 스크립트를 실행하는 두 틱 사이의 가장 짧은 시간을 정합니다. 0이면 틱마다 실행합니다. 간격이 있으면 마지막으로 받아들인 틱 이후 그보다 빨리 들어온 틱은 대기열에 넣지 않고 버립니다. 세로 휠과 가로 휠은 각각 자체 간격을 가집니다. 같은 두 값이 일반 페이지에 휠 제한으로도 표시되며, 한쪽을 바꾸면 다른 쪽도 바뀝니다.
입력 가로채기
다섯 개의 마우스 단추와 두 개의 휠은 입력 가로채기를 할 수 있습니다. 클릭이나 스크롤이 어떤 프로그램에도 전달되지 않으며, 대신 일어나야 할 일은 스크립트가 책임집니다. 가로챈 누름은 그 놓기도 가로챕니다.
- 그리기 단추는 누름이 항상 제스처 캡처에 도달해야 하므로 가로챌 수 없습니다. 스위치를 사용할 수 없으며 그 이유가 표시됩니다. 구성 파일에서 이를 켜더라도 엔진이 로드할 때 끄며, 여기서도 끌 때까지 행에 경고가 표시됩니다.
- 스크립트 없이 가로채는 것도 허용되지만, 행에 경고가 표시됩니다. 클릭이나 스크롤이 그냥 사라집니다.
- 최소 간격이 있는 휠을 가로채면, 간격 안의 틱은 가로채지는 동시에 버려집니다. 스크롤되지도 않고 스크립트도 실행하지 않습니다. 행에서 이에 대해서도 경고합니다.
제스처 결과
그리기 단추를 놓음은 무슨 일이 있었든, 즉 제스처가 작업을 실행했든, 아무것과도 일치하지 않았든, 단순 클릭으로 판명되어 전달되었든, 학습용으로 그렸든, 누름으로 제스처를 시작한 그리기 단추를 놓을 때 발생합니다. 누름이 제스처를 시작하지 않은 경우(무시되는 프로그램, 제외 영역, 무시할 한정자 키를 누른 경우)나, 놓기 전에 이미 제스처가 끝난 경우(취소 시간 제한)에는 발생하지 않습니다.
일치 항목 없음은 제스처를 그렸고(최소 제스처 이동 거리 이상 움직임), 창의 앱 그룹에서도 전역에서도 어떤 작업도 그 제스처와 일치하지 않았을 때 발생합니다. 단순 클릭이나 제스처를 학습하는 동안에는 발생하지 않습니다.
시스템 및 수명 주기 이벤트
- 구성 로드됨은 엔진이 시작될 때 실행됩니다. 시작 및 종료 대기 시간(스크립트 페이지, 기본값 10초)이 지나도 실행 중이면 계속 기다릴지 묻습니다. 구성 창에서 저장할 때와 구성 다시 로드를 할 때마다, 아직 실행 중인 스크립트가 중지된 뒤에 다시 실행됩니다. 이때는 시간 제한도 확인 요청도 없으며, 엔진이 꺼져 있는 동안에는 건너뜁니다.
- 엔진 종료 중은 엔진이 종료될 때 실행되며, 다시 로드할 때는 실행되지 않습니다. 시작 및 종료 대기 시간이 지나도 실행 중이면 계속 기다릴지, 엔진을 종료할지 묻습니다. 묻지 않고 중단되는 일은 없습니다.
- 하드웨어 추가 또는 제거됨은 장치가 실제로 연결되거나 제거될 때 발생하며, 그 사이에 Windows가 보내는 일상적인 장치 알림에는 발생하지 않습니다. 엔진이 꺼져 있는 동안에는 건너뜁니다.
- 포그라운드 창 변경됨은 다른 창이 맨 앞으로 올 때마다 발생합니다. 엔진이 꺼져 있는 동안에는 건너뜁니다.
창(예: 메시지 상자)을 표시하는 포그라운드 창 변경됨 스크립트는 그 창을 맨 앞으로 가져오므로 이벤트가 다시, 또다시 발생합니다. 이런 일이 생기면 모든 작업 중지 단축키(일반 페이지)를 누르십시오. 모든 스크립트가 중지되고, 트레이 메뉴에서 구성 다시 로드를 선택할 때까지 입력 처리와 이 이벤트가 꺼집니다.
전역 이벤트가 발생하지 않는 경우
- 트레이에서 엔진을 끈 동안, 또는 포커스가 있는 동안 모두 일시 중지가 설정된 창에 포커스가 있어 일시 중지된 동안(무시 그룹). 구성 로드됨은 시작할 때 여전히 실행됩니다.
- 구성된 스크립트가 하나도 실행되지 않는 안전 모드에서.
- Input.Observer 자체의 스크립트가 보낸 입력에 대해서.
무시 그룹, 앱 그룹, 프로필은 전역 이벤트에 영향을 주지 않습니다.