Azimuth

키보드로 다루는 macOS 윈도우 매니저.

똑똑한 추론보다 예측 가능성.

Universal · macOS 14+ · .dmg

구형 Mac(macOS 10.13~13)이라면 이전 버전 받기 →

모든 버전과 릴리스 노트 →

애니메이션: 창 하나를 화면 기준인 Left 1/3과 Left 1/2로 놓은 뒤, 그 창 기준으로 아래 절반과 왼쪽 절반으로 줄이고, 되돌립니다.

하나의 수식키 레이어로 모든 것을.

9가지 명령, 단축키 34개. 씬도 없고 자동화도 없습니다. 오직 신뢰할 수 있는 윈도우 배치 문법만.

반분 & 튕기기

윈도우를 화면 반쪽에 스냅합니다. 같은 방향을 다시 누르면 인접 디스플레이로 던져 반대쪽 반분에 배치합니다.

삼등분 & 삼분의 이

좌/중/우 및 상/중/하 — 수평·수직 모두 지원. 축이 독립적이라 자유롭게 조합됩니다.

최대화 / 가운데 배치

최대화는 작업영역을 채웁니다(메뉴 바·Dock 제외). 여백 최대화는 사방에 균일한 여백을 남깁니다. 가운데 배치는 현재 크기를 유지한 채 중앙으로 이동합니다.

이동 (크기 유지)

윈도우를 자체 너비·높이만큼 한 단계씩 이동합니다. 작업영역 경계에서 멈추며 크기 변경이나 디스플레이 이동은 없습니다.

상대 축소

현재 윈도우 크기(화면 기준 아님)를 기준으로 고정 엣지 쪽으로 ½ 또는 ⅔로 줄입니다. 효과가 조합됩니다 — ⅔ 다음 ½는 ⅓.

다음 디스플레이로 이동

윈도우를 인접 모니터로 보내며 형태와 상대 위치를 유지합니다. 픽셀 크기를 그대로 유지하고, 들어가지 않을 때만 비율에 맞춰 축소합니다.

실행 취소

윈도우의 최근 프레임을 한 단계씩 되돌립니다 — 기본 5단계, 최대 20단계. 디스플레이 재구성 시 이력이 초기화됩니다.

멀티 모니터 인식

위치 인식 기반 인접 디스플레이 선택: 윈도우의 현재 위치에 공간적으로 정렬된 모니터로 이동합니다.

두 가지 프리셋

Standard(화살표 키)와 Vim(HJKL). 두 프리셋 모두 명령별로 완전히 커스터마이징 가능하며, 충돌 경고와 개별 Reset을 제공합니다.

자동 업데이트

공증·서명 검증된 새 릴리스를 확인해 스스로 업데이트(Sparkle)하거나, 원할 때 직접 확인.

명령 팔레트

⌃⌥P를 누르고 명령 이름 일부를 입력한 뒤 Return. 적용하기 전에 창이 갈 자리를 점선 윤곽으로 보여 줍니다.

메뉴바 & 치트시트

메뉴바 아이콘을 클릭하면 모든 명령이 타일로. ⌃⌥를 잠깐 누르고 있으면 어떤 키가 무엇을 하는지 보여 줍니다.

수식키 레이어

네 가지 수식키 조합이 각각 독립된 동작 그룹을 담당합니다. 레이어는 절대 겹치지 않습니다.

⌃⌥
반분(스냅/튕기기) · 최대화 · 가운데 · 실행 취소 · 삼등분 & 삼분의 이 (숫자 키)
⌃⌥⌘
이동 (현재 크기 유지)
⌃⌥⇧
상대 축소 — 화살표로 ½, M , . /로 ⅔
⌃⌥⌘⇧
다음 디스플레이로 이동
그룹 명령 단축키
반분 왼쪽
⌃⌥←
오른쪽
⌃⌥→
위
⌃⌥↑
아래
⌃⌥↓
최대화 · 실행 취소 · 가운데 최대화
⌃⌥↩
여백 최대화
⌃⌥⇧↩
실행 취소
⌃⌥⌫
가운데 배치
⌃⌥C
삼등분 (1/3) 수평: 왼쪽 · 가운데 · 오른쪽
⌃⌥123
수직: 위 · 가운데 · 아래
⌃⌥456
삼분의 이 (2/3) 수평: 왼쪽 · 오른쪽
⌃⌥78
수직: 위 · 아래
⌃⌥90
이동 (크기 유지) 좌 · 우 · 위 · 아래
⌃⌥⌘←→↑↓
상대 축소 (½) 좌 · 우 · 위 · 아래
⌃⌥⇧←→↑↓
상대 축소 (⅔) 좌 · 하 · 상 · 우
⌃⌥⇧M,./
다음 디스플레이로 이동 좌 · 우 · 위 · 아래
⌃⌥⌘⇧←→↑↓
Vim 프리셋: 방향 키와 실행 취소만 변경됩니다. 방향은 H (왼쪽) · L (오른쪽) · K (위) · J (아래)로 바뀌고, 실행 취소 → U. 최대화, 가운데, 숫자 단축키는 동일합니다.
전체 매뉴얼 보기 →

작동 방식

Azimuth의 공간 모델을 정의하는 세 가지 동작.

스냅 후 튕기기

첫 번째 누름에 왼쪽 반분으로 스냅됩니다. 같은 방향을 다시 누르면 인접 디스플레이로 던져져 반대쪽 반분에 배치됩니다.

이동은 경계에서 멈춤

윈도우는 자체 너비만큼 이동하며 작업영역 경계에서 멈춥니다. 크기 변경이나 디스플레이 전환 없이 정확히 이동합니다.

디스플레이 간 형태 보존

다음 디스플레이로 이동 시 상대 위치와 크기를 유지합니다. 들어가지 않으면 두 축을 같은 배율로 줄여 종횡비가 바뀌지 않습니다.

요구사항 & 설치

공증된 DMG를 다운로드하세요 — 빌드 도구 불필요.

요구사항

  • macOS 14 (Sonoma) 이상 — macOS 13에서는 1.7.7을, macOS 10.13~12에서는 레거시판을 쓰세요(둘 다 아래에 있습니다). 사용 중인 Mac에서 지원하는 최신 macOS를 쓰는 것이 좋습니다.
  • 손쉬운 사용 권한 — Azimuth는 손쉬운 사용 API로 다른 앱의 윈도우를 제어합니다. 첫 실행 시 시스템 설정에서 허용하세요(macOS 10.13~12: 시스템 환경설정).

설치

  1. 아래 링크에서 .dmg를 다운로드합니다.
  2. Azimuth를 응용 프로그램 폴더로 드래그합니다.
  3. 응용 프로그램에서 Azimuth를 실행합니다.
  4. 시스템 설정 → 개인 정보 보호 및 보안 → 손쉬운 사용에서 Azimuth를 활성화합니다(macOS 10.13~12: 시스템 환경설정 → 보안 및 개인 정보 보호 → 개인 정보 보호 → 손쉬운 사용).
macOS용 다운로드

다운로드 파일은 Developer ID 서명 + Apple 공증을 거쳐 Gatekeeper 경고 없이 바로 열립니다.

macOS 13인가요? macOS 13용 마지막 버전인 1.7.7을 받으세요. 이후 업데이트는 없습니다. macOS 10.13~12인가요? 레거시판(1.7.2 Legacy)을 받으세요. 핵심 기능은 같고 새 기능은 들어가지 않습니다. 어느 쪽이든 macOS를 업그레이드한 뒤 업데이트를 확인하면 그 macOS에서 돌 수 있는 가장 새 버전으로 옮겨 갑니다.

macOS 13용 1.7.7 다운로드 (.dmg) macOS 10.13~12용 다운로드 (.dmg)

특정 버전이 필요한가요? 모든 릴리스의 DMG와 릴리스 노트가 GitHub에 있습니다.

또는 Homebrew로:

brew install --cask ai-screams/tap/azimuth

자주 묻는 질문

Azimuth가 손쉬운 사용 권한이 필요한 이유는?

macOS 손쉬운 사용 API를 통해 다른 앱의 윈도우를 이동·크기 조정합니다. 모든 윈도우 매니저의 표준 방식입니다. Azimuth는 키로깅을 하지 않으며 Sparkle 업데이트 확인 외에는 네트워크 연결을 하지 않습니다.

구형 macOS에서도 작동하나요?

네, 이전 버전으로 쓸 수 있습니다. macOS 13(Ventura)에서는 요구사항 & 설치에 있는 1.7.7을 쓰세요. macOS 13용 마지막 버전이며 이후 업데이트는 없습니다. macOS 10.13(High Sierra)부터 12(Monterey)까지는 레거시판(1.7.2 Legacy)을 쓰세요. 핵심 기능(윈도우 명령, 단축키, 메뉴, 되돌리기)과 대부분의 설정은 같고, 새 기능은 들어가지 않습니다. 다만 로그인 시 실행은 macOS 13 이상, 실패 알림은 macOS 10.15 이상에서만 쓸 수 있습니다. 둘 다 스스로 업데이트되며, macOS를 업그레이드한 뒤 업데이트를 확인하면 그 macOS에서 돌 수 있는 가장 새 버전으로 옮겨 갑니다. 레거시판은 macOS 10.13.6 실제 Mac과 macOS 12·13 가상 머신에서 확인했고, 10.14~11은 실제 Mac에서 확인하지 않았습니다. 이 macOS들은 Apple 보안 업데이트가 끝났으므로, 가능하면 macOS를 업그레이드하는 것이 좋습니다.

단축키를 커스터마이징할 수 있나요?

가능합니다. 설정 → 단축키를 여세요. 명령별 바인딩 설정, 충돌 경고 확인, 명령 그룹 활성화·비활성화, Standard(화살표 키) 및 Vim(HJKL) 프리셋 전환이 모두 지원됩니다.

업데이트는 어떻게 제공되나요?

Sparkle를 통해 앱 내에서 자동 업데이트됩니다(공증 + EdDSA 서명 검증). 메뉴 바 아이콘에서 직접 확인도 가능합니다. Homebrew로 설치했더라도(brew install --cask ai-screams/tap/azimuth) 업데이트는 앱 안의 Sparkle이 처리하며, brew upgrade가 내장 업데이터와 충돌하지 않습니다.

Azimuth 후원하기

Azimuth는 유료 장벽도, 광고도, 텔레메트리도 없는 무료 오픈소스이고, 앞으로도 그렇습니다. 작업 흐름에 자리를 잡았다면 개발에 보탬을 주실 수 있어요. 서포터 라이선스는 감사의 표시일 뿐 — 모든 기능은 이미 누구에게나 무료라 잠기는 건 없습니다.