MiniMacro
요약
마우스·키보드 반복 작업을 대신 해주는 Windows 미니 툴. 클릭·이동·드래그·스크롤·키 입력·텍스트·대기 단계를 목록으로 직접 짜거나, 실제 조작을 녹화해 단계로 변환한 뒤 반복 횟수를 정해 재생한다. 화면은 한국어와 영어를 오갈 수 있다.
작업과 작업 사이 시간은 대기 단계로 조절하고, 반복 사이 대기와 시작 전 대기(대상 창으로 전환할 시간)도 따로 둔다. 시나리오는 JSON 파일로 저장해 두고 반복 작업별로 불러 쓴다. Python과 tkinter(파이썬에 기본으로 들어 있는 GUI 툴킷 — 창·버튼 같은 화면 요소를 만든다)로 만든 단일 파일 프로그램이다.
제작 동기
같은 자리를 클릭하고 같은 입력을 되풀이하는 단순 반복 작업에 손이 매번 묶였다. 시중에 매크로 툴은 많지만 필요한 건 소수 기능이라, 내 작업 흐름에 맞는 미니 툴을 직접 만들어 쓰기로 했다. hover로 열리는 메뉴, 배율이 다른 듀얼 모니터처럼 실제 내 환경에서 걸리는 문제를 직접 풀 수 있다는 것도 직접 만드는 이유였다.
목표 설정
- 작업 기간: 2026.08.15. ~ 09.06. (첫날 하루 만에 동작했고, 쓰면서 다듬었다)
- 단계 목록 직접 편집과 녹화 후 재생을 둘 다 지원
- 작업과 작업 사이 소요 시간을 단계 단위로 조절
- 자동 입력이 폭주해도 멈출 수 있는 비상 정지
- hover 메뉴·듀얼 모니터 같은 실사용 환경에서 실제로 동작
주요 작업
- 단계 편집기 — 마우스·키보드·대기 세 탭. 클릭·이동·드래그·스크롤이 좌표 입력을 함께 써서 동작을 바꿔도 찍어 둔 좌표가 남는다. F8·F7로 화면에서 좌표를 찍는다 ✅
- 녹화 — 화면 전체의 조작을 기록해 단계로 바꾼다. 끌기와 클릭을 거리로 가르고, 연속 클릭은 더블클릭으로, 이어진 휠은 한 단계로, 벌어진 간격은 대기 단계로 판정한다. 클릭은 이동+클릭 두 단계로 나눠 뒤에 손보기 쉽게 했다 ✅
- 키 입력 — 「키 누르기」를 누르고 원하는 키를 실제로 누르면 조합까지 그대로 채워진다 ✅
- 재생 — 반복 횟수·반복 사이 쉬기·시작 전 여유. 처음부터와 선택한 단계부터 중 고르고, 시작점은 첫 회차에만 적용된다 ✅
- 안전장치 — ESC나 화면 왼쪽 위 모서리로 즉시 중지. 돌아가는 동안에는 편집과 설정을 잠근다 ✅
- 진행 표시 — 상태줄·창 제목과, 화면 위에 떠 있는 작은 막대. 재생·녹화 중에는 본 창을 내리므로 이 막대가 진행 상황을 대신 보여준다 ✅
- hover 메뉴 대응 — 클릭 없는 이동 단계 + 커서 순간이동 ✅
- 듀얼 모니터 좌표 — Per-Monitor DPI 인식과 물리 픽셀 좌표계 통일 ✅
- 화면 개편 — 시안을 잡아 두 칸 구조로 다시 짰다. 강조색은 메트로놈과 같은 값으로 맞췄다 ✅
- 한국어·영어 전환 — 화면 문구 전부가 함께 바뀌고, 언어에 따라 폰트도 바뀐다 ✅
- 시나리오 JSON 저장/불러오기 ✅
- exe로 묶기 — 파이썬 없이 더블클릭으로 실행 ✅
결과
하루 만에 만들어 바로 실사용을 시작했고, 쓰면서 걸리는 것을 그때그때 고쳤다. 처음엔 클릭·이동·키·대기뿐이었는데 실제 작업에 끌기와 스크롤이 섞여 있어 단계를 늘렸고, 화면도 한 번 통째로 다시 짰다.
반복 작업을 시나리오 파일로 저장해 두고 필요할 때 불러 재생하는 흐름이 자리 잡았다. 지금은 파이썬 없이 도는 하나짜리 실행 파일로 묶어 쓴다.
배포는 하지 않고 내 PC에만 둔다. 화면 전체의 입력을 읽고 쓰는 도구라 받는 쪽에서 안전한지 확인할 방법이 마땅치 않고, 그 부담을 지우면서까지 남에게 건넬 이유가 없었다.
