我可以使用数字键盘更改Apple键盘上的Home和End键的行为吗?


51

我刚刚购买了“带数字小键盘的Apple键盘”,然后将其连接到运行Lion的Macbook Pro。

但是homeend键下的and 键F14不能按我预期的那样工作。在“页面”中说,该home键不会将光标移至该行的开头,而该end键会将您带到页面的底部。

有人知道如何重新映射home/ end键吗?

Answers:


54

一种选择是创建~/Library/KeyBindings/和保存如下属性列表~/Library/KeyBindings/DefaultKeyBinding.dict

{
  "\UF729"  = moveToBeginningOfLine:;
  "\UF72B"  = moveToEndOfLine:;
  "$\UF729" = moveToBeginningOfLineAndModifySelection:;
  "$\UF72B" = moveToEndOfLineAndModifySelection:;
}

退出并重新打开应用程序以应用更改。请注意,DefaultKeyBinding.dict某些应用程序(例如Xcode或Firefox)不支持该功能。

在“终端”中,您可以通过“首选项”>“设置”>“键盘”将home(↖)分配给control-a,将end(↘)分配给control-e。但是,这将使您没有按键组合可以滚动到窗口的顶部或底部。

仅使用默认的键绑定可能会更容易。在大多数本机文本视图中:

  • Ctrl-A或Option-Up转到段落的开头
  • control-E或Option-up转到段落结尾
  • 左命令转到行首
  • 命令右转到行尾

1
这适用于我的大多数应用程序,例如Pages和Textmate。但是,我无法在终端中正常工作

5
对。终端是另一回事,您需要告诉它您希望Home和End键如何工作。您可以在终端->首选项->键盘中执行此操作。将Home键设置为send control-a,将End键设置为send control-e。这些是终端默认用于行移动的Emacs样式的键绑定。它会模仿您要进行的常规居家/居家运动。
michaelmichael 2011年

再次感谢迈克尔。我今晚回到笔记本电脑时会尝试一下。
凯文·任

1
可在macOS Sierra中使用!(Karabiner目前无法正常工作)。
古斯塔沃·贝塞拉

2
@ ckpepper02对吗?我的意思是,自从PgUp和PgDown到达所有文档(除了最长的文档)到同一点以来,如此令人沮丧和毫无意义的99%的时间。rr!
罗比诺

31

另一个选项是在Karabiner(以前称为KeyRemap4MacBook)中启用“使用PC样式家用/家用”设置:

该设置在Resources / include / checkbox / for_pc_users.xml中定义

您也可以将以下文件保存为~/Library/Application Support/KeyRemap4MacBook/private.xml

<?xml version="1.0"?>
<root>
  <appdef>
    <appname>HOMEENDIGNORE</appname>
    <equal>com.microsoft.Word</equal>
    <equal>com.microsoft.Powerpoint</equal>
    <equal>com.microsoft.Excel</equal>
    <equal>com.vmware.fusion</equal>
    <prefix>com.vmware.proxyApp.</prefix>
  </appdef>
  <item>
    <name>homeend</name>
    <identifier>homeend</identifier>
    <not>HOMEENDIGNORE</not>
    <autogen>__KeyToKey__ KeyCode::HOME, ModifierFlag::NONE, KeyCode::A, VK_CONTROL</autogen>
    <autogen>__KeyToKey__ KeyCode::END, ModifierFlag::NONE, KeyCode::E, VK_CONTROL</autogen>
    <autogen>__KeyToKey__ KeyCode::HOME, VK_SHIFT | ModifierFlag::NONE, KeyCode::A, VK_CONTROL | VK_SHIFT</autogen>
    <autogen>__KeyToKey__ KeyCode::END, VK_SHIFT | ModifierFlag::NONE, KeyCode::E, VK_CONTROL | VK_SHIFT</autogen>
  </item>
</root>

然后打开KeyRemap4MacBook应用程序,按ReloadXML按钮,然后启用设置。有关更多信息,请参见https://pqrs.org/macosx/keyremap4macbook/xml.html.en


5

由于此答案在搜索引擎中排名很高,因此我想解释一下我是如何使用最新版本的Karabiner做到的。
必须从他们的网站下载“使用PC样式的家用/终端”设置。您将要转到“复杂修改”,然后单击“添加规则”,然后选择“从Internet导入更多规则”。它将带您到以下网站:https : //pqrs.org/osx/karabiner/complex_modifications/在“仿真模式”下可以找到“ PC样式快捷方式”。单击“导入Karabiner元素”后,就可以将其激活并准备好使用。🙌🏼
您只需要选择“添加规则”,然后在此处找到“使用PC样式首页/结束”设置。

复杂修改页面


2
你是我的英雄。
atfeique,

1

我会建议您使用真棒的keyremap4macbook,尽管它的名称是免费的,但它可以在任何mac电脑(不一定是macbooks)上使用,在这里您可以找到最简单的方法来更改主页/结束按钮的默认行为,使其正常工作(IMO)


我同意,我更频繁地homeend上线的基础,而不是一个完整的文件依据。竭尽所能,以减少执行最频繁使用案例的麻烦,并将键盘快捷键组合等推向不太频繁的命令。
jxramos

-1

我关注了此博客文章,并进行了“ home”和“ end”键绑定以及其他一些有用的调整。


2
我们希望答案不仅仅是一行。理想情况下,您想解释为什么“答案正确”。它还有助于提供链接,引文和/或屏幕截图。请查看我们的帮助部分“ 如何回答如何写出正确的问题”
艾伦
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.