如何在 Mac 远程桌面连接应用程序中添加 Mac CMD 到 CTRL 键?

如何在 Mac 远程桌面连接应用程序中添加 Mac CMD 到 CTRL 键?

我有时必须使用适用于 Mac 的 Microsoft 远程桌面连接从运行 MacOS X 10.6.6(Snow Leopard)的 iMac 远程访问 Windows 7 计算机。

在远程桌面窗口中,用 Control 键CTRL代替 Command 键(例如用-代替-进行复制)是一件麻烦事,并且会导致持续的错误。CMDCTRLCCMDC

我希望能够映射CMD按键以在我的 Mac 上输出CTRL按键,但是仅有的访问 Microsoft Remote Desktop Connection for Mac 应用程序时。远程桌面连接允许您通过其“首选项”映射许多其他键...但不包括 CMD 键。

即在任何其他 Mac 应用程序中,CMD其行为就像CMD。然而,在 Microsoft Remote Desktop Connection for Mac 中,CMD其行为就像CTRL

答案1

回答我自己的问题。:-P

发帖后不久,我在谷歌上搜索了一款名为登山扣它完全满足我的需要(此外还有许多其他功能)。

具体来说,您可以将左侧和右侧的命令键映射为仅远程桌面连接和虚拟机中的控制键。

答案2

Microsoft 远程桌面测试版Cmd增加了对+ X/ C/V以及Ctrl+ X/ C/的支持V,以便在远程会话中剪切/复制/粘贴。(注意:剪贴板重定向将在以后的更新中提供。)


您还可以通过导航到应用程序内容中的 Resources/Keyboard 目录并ClipboardActionTransformations.xml在纯文本编辑器中打开文件来添加自定义映射。

<layout name="default">
<transformations>
    <!-- Command+X to Control+X -->
    <transform>
        <from command="1" key="X" />
        <to control="1" key="X" />
    </transform>
    <!-- Command+C to Control+C -->
    <transform>
        <from command="1" key="C" />
        <to control="1" key="C" />
    </transform>
    <!-- Command+V to Control+V -->
    <transform>
        <from command="1" key="V" />
        <to control="1" key="V" />
    </transform>
    <!-- Command+Z to Control+Z -->
    <transform>
        <from command="1" key="Z" />
        <to control="1" key="Z" />
    </transform>
</transformations>
</layout>

更新

您可以简单地在“首选项/常规”部分中设置此复选框:

MS 远程桌面客户端(测试版)偏好设置常规


更新 2

尽管作者是“Microsoft Remote Desktop”,但有些人仍然对 hockeyapp 网站持怀疑态度。这篇 TechNet 博客文章来自 microsoft.com 宣布推出测试版应用并提供了相同的 hockeyapp URL。

更新 3

对于不愿意使用 Karabiner 的用户,上面 () 的文档很少ClipboardActionTransformations.xml。但是,可以映射以下键:LeftArrow、 等、SlashSpacePeriodLeftBracketRightBracketF1等。此外,Shift可以使用 映射组合键Shift="1"

答案3

安装应用程序登山扣

安装完成后,打开 Karabiner:

  • 在“更改密钥”选项卡中,展开“针对应用程序”部分

  • “仅在远程桌面连接客户端启用”子部分

  • 勾选‘在 RDC 中将命令键更改为控制键’

现在,当您使用新的 RDP 应用程序时,您可以继续使用 Cmd 而不是 Ctrl。

答案4

和之前的回答一样,我也用过 Karabiner。非常棒的应用程序!

不过,我做的不同之处在于添加自定义键映射来缓解终端中的 MAC 命令与控制按钮。

就我的情况而言,我使用的是罗技键盘根本没有 Apple-Command Key。

本质上,我所做的是将 MAC 命令键映射到控制键。 我的理由是,我想保留 MAC 映射到 Command 键序列的常见 Ctrl 键序列(即 Ctrl-F,用于查找)。此外,我需要保留真的控制序列,例如 Ctrl-C 表示 SIGINT。基本上,我们正在多路复用一些控制键。

安装 Karabiner 后,我最初无法使用 Ctrl-c 发送 unix (SIGINT)。不过,我修改了 private.xml 后,它就正常工作了。

脚步:

  1. 从以下网址下载 Karabiner .dmg 文件:https://pqrs.org/osx/karabiner/
  2. 双击 .dmg 文件进行安装。
  3. 安装 Karabiner 后,调出按键映射
    。3.1 不要将 Command_L 或 Command_R 映射到任意内容。不要选中它们。3.2
    将 Control_L 和 Control_R 映射到相应的 Command_L 和 Command_R。
  4. 接下来,编辑 private.xml 文件。有用的链接:https://pqrs.org/osx/karabiner/document.html#privatexml
    4.1 添加以下代码片段:

    <item>
         <name>MAC2Unix Hacks</name>
         <identifier>private.app_terminal_command2_to_ctrl</identifier>
         <appendix>Map Command+C to Ctrl+C For Terminal</appendix>
         <only>TERMINAL</only>
         <autogen>__KeyToKey__ KeyCode::C, VK_COMMAND, KeyCode::C, VK_CONTROL</autogen>     
    </item>
    
  5. 点击重新加载按钮,一切就绪了。
  6. 请注意,在终端窗口中,如果您想复制/粘贴文本,您将使用鼠标或其他方式选择它。但是,现在要将其复制到剪贴板,您需要使用鼠标的 rt-click->copy。请记住,我们重新映射了 Ctrl-C(以前是“复制”),现在是 SIGINT。

相关内容