GridSnap: Công cụ chia cửa sổ macOS mã nguồn mở thay thế Divvy

Công nghệ15 tháng 10, 2026·5 phút đọc

GridSnap là ứng dụng mã nguồn mở dành cho macOS, cho phép người dùng nhấn phím tắt để hiện lưới, kéo chọn vùng và cửa sổ tự động khớp vào đó. Với tính năng đặt trước (preset), hoàn tác và hỗ trợ nhiều màn hình, đây là lựa chọn đáng chú ý cho người dùng Mac muốn quản lý cửa sổ hiệu quả mà không cần dùng phần mềm trả phí.

GridSnap: Công cụ chia cửa sổ macOS mã nguồn mở thay thế Divvy

GridSnap: Công cụ chia cửa sổ macOS mã nguồn mở thay thế Divvy

GridSnap là một ứng dụng mã nguồn mở dành cho macOS, đóng vai trò thay thế cho Divvy — công cụ quản lý cửa sổ quen thuộc mà nhiều người dùng Mac yêu thích. Chỉ cần nhấn phím tắt, một lưới sẽ hiện ra, bạn kéo chọn các ô mong muốn rồi thả tay, cửa sổ sẽ tự động khớp vào vị trí đó.

Điểm đáng chú ý là GridSnap hoàn toàn miễn phí, không thu thập dữ liệu, không yêu cầu tài khoản và không truy cập mạng — một lựa chọn hợp lý cho những ai quan tâm đến quyền riêng tư.

Tính năng chính

GridSnap cung cấp nhiều tính năng hữu ích cho việc sắp xếp cửa sổ:

  • Lưới với xem trước trực tiếp: cửa sổ di chuyển theo thao tác kéo của bạn và tự trở về nếu bạn hủy thao tác
  • Preset với phím tắt riêng: preset "Toàn màn hình" mặc định gắn với tổ hợp ⌃⌥F
  • Hoàn tác thao tác khớp cửa sổ gần nhất
  • Tùy chỉnh kích thước lưới và khoảng cách giữa các cửa sổ
  • Khớp cửa sổ đang focus hoặc cửa sổ dưới con trỏ
  • Hoạt động trên nhiều màn hình
  • Ứng dụng thanh menu, khởi động cùng hệ thống, không hiện trên Dock
  • Không truy cập mạng, không phân tích dữ liệu, không tài khoản

Minh họa GridSnap hoạt độngMinh họa GridSnap hoạt động

Yêu cầu hệ thống và cách cài đặt

GridSnap yêu cầu macOS 14 trở lên, hỗ trợ cả chip Apple Silicon lẫn Intel. Để biên dịch từ mã nguồn, bạn cần Xcode Command Line Tools với SDK macOS 26 — dự án không dùng Xcode project mà biên dịch trực tiếp bằng swiftc.

Cách cài đặt nhanh nhất là qua Homebrew:

brew install --cask konieczkow/tap/gridsnap

Hoặc bạn có thể tải file GridSnap-x.y.z.zip từ bản phát hành mới nhất, giải nén và kéo GridSnap vào thư mục Applications.

Lưu ý quan trọng: lần đầu khởi chạy, GridSnap sẽ yêu cầu quyền Accessibility để có thể di chuyển cửa sổ của ứng dụng khác. Bạn cần bật quyền này trong System Settings › Privacy & Security › Accessibility. GridSnap sẽ tự nhận quyền mới mà không cần khởi động lại.

Nếu muốn tự biên dịch, bạn có thể làm theo các bước sau:

git clone https://github.com/konieczkow/gridsnap.git
cd gridsnap
./build.sh install
open /Applications/GridSnap.app

Cách sử dụng

Các thao tác cơ bản trong GridSnap:

  • Hiện lưới: ⌃⌥D (có thể đổi trong Settings)
  • Khớp cửa sổ: nhấp hoặc kéo chọn các ô rồi thả
  • Hủy: nhấn Esc, hoặc kéo ra ngoài bảng rồi thả
  • Đóng lưới: nhấp vào bất kỳ đâu bên ngoài lưới
  • Lưu preset: giữ Shift khi thả, hoặc dùng nút + trong Settings
  • Áp dụng preset: dùng phím tắt của preset đó, hoặc menu Presets
  • Hoàn tác thao tác khớp gần nhất: ⌃⌥Z mặc định, nhấn lần nữa để làm lại

Lưới sẽ xuất hiện trên màn hình nơi con trỏ đang ở, và cửa sổ sẽ khớp vào màn hình đó. Điều này có nghĩa là nếu bạn di chuyển chuột sang màn hình khác trước khi nhấn phím tắt, cửa sổ sẽ được đưa sang màn hình đó. Với preset, cửa sổ sẽ khớp vào màn hình mà nó đang hiển thị.

Các đường phân cách rộng hơn trong lưới đánh dấu các vùng một nửa, một phần ba và một phần tư màn hình, giúp bạn chia cửa sổ nhanh chóng theo bố cục phổ biến.

Cấu hình và phát triển

Trong Settings (biểu tượng thanh menu › Settings…), bạn có thể tùy chỉnh cả hai phím tắt, số cột và hàng, khoảng cách giữa các cửa sổ (tính bằng point), quy tắc chọn cửa sổ mục tiêu và bảng preset. Tên và phím tắt đều có thể chỉnh sửa trực tiếp; nút − sẽ xóa preset đang chọn.

Về mặt phát triển, dự án có các script build tiện lợi:

./build.sh            # build build/GridSnap.app
./build.sh install    # đồng thời sao chép vào /Applications

Mã nguồn nằm trong thư mục Sources/, chia thành các file như main.swift (khởi động), AX.swift (xử lý cửa sổ), Grid.swift (lớp phủ lưới), Presets.swift, Hotkeys.swift, ShortcutButton.swift (ghi phím tắt), SettingsWindow.swift, Menu.swift và Defaults.swift (lưu cài đặt).

Một điểm kỹ thuật đáng lưu ý: macOS gắn quyền Accessibility với chữ ký mã của ứng dụng. Chữ ký ad-hoc mặc định sẽ thay đổi sau mỗi lần build, khiến bạn phải cấp lại quyền. Để tránh điều này, bạn có thể tạo chứng chỉ tự ký một lần (Keychain Access › Certificate Assistant › Create a Certificate, chọn loại "Code Signing", đặt tên "GridSnap Dev") và script build sẽ tự nhận diện.

Hạn chế đã biết

GridSnap vẫn có một số hạn chế nhất định:

  • Cửa sổ toàn màn hình (full-screen) sẽ bỏ qua tính năng khớp cửa sổ
  • Một số ứng dụng áp đặt kích thước cửa sổ tối thiểu, không thể thu nhỏ xuống ô nhỏ. Khi đó cửa sổ sẽ giữ nguyên trên màn hình và chồng lên các ô bên cạnh

Dự án được phát hành theo giấy phép MIT, cho phép sử dụng, sửa đổi và phân phối tự do. Nếu bạn là người dùng Mac thường xuyên phải làm việc với nhiều cửa sổ cùng lúc, GridSnap là một công cụ đáng để thử — đặc biệt khi nó miễn phí và tôn trọng quyền riêng tư của người dùng.

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗