Làm thế nào để vô hiệu hóa lệnh ẩn-h trong Emacs Mac Port (railcat)?


7

Tôi chạy Emacs trên Mac OSX, tôi đang cố gắng chuyển từ Emacs cho Mac OSX sang Emacs Mac Port . Tôi đang gặp một số rắc rối với keybindings của mình.

Ví dụ, tôi đang cố gắng liên kết lệnh-h với replace-string.

(setq mac-command-modifier 'super)
(define-key key-minor-mode-map (kbd "s-h") 'replace-string)

Điều này đã không làm việc. Vì vậy, tôi đã cố gắng ràng buộc nó như siêu:

(define-hyper-key "h" 'replace-string)

nhưng điều đó cũng không hiệu quả.

Thay đổi keybindings khác dường như để làm việc ( s-o, s-p, vv).

Điều này có thể liên quan: Làm thế nào để liên kết "Ẩn người khác" với khóa "Msh" trong railcat / emacs-mac-port?

lệnh-h để replace-stringhoạt động trên Emacs cho Mac OSX, nhưng trên Emacs Mac Port, nó chỉ ẩn / thu nhỏ cửa sổ ứng dụng. Các phím bấm có hoạt động khác nhau trong Emacs Mac Port so với Emacs cho Mac OSX không? Có phải một số keybindings được mã hóa vào Cổng Mac của Emacs không, và nếu vậy, làm thế nào tôi có thể ghi đè lên chúng?

Cập nhật : Có vẻ như những người khác đang có cùng một vấn đề. https://github.com/railwaycat/emacs-mac-port/issues/78


Các công cụ thông thường có hoạt động không?: (define-key global-map [?\s-h] 'replace-string) Và, tôi có cái này cho các Emacs thông thường: (setq ns-command-modifier 'super)
luật

Không, kết quả tương tự.
sợi đốt

Thay đổi keybindings khác dường như để làm việc ( s-o, s-p, vv).
sợi đốt

Nếu các keybindings khác hoạt động, vậy thì hãy thử C-h k s-hxem nó có đăng ký không, hoặc có lẽ OSX đang chặn nó?
luật

Điều đó cũng không hoạt động. Hình như nó đang bị chặn. Nhưng đó là một cái gì đó về ứng dụng Emacs Mac Port chứ không phải OSX, vì với Emacs cho Mac OSX, nó hoạt động.
sợi đốt

Câu trả lời:


14

Tôi tìm thấy câu trả lời.

Trong Emacs Mac Port, hbỏ qua mọi phím bấm Emacs và thay vào đó sẽ gửi một thông báo "truyền lệnh tới hệ thống" tới Mac OSX, sau đó ẩn toàn bộ ứng dụng.

Đây là một dấu tích của hành vi từ Carbon Emacs cũ. Để vô hiệu hóa nó, sử dụng này:

(setq mac-pass-command-to-system nil)

Nguồn:

http://newsgroups.derkeiler.com/Archive/Comp/comp.emacs/2005-11/msg00091.html
http://comp.emacs.xemacs.narkive.com/dBRCHljn/apple-carbon-emacs-disable-cmd -h-ẩn

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.