在 Mac 上,我使用 Microsoft 的远程桌面应用连接到 Windows 机器。我可以在偏好设置中看到如何将 Command 键映射到 Alt,将 Option 键映射到 Windows 键,这样 Alt 和 Windows 键在我的 Mac RDP 连接上的物理布局与在实际 Windows 键盘上的物理布局相同。也就是说,Alt 键(Command)位于空格键的正左侧,而 Windows 键(Option)位于空格键的正左侧。
但是如果我这样设置,我就无法在 Windows 机器上使用 Alt-Tab——Mac 会拦截它并将其视为 Command-Tab 以切换出 RDP 应用程序。我知道有些程序能够阻止这种情况——例如,VirtualBox 和 VMWare 允许您在 Windows 客户机内将 Command-Tab 用作 Alt-Tab。(事实上,我对此的一个解决方案是在 Mac 上使用 Windows 虚拟机,仅使用它通过 RDP 进入另一台机器!)
除了创建 Windows 虚拟机之外,是否有任何方法可以让 Mac RDP 应用程序将 Command-Tab 作为 Alt-Tab 发送到远程 Windows 机器?
答案1
在 OSX 中,您可以重映射现存的菜单项。如果您的应用程序有一个 CMD+TAB 菜单项,那么您很幸运。
对我来说,使用 Microsoft 远程桌面时,我需要禁用(或重新映射)CMD+W(肌肉记忆会按 CMD+W 关闭远程会话中的选项卡,并会意外关闭我的远程会话)。我最初尝试过 karabiner,但它太过分了。
如何为特定应用程序重新映射命令:
- 检查应用程序菜单以查找所需的命令。注意确切的命令名称。
- 之内系统偏好设置->键盘->
Shortcuts
选项卡->App Shortcuts
窗格->单击+
按钮添加新的应用程序特定命令重映射 - 为您的应用程序创建新的重新映射。注意:菜单标题必须与您在步骤 1 中确定的命令完全匹配。
- 享受您新重新映射/“禁用”的快捷键(将其重新映射到一些疯狂的组合以有效地禁用它):
要在会话内重新映射(例如,使 Cmd+Z = Ctrl+Z):
安装自动热键。
将您的自定义脚本文件添加到启动文件夹,其中包含您的自定义映射(如下例所示)。
我发现这允许我在 Windows PC 上使用 Windows 风格的快捷键(例如 Ctrl+C)进行物理操作,在 Mac(通过 RDP 连接到 Windows)上使用 Mac 风格的快捷键(例如 Cmd+C)。我不会完全重新映射按钮,只是重新映射我使用的序列,而且这个序列往往足够窄,在物理和 RDP 之间切换时不会绊倒。
示例.ahk
;Win+Z: Send Ctrl+Z
#z::
Send ^z
return
;Win+s: Send Ctrl+S
#s::
Send ^s
return
;Win(CMD)+W: Send Ctrl+W (Close Window)
#w::
Send ^w
return
答案2
Option-Tab 不起作用吗?在 Mac 的 RDP 中,我已经习惯使用 Option 键作为 Windows Alt。使用此功能,我可以保留 Command 键作为 Mac 热键,并在 RDP 窗口中注册 alt 的操作。
答案3
尝试使用绳索而不是微软的 RDP 客户端。
答案4
你可以这样做:
- 在 Mac 键盘偏好设置中交换 Command 键和 Option 键。
- 在 RDP 客户端首选项中将 Alt 设置为选项(默认),并将 Windows 启动设置为命令。
这可为您提供与远程桌面上的 Windows 键盘相同的布局,尽管它会影响其余的 Mac 应用程序。我发现习惯在 Mac 上交换选项和命令键并不是什么大问题。我花了很多时间在 RDP 会话上,另外还有 30% 的时间花在 PC 上,所以对我来说使用这种布局更容易。