How do I keep Mac Emacs from trapping M-`?
I want to use the command key on my Mac as the meta key, so I customize ns-command-modifier
. But I also want to still use Command-` to cycle through all the windows in Emacs - just like in all other Mac apps.
If I unbind M-`, then I just get an error that there is no binding for that key. I want to somehow tell emacs not to trap that key at all.
There must be a solution because Command-Tab works whether or not the command key is set to be meta. But Command-` does not.
key-bindings osx keymap
New contributor
add a comment |
I want to use the command key on my Mac as the meta key, so I customize ns-command-modifier
. But I also want to still use Command-` to cycle through all the windows in Emacs - just like in all other Mac apps.
If I unbind M-`, then I just get an error that there is no binding for that key. I want to somehow tell emacs not to trap that key at all.
There must be a solution because Command-Tab works whether or not the command key is set to be meta. But Command-` does not.
key-bindings osx keymap
New contributor
add a comment |
I want to use the command key on my Mac as the meta key, so I customize ns-command-modifier
. But I also want to still use Command-` to cycle through all the windows in Emacs - just like in all other Mac apps.
If I unbind M-`, then I just get an error that there is no binding for that key. I want to somehow tell emacs not to trap that key at all.
There must be a solution because Command-Tab works whether or not the command key is set to be meta. But Command-` does not.
key-bindings osx keymap
New contributor
I want to use the command key on my Mac as the meta key, so I customize ns-command-modifier
. But I also want to still use Command-` to cycle through all the windows in Emacs - just like in all other Mac apps.
If I unbind M-`, then I just get an error that there is no binding for that key. I want to somehow tell emacs not to trap that key at all.
There must be a solution because Command-Tab works whether or not the command key is set to be meta. But Command-` does not.
key-bindings osx keymap
key-bindings osx keymap
New contributor
New contributor
edited 6 hours ago
Gilles♦
13.6k43575
13.6k43575
New contributor
asked 8 hours ago
dk.dk.
1161
1161
New contributor
New contributor
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
What's going on here is that ⌘⇥
is a low-level hotkey that can't be intercepted (a good thing, too, since it may be one of your only escape hatches if a full-screen game hangs, along with the force-quit ⌥⌘⎋
keystroke which is also immutable and uninterceptible).
⌘`
, on the other hand, is a command that MacOS provides ordinary apps by default, but that can be reassigned or ignored completely. The way the Cocoa Emacs integration work is largely (though not entirely) by disabling Cocoa's free features (because they don't interact well with a lot of Emacs concepts) and then reintroducing the ones that made sense to the developers.
In some Mac-specific Emacs distributions, this includes window-cycling via ⌘`
, but not in the stock version.
The good news is that, having already set up your modifier keys as you like, you can now just bind a key in the normal emacs way to the frame-cycling (Mac "windows" are Emacs "frames" while Emacs "windows" don't correspond to anything on the Mac exactly) command other-frame
, ordinarily bound to C-x 5 o
.
So try M-x global-set-key
, return, M-`
, other-frame
, return. If that works, you can set up this keybind permanently in your init file(s), or whatever method you use (I don't presume to know since there are many takes on managing keybinds in Emacs, but if you don't know how, I can edit this to suggest one, just drop a comment).
add a comment |
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "583"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
dk. is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2femacs.stackexchange.com%2fquestions%2f48698%2fhow-do-i-keep-mac-emacs-from-trapping-m%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
What's going on here is that ⌘⇥
is a low-level hotkey that can't be intercepted (a good thing, too, since it may be one of your only escape hatches if a full-screen game hangs, along with the force-quit ⌥⌘⎋
keystroke which is also immutable and uninterceptible).
⌘`
, on the other hand, is a command that MacOS provides ordinary apps by default, but that can be reassigned or ignored completely. The way the Cocoa Emacs integration work is largely (though not entirely) by disabling Cocoa's free features (because they don't interact well with a lot of Emacs concepts) and then reintroducing the ones that made sense to the developers.
In some Mac-specific Emacs distributions, this includes window-cycling via ⌘`
, but not in the stock version.
The good news is that, having already set up your modifier keys as you like, you can now just bind a key in the normal emacs way to the frame-cycling (Mac "windows" are Emacs "frames" while Emacs "windows" don't correspond to anything on the Mac exactly) command other-frame
, ordinarily bound to C-x 5 o
.
So try M-x global-set-key
, return, M-`
, other-frame
, return. If that works, you can set up this keybind permanently in your init file(s), or whatever method you use (I don't presume to know since there are many takes on managing keybinds in Emacs, but if you don't know how, I can edit this to suggest one, just drop a comment).
add a comment |
What's going on here is that ⌘⇥
is a low-level hotkey that can't be intercepted (a good thing, too, since it may be one of your only escape hatches if a full-screen game hangs, along with the force-quit ⌥⌘⎋
keystroke which is also immutable and uninterceptible).
⌘`
, on the other hand, is a command that MacOS provides ordinary apps by default, but that can be reassigned or ignored completely. The way the Cocoa Emacs integration work is largely (though not entirely) by disabling Cocoa's free features (because they don't interact well with a lot of Emacs concepts) and then reintroducing the ones that made sense to the developers.
In some Mac-specific Emacs distributions, this includes window-cycling via ⌘`
, but not in the stock version.
The good news is that, having already set up your modifier keys as you like, you can now just bind a key in the normal emacs way to the frame-cycling (Mac "windows" are Emacs "frames" while Emacs "windows" don't correspond to anything on the Mac exactly) command other-frame
, ordinarily bound to C-x 5 o
.
So try M-x global-set-key
, return, M-`
, other-frame
, return. If that works, you can set up this keybind permanently in your init file(s), or whatever method you use (I don't presume to know since there are many takes on managing keybinds in Emacs, but if you don't know how, I can edit this to suggest one, just drop a comment).
add a comment |
What's going on here is that ⌘⇥
is a low-level hotkey that can't be intercepted (a good thing, too, since it may be one of your only escape hatches if a full-screen game hangs, along with the force-quit ⌥⌘⎋
keystroke which is also immutable and uninterceptible).
⌘`
, on the other hand, is a command that MacOS provides ordinary apps by default, but that can be reassigned or ignored completely. The way the Cocoa Emacs integration work is largely (though not entirely) by disabling Cocoa's free features (because they don't interact well with a lot of Emacs concepts) and then reintroducing the ones that made sense to the developers.
In some Mac-specific Emacs distributions, this includes window-cycling via ⌘`
, but not in the stock version.
The good news is that, having already set up your modifier keys as you like, you can now just bind a key in the normal emacs way to the frame-cycling (Mac "windows" are Emacs "frames" while Emacs "windows" don't correspond to anything on the Mac exactly) command other-frame
, ordinarily bound to C-x 5 o
.
So try M-x global-set-key
, return, M-`
, other-frame
, return. If that works, you can set up this keybind permanently in your init file(s), or whatever method you use (I don't presume to know since there are many takes on managing keybinds in Emacs, but if you don't know how, I can edit this to suggest one, just drop a comment).
What's going on here is that ⌘⇥
is a low-level hotkey that can't be intercepted (a good thing, too, since it may be one of your only escape hatches if a full-screen game hangs, along with the force-quit ⌥⌘⎋
keystroke which is also immutable and uninterceptible).
⌘`
, on the other hand, is a command that MacOS provides ordinary apps by default, but that can be reassigned or ignored completely. The way the Cocoa Emacs integration work is largely (though not entirely) by disabling Cocoa's free features (because they don't interact well with a lot of Emacs concepts) and then reintroducing the ones that made sense to the developers.
In some Mac-specific Emacs distributions, this includes window-cycling via ⌘`
, but not in the stock version.
The good news is that, having already set up your modifier keys as you like, you can now just bind a key in the normal emacs way to the frame-cycling (Mac "windows" are Emacs "frames" while Emacs "windows" don't correspond to anything on the Mac exactly) command other-frame
, ordinarily bound to C-x 5 o
.
So try M-x global-set-key
, return, M-`
, other-frame
, return. If that works, you can set up this keybind permanently in your init file(s), or whatever method you use (I don't presume to know since there are many takes on managing keybinds in Emacs, but if you don't know how, I can edit this to suggest one, just drop a comment).
answered 7 hours ago
TreyTrey
1919
1919
add a comment |
add a comment |
dk. is a new contributor. Be nice, and check out our Code of Conduct.
dk. is a new contributor. Be nice, and check out our Code of Conduct.
dk. is a new contributor. Be nice, and check out our Code of Conduct.
dk. is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to Emacs Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2femacs.stackexchange.com%2fquestions%2f48698%2fhow-do-i-keep-mac-emacs-from-trapping-m%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown