2 điểm bởi unstabler 4 giờ trước | Chưa có bình luận nào. | Chia sẻ qua WhatsApp

Ảnh chụp màn hình (Twitter / X)

Mình đang làm một ứng dụng điều khiển từ xa cho macOS, và dựa trên kinh nghiệm tích lũy được trong quá trình đó, mình đã thử tạo một ứng dụng tên là 'Sejong98' giúp chuyển đổi Hàn/Anh bằng phím Option / Command bên phải.

Tính năng

  • Có thể gán các hành động 'chuyển đổi Hàn/Anh', 'chuyển sang nhập tiếng Hàn', 'chuyển sang nhập tiếng Anh' cho các phím dưới đây.

    • Command bên phải
    • Option bên phải
    • Shift + Sapce
  • Tính năng dành cho người dùng Vim: khi nhấn phím Escape, sẽ chuyển sang nhập tiếng Anh.

Vì sao cho đến nay việc chuyển đổi Hàn/Anh qua các chương trình vẫn không khả thi? / Vậy ứng dụng này đã giải quyết vấn đề đó như thế nào?

macOS có thể chuyển đổi ngôn ngữ nhập thông qua nhóm API TISSelectInputSource() do framework HIToolbox cung cấp.

Tuy nhiên, các API này thực chất thuộc Carbon API từ thời Mac OS cổ điển, và có vẻ hiện không còn được bảo trì; khi gọi các API này, việc chuyển ngôn ngữ sang Hàn/Trung/Nhật hoạt động gần như mang tính xác suất. Có lúc nhập được tiếng Hàn, có lúc lại nhập tiếng Anh... đại loại như vậy.

Tuy nhiên, người ta đã xác nhận rằng sau khi gọi API, nếu chuyển sang ứng dụng khác rồi quay lại thì việc chuyển sang nhập tiếng Hàn luôn được đảm bảo hoạt động bình thường. Sejong98 tận dụng (theo kiểu abuse) điểm này để né tránh vấn đề nhiều nhất có thể.

Trong Sejong98, ứng dụng tạo sẵn một cửa sổ trống vô hình kích thước 1x1, và khi nhấn phím Command bên phải thì sẽ chuyển sang cửa sổ trống đó nhanh nhất có thể rồi quay lại ứng dụng ban đầu. Làm như vậy, đổi lại việc khung cửa sổ sẽ nhấp nháy thoáng qua, nhưng việc chuyển đổi Hàn/Anh sẽ luôn thành công.

Chưa có bình luận nào.

Chưa có bình luận nào.