通过 Synergy 将 Home/End 从 PC 重新映射到 Mac 不是客户端特定的

通过 Synergy 将 Home/End 从 PC 重新映射到 Mac 不是客户端特定的

这个问题询问了结束键,但是答案没有给出例子:使用带有 Synergy 的 Mac 时,哪个键的作用类似于 End

如果他们这样做了,我猜他们可能会遇到这个问题。

添加类似下面两行的内容:

section: options
    keystroke(End) = keystroke(Control+Right,myMac)
    keystroke(Home) = keystroke(Control+Left,myMac)

到我的 winXP 机器上的 MyDocuments 中的 synergy.sgc 可以工作,但会导致键在 winXP 机器上停止工作。不可接受。我接下来尝试了一种折衷方案:

    keystroke(End) = keystroke(Control+Right,myMac); keystroke(End,myPc)
    keystroke(Home) = keystroke(Control+Left,myMac); keystroke(Home,myPc)

期望将按键广播到两台机器,无论哪台机器是活动屏幕。这和许多其他变体都没有起作用。

我做错了什么?有人真的这样做过吗?

编辑:请注意,按住 Shift 键也会阻止协同映射结束键。

编辑:请注意,以上假设您的 synergy.sgc 也具有以下内容:

section: screens
    myMac:
        alt = ctrl
        ctrl = alt

答案1

也许你应该直接在 Mac 上执行此操作,而不是尝试通过 Synergy 执行此操作?有几种解决方案,我见过的一种是:

这可以修复大多数地方的问题,但有些应用可能无法修复,因此您可能需要对它们应用特定设置。使用 Google 搜索应该可以找到它们,例如以下几个: Mac Home 和 End 键

答案2

如果你想“修复”更多的烦恼,你可以手动进行:

转到您的~/Library文件夹并添加一个KeyBindings文件夹。在那里,创建一个DefaultKeyBinding.dict文件并复制并粘贴以下内容:

{  
"\UF729"   = "moveToBeginningOfLine:";                       /* Home         */  
"@\UF729"  = "moveToBeginningOfDocument:";                   /* Cmd  + Home  */  
"$\UF729"  = "moveToBeginningOfLineAndModifySelection:";     /* Shift + Home */  
"@$\UF729" = "moveToBeginningOfDocumentAndModifySelection:"; /* Shift + Cmd  + Home */  
"\UF72B"   = "moveToEndOfLine:";                             /* End          */  
"@\UF72B"  = "moveToEndOfDocument:";                         /* Cmd  + End   */  
"$\UF72B"  = "moveToEndOfLineAndModifySelection:";           /* Shift + End  */  
"@$\UF72B" = "moveToEndOfDocumentAndModifySelection:";       /* Shift + Cmd  + End */  
"\UF72C"   = "pageUp:";                                      /* PageUp       */  
"\UF72D"   = "pageDown:";                                    /* PageDown     */  
"$\UF728"  = "cut:";                                         /* Shift + Del  */  
"$\UF727"  = "paste:";                                       /* Shift + Ins */  
"@\UF727"  = "copy:";                                        /* Cmd  + Ins  */  
"$\UF746"  = "paste:";                                       /* Shift + Help */  
"@\UF746"  = "copy:";                                        /* Cmd  + Help (Ins) */  
"@\UF702"  = "moveWordBackward:";                            /* Cmd  + LeftArrow */  
"@\UF703"  = "moveWordForward:";                             /* Cmd  + RightArrow */  
"@$\UF702" = "moveWordBackwardAndModifySelection:";   /* Shift + Cmd  + Leftarrow */  
"@$\UF703" = "moveWordForwardAndModifySelection:";   /* Shift + Cmd  + Rightarrow */  
}  

此特定映射假设您已经切换了 Control 和 Command 键。您可能需要重新启动要运行此映射的应用程序和/或注销并重新登录。

抱歉,我记不起在网上哪里找到的这个。不过还是要为创作者点赞!

相关内容