Chuyển đổi một khóa bình thường thành một phím bổ trợ


11

Tôi có một bàn phím, vì một số lý do không thể giải thích được, có một phím gửi biểu tượng Dollar Đan Mạch đến OS X - §. Với sự thay đổi, nó sẽ gửi biểu tượng cộng / trừ - ±.

Có thể trong Emacs để xem §khóa và chuyển đổi nó thành Hyper hoặc Super? Vì vậy, nếu tôi giữ phím đó §và nhấn f, nó sẽ kích hoạt H-ftrong Emacs.

Tôi đã thử những cách sau, không hiệu quả:

(define-key key-translation-map (kbd "§") (kbd "<Hyper>"))

Nó chỉ nói <Hyper> is undefinedkhi nhấn phím, và hoàn toàn không hoạt động như một công cụ sửa đổi.

Điều này cũng không hoạt động:

(define-key key-translation-map (kbd "§") "<Hyper>")

Điều đó chỉ biến §chìa khóa thành một <chìa khóa.



2
Bạn sẽ có thể làm điều này ở cấp độ hệ điều hành, nhưng không phải trong emacs.
Malabarba

Câu trả lời:


4

Phiên bản ngắn : theo thuật ngữ của Emacs, thứ tôi thực sự cần là hợp âm phím .


@Malabarba và @XinUmbralis có vẻ đúng - Emacs không cho phép bạn biến một khóa bình thường thành một khóa sửa đổi thông thường. Tôi thực sự không thích ý tưởng kết hợp mọi phím bổ trợ trên bàn phím và gọi đó là "Hyper", bởi vì nó có thể xung đột với những thứ khác trong tương lai.

Tôi đã sử dụng Karabiner và rõ ràng bạn có thể tạo các sửa đổi tùy chỉnh với nó. Nhưng điều đó đòi hỏi phải ánh xạ mọi sự kết hợp ở cấp độ HĐH để có thể §-agửi thứ gì đó mà Emacs biết cách xử lý.

Sau đó, tôi nhớ thư viện hợp âm và nhận ra đó là thuật ngữ Emacs thực sự cho những gì tôi muốn. Cấu hình ví dụ:

(require 'key-chord)
(key-chord-mode 1)
(key-chord-define-global "§a" 'other-frame)

Một vấn đề tôi gặp phải với hợp âm phím là ngữ nghĩa của hợp âm phím hơi khác so với phím bổ trợ + - không cho phép lặp lại và toàn bộ hợp âm phải được nhập rất nhanh.

Nếu tôi đưa ra giải pháp cho những vấn đề đó, tôi sẽ viết về nó ở đâu đó và cung cấp một liên kết trong bản chỉnh sửa cho câu trả lời này.


3

Bạn cũng có thể không thể bật lại khóa ký hiệu phần (phím §) để gửi lệnh hyper, tuy nhiên bạn có thể buộc lại khóa phím mũ để gửi Hyper, sử dụng Seil PCPalHack .

Để bật lại khóa mũ trong Seil, chỉ cần làm như sau:

  1. Mở Seil và nhấp vào 'Thay đổi phím khóa mũ'.
  2. Chọn hộp kiểm bên cạnh 'Thay đổi phím khóa mũ'.
  3. Nhấp đúp chuột vào mã khóa và nhập mã khóa 80.

1
Câu trả lời này có lẽ sẽ tốt hơn khi bình luận. Nói chung, câu trả lời nên làm nhiều hơn là cung cấp liên kết, một phần vì các liên kết có thể biến mất bất cứ lúc nào. Bạn có thể vui lòng chỉnh sửa câu trả lời của bạn để làm cho nó khép kín hơn?
Dân

Thật không may, ít nhất là đối với tôi, việc đặt mã khóa thành 80 không làm gì cả.
Marcin
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.