작동 방식
두 개의 프로그램
Input.Observer는 함께 동작하는 두 개의 프로그램입니다.
- 엔진은 백그라운드에서 실행되며, 작업 표시줄의 알림 영역에 아이콘이 있습니다. 엔진은 마우스와 키보드를 지켜보고, 제스처 궤적과 힌트를 그리고, 제스처, 단축키, 입력한 코드를 인식하고, 작업을 실행합니다. 진단 콘솔도 엔진에 있습니다. 엔진은 단독으로 동작하며, 다른 프로그램이 실행되고 있을 필요가 없습니다.
- 구성 창은 엔진이 하는 일을 바꾸는 곳입니다. 트레이 아이콘에서 열고 언제든 닫을 수 있는 별도의 프로그램이며, 닫아도 엔진에는 아무 변화가 없습니다. 구성 창은 엔진이 실행 중일 때만 실행할 수 있습니다. 단독으로 시작하면 Input.Observer가 실행 중이 아니라고 알리고 닫힙니다. 엔진이 종료되면 구성 창도 닫힙니다.
플러그 인은 엔진이 시작하고 중지하는 또 다른 별도의 프로그램입니다. 함께 제공되는 Styles 플러그 인은 궤적, 힌트, 메시지에 스타일을 선택하면 애니메이션 궤적과 테마가 적용된 힌트와 메시지를 그리고 소리를 재생합니다. 플러그 인을 참조하십시오.
엔진은 구성한 항목에 필요할 때만 마우스를 지켜봅니다. 그리기 단추가 하나 이상 있거나, 전역 마우스 또는 휠 이벤트가 있거나, 텍스트 확장을 사용하는 경우입니다. 트레이에서 엔진을 일시 중지한 동안에는 마우스도 키보드도 지켜보지 않습니다.
설정이 보관되는 위치
- 구성 파일. 제스처, 작업, 앱 그룹, 설정 등 설정한 모든 내용은 로밍 애플리케이션 데이터의
Input.Observer폴더(%APPDATA%\Input.Observer)에 있는config.toml파일 하나에 들어 있습니다. 엔진의 프로그램 파일과 같은 폴더에config.toml이 있으면 그 파일이 대신 사용되므로, 가지고 다니는 폴더에서 Input.Observer를 실행할 수 있습니다. 트레이 메뉴의 구성 폴더 열기는 사용 중인 폴더를 엽니다. - 파일을 쓰는 주체. 엔진은 시작할 때 파일을 읽습니다. 구성 창은 엔진에서 설정을 받아 오고, 변경 내용을 적용하면 엔진에 다시 넘겨줍니다. 엔진이 파일을 쓰고 변경 내용을 즉시 사용하기 시작합니다. 파일을 직접 편집했다면 트레이 메뉴에서 구성 다시 로드를 선택해야 편집 내용이 사용됩니다.
- 같은 위치에 라이선스, 콘솔 설정, 활성 프로필, 매크로 기록, 그리고 파일의 이전 버전을 최대 10개까지 보관하는 Backup 폴더가 있습니다.
- 구성 창 자체의 기본 설정(크기와 위치, 간단히 모드 또는 고급 모드, 마지막으로 연 페이지, 샌드박스
레이아웃)은 이 컴퓨터에만
%LOCALAPPDATA%\Input.Observer에 보관됩니다. 테마와 언어는 엔진도 사용하므로 구성 파일에 있습니다.
구성 파일은 암호로 보호할 수 있습니다. 구성 파일과 보안을 참조하십시오.
단추를 누른 순간부터 작업이 실행될 때까지
기본 설정으로 제스처를 그리면 다음과 같은 일이 일어납니다.
-
마우스 오른쪽 단추를 누릅니다. 엔진은 다른 무엇보다 먼저, 즉시 이 누름이 제스처가 될 수 있는지 판단합니다. 다음 경우에는 제스처가 아니며, 누름은 지연 없이 그대로 프로그램에 전달됩니다.
- 무시할 한정자 키(기본값은 Ctrl)를 누르고 있는 경우
- 포인터가 제외 영역 안에 있는 경우
- 포인터 아래의 창이 무시 그룹에 속하는 경우
- 창의 앱 그룹과 전역 모두 그 위치에서 제공할 제스처가 없는 경우
판단 기준이 되는 창은 포인터 아래의 최상위 창입니다. 무시 그룹을 먼저 확인한 다음, 앱 그룹을 목록 순서대로 확인합니다. 어느 그룹도 차지하지 않은 창은 전역에 속합니다. 범위 및 대체 규칙을 참조하십시오.
-
그리는 동안 누름이 보류됩니다. 포인터가 5픽셀 움직이면 누름은 제스처가 되고 궤적이 나타납니다. 그 전에 단추를 놓으면 프로그램은 일반 클릭을 받습니다. 포인터가 0.5초 동안 움직이지 않으면 제스처가 취소되고 프로그램이 누름을 받습니다. 제스처는 최대 10초까지 지속될 수 있습니다. 그리는 동안 누르는 키와 다른 마우스 단추는 프로그램이 아니라 제스처로 갑니다. 제스처 그리기를 참조하십시오.
-
그리는 동안 획을 비교합니다. 창의 앱 그룹과 전역이 사용하는 제스처와 비교해 점수를 매깁니다. 힌트에는 지금까지 일치하는 항목이 표시됩니다. 획이 일치하는 방식을 참조하십시오.
-
단추를 놓으면 작업이 선택됩니다. 점수가 가장 높은 제스처는 그 점수가 일치 임계값(기본값 75)에 도달할 때만 인정됩니다. 앱 그룹의 작업 중 제스처, 그리기 단추, 누르고 있는 한정자 키, 영역, 프로필이 모두 맞는 트리거를 가진 목록의 첫 번째 작업이 선택됩니다. 앱 그룹에 그런 작업이 없으면, 그룹의 전역으로 대체가 꺼져 있지 않은 한 전역의 작업을 시도합니다.
-
작업이 실행됩니다. 그리기를 시작한 창이 맨 앞으로 오고, 그다음 이 작업 전에 실행되도록 설정된 작업, 작업 자체, 그 후에 실행되도록 설정된 작업이 차례로 실행됩니다. 이전 및 이후 작업을 참조하십시오.
아무것도 일치하지 않으면 아무것도 실행되지 않고, 누름도 프로그램에 전달되지 않습니다. 이런 경우 일치 항목 없음 전역 이벤트로 작업을 실행할 수 있습니다. 전역 이벤트를 참조하십시오.
단축키와 텍스트 확장도 같은 앱 그룹 규칙을 따르지만, 판단 기준이 되는 창은 포인터 아래의 창이 아니라 맨 앞의 창입니다. 단축키와 텍스트 확장을 참조하십시오.
간단히 모드와 고급 모드
구성 창에는 두 가지 모드가 있습니다. 간단히 모드는 대부분의 사람에게 필요한 것을 보여 줍니다. 고급 모드는 한정자 키 타이밍, 영역, 프로필, 단계 뒤의 코드, 전역 이벤트, 제외 영역, 플러그 인, 콘솔 등 더 세밀하게 제어할 수 있는 페이지와 설정을 추가합니다. 모드는 창에 표시되는 내용만 바꿉니다. 모든 설정은 두 모드에서 똑같이 동작하며, 고급 모드에서 바꾼 설정은 간단히 모드에서도 계속 적용됩니다. 구성 창을 참조하십시오.