Emacs將識別Command + Q等標準OSX快捷方式,但是當我嘗試使用我自定義的快捷方式Command +做一些像打開Safari(不要判斷我:-P) Control + S,迷你緩衝區顯示「未定義」。如何訪問Emacs中的OSX服務/鍵盤快捷方式
有沒有辦法讓我將Emacs快捷方式設置爲我在OSX中定義的全局服務/快捷方式之一?
(OSX 10.9.1,Emacs的24.3)
Emacs將識別Command + Q等標準OSX快捷方式,但是當我嘗試使用我自定義的快捷方式Command +做一些像打開Safari(不要判斷我:-P) Control + S,迷你緩衝區顯示「未定義」。如何訪問Emacs中的OSX服務/鍵盤快捷方式
有沒有辦法讓我將Emacs快捷方式設置爲我在OSX中定義的全局服務/快捷方式之一?
(OSX 10.9.1,Emacs的24.3)
此解決方案不使用系統範圍的鍵盤快捷鍵,而是使用一個AppleScript:
(defun safari-activate()
(interactive)
(let ((script (concat
"tell application \"Safari\"\n"
"activate\n"
"end tell")))
(start-process "safari-activate" nil "osascript" "-e" script)))
這裏是一個稍微不同的方法,但沿着相同的路線:
(defun safari-activate-two()
(interactive)
(do-applescript "tell application \"Safari\" to activate"))
服務按鍵組合工作時沒有定製運行emacs。
/Applications/Emacs.app/Contents/MacOS/Emacs.sh --no-init-file
多的反覆試驗之後發現我的困境是由MAC-選項修飾符的定製造成的,按照mac-switch-meta。 如果我切換回或保留默認值,那麼我可以訪問服務,但標準快捷方式不再有效! :-(
更重要的是我無法運行通過操縱菜單中的服務作爲討論No Menu Bars
答案將是取決於您是否使用這個設置不同的討論:'(setq NS-AUTO -hide-menu-bar t)'您是否使用了該設置?我不確定它何時首次推出,但由於缺少某些特殊措施,無法執行OSX原生鍵盤快捷鍵,請驗證您是否使用了標準系統偏好鍵盤快捷方式,而不是像KeyboardMaestro或其他第三方解決方案 – lawlist
據我所知,我沒有使用該設置,我從來沒有把它放在我的init文件中,它現在不存在。 ,我正在使用自定義鍵盤快捷鍵,但它們已被自定義通過標準的系統偏好選項。 –