OS X 使用键盘控制音量

OS X 使用键盘控制音量

我想要这些键绑定:

  • Cmd+ PageUp= 音量调高
  • Cmd+ PageDown= 音量减小

我跟着这些说明

创建 AppleScript 脚本工作正常,但无法设置Cmd+PageUp快捷方式系统偏好设置键盘快捷方式服务

脚本

设置

是否可以从~Library/KeyBindings/DefaultKeyBindings.dict

答案1

这是非常可行的。关键是使用 Automator 从 AppleScript 创建服务。

  1. 启动 Automator,选择文件、新建,然后选择服务
  2. 设置接收服务“无输入”“任何应用程序”
  3. 从操作中选择运行 AppleScript并将其拖到右侧的工作区。
  4. 将脚本复制/粘贴到编辑器中
  5. 使用适当的名称保存该服务。
  6. 启动系统偏好设置,键盘和您使用的服务名称将可用。
  7. 根据需要设置快捷方式。

唯一的其他方法可能是使用 Automator 创建一个运行 bash 脚本的服务,该脚本将调用ossascript your_script。我不确定您将如何调用该.dict文件来完成您想要完成的任务。

答案2

服务(或未作为服务运行的 AppleScript 脚本)运行前通常会有明显的延迟,并且服务的键盘快捷键在没有服务菜单的应用程序中不可用。更好的选择是使用私有文件就像这样使用 Karabiner:

<?xml version="1.0"?>
<root>
  <item>
    <name>custom</name>
    <identifier>custom</identifier>
    <autogen>__KeyToKey__ KeyCode::PAGEUP, VK_COMMAND, ModifierFlag::NONE, KeyCode::VK_CONSUMERKEY_VOLUME_UP</autogen>
    <autogen>__KeyToKey__ KeyCode::PAGEDOWN, VK_COMMAND, ModifierFlag::NONE, KeyCode::VK_CONSUMERKEY_VOLUME_DOWN</autogen>
  </item>
</root>

, ModifierFlag::NONE例如,如果没有第一个autogen条目,则会将 option + command + page up 更改为 option + volume up。

要以四分之一小节的增量改变音量,请, ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L在之前添加</autogen>

这会将右选项键在按住时映射​​到额外的修饰键,在按下时映射到 F19,例如,按住额外的修饰键的同时按下键盘 0 键会增加音量:

<?xml version="1.0"?>
<root>
  <item>
    <name>custom</name>
    <identifier>custom</identifier>
    <autogen>__KeyOverlaidModifier__ KeyCode::OPTION_R, KeyCode::VK_MODIFIER_EXTRA1, KeyCode::F19</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_1, ModifierFlag::EXTRA1, KeyCode::VK_CONSUMERKEY_BRIGHTNESS_DOWN</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_2, ModifierFlag::EXTRA1, KeyCode::VK_CONSUMERKEY_BRIGHTNESS_UP</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_6, ModifierFlag::EXTRA1, KeyCode::VK_CONSUMERKEY_MUSIC_PREV</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_7, ModifierFlag::EXTRA1, KeyCode::VK_CONSUMERKEY_MUSIC_PLAY</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_8, ModifierFlag::EXTRA1, KeyCode::VK_CONSUMERKEY_MUSIC_NEXT</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_9, ModifierFlag::EXTRA1, KeyCode::VK_CONSUMERKEY_VOLUME_DOWN, ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_0, ModifierFlag::EXTRA1, KeyCode::VK_CONSUMERKEY_VOLUME_UP, ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L</autogen>
  </item>
</root>

相关内容