Eu corro o Emacs no Mac OSX, estou tentando mudar do Emacs para Mac OSX para a porta Mac do Emacs . Estou tendo alguns problemas com minhas combinações de teclas.
Por exemplo, estou tentando vincular o comando-h replace-string
.
(setq mac-command-modifier 'super)
(define-key key-minor-mode-map (kbd "s-h") 'replace-string)
Isso não funcionou. Então, tentei vinculá-lo como hiper:
(define-hyper-key "h" 'replace-string)
mas isso também não funcionou.
Alterar outras combinações de teclas parecem funcionar ( s-o
, s-p
, etc).
Isso pode estar relacionado: Como vincular "Ocultar outros" a uma chave "Msh" no railwaycat / emacs-mac-port?
command-h para replace-string
trabalhos no Emacs para Mac OSX, mas no Emacs Mac Port, apenas oculta / minimiza a janela do aplicativo. As combinações de teclas funcionam de maneira diferente no Emacs Mac Port e no Emacs para Mac OSX? Algumas combinações de teclas estão codificadas no Emacs Mac Port e, em caso afirmativo, como posso substituí-las?
Atualização : parece que outras pessoas estão tendo o mesmo problema. https://github.com/railwaycat/emacs-mac-port/issues/78
fonte
(define-key global-map [?\s-h] 'replace-string)
E eu tenho isso para o Emacs regular:(setq ns-command-modifier 'super)
s-o
,s-p
, etc).C-h k s-h
ver se ele é registrado ou se o OSX está interceptando?Respostas:
Eu encontrei a resposta.
No Emacs Mac Port, ⌘hignora todas as combinações de teclas do Emacs e envia uma mensagem "passar comando ao sistema" para o Mac OSX, que então oculta todo o aplicativo.
Este é um vestígio de comportamento do antigo Carbon Emacs. Para desativá-lo, use este:
Fonte:
http://newsgroups.derkeiler.com/Archive/Comp/comp.emacs/2005-11/msg00091.html
http://comp.emacs.xemacs.narkive.com/dBRWEljn/apple-carbon-emacs-disable-cmd -h-hide
fonte