Geralmente, há um atraso perceptível antes que um serviço (ou um script AppleScript que não seja executado como um serviço) seja executado e os atalhos de teclado para serviços não estejam disponíveis em aplicativos que não possuem um menu de serviços. A melhor opção é usar um private.xml assim com o 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>
Sem , ModifierFlag::NONE
, por exemplo, a primeira entrada autogen
também alteraria a opção + comando + página para a opção + aumentar o volume.
Para alterar o volume em incrementos de um quarto de barra, adicione , ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L
antes de </autogen>
.
Isto mapeia a tecla de opção direita para uma tecla modificadora extra quando mantida e para a tecla F19 quando pressionada, e por exemplo, faz pressionar a tecla 0 enquanto segura o volume extra de aumento da tecla modificadora:
<?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>