Posso criar um atalho para abrir um aplicativo específico no OS X?

51

Quero criar um atalho de teclado para abrir o Firefox enquanto estiver trabalhando em outro aplicativo. Sei que posso usar ⌘ CMD+ Tquando estou no Firefox para abrir uma nova guia.

Não encontrei uma maneira de criar esse tipo de atalho nas Preferências do Sistema.

Alguma ideia?

politicus
fonte
11
Então você quer dizer atalhos de teclado ?
Rabarberski
Observe os Serviços no menu Aplicativo, qualquer aplicativo Cocoa razoavelmente escrito os terá e eles podem receber chaves. Infelizmente, acho que o Firefox não foi escrito para usá-los. O Safari pode ser usado aqui
user151019
Isso pode não ter sido uma opção em 2011, quando a pergunta foi feita pela primeira vez, mas agora é bem fácil de usar o Automator. Consulte howtogeek.com/209725/… para obter um tutorial.
Edward Falk
É bastante surpreendente para mim que a Apple, com sua usabilidade orgulhosa, não achou adequado incorporar ao MacOS uma maneira direta de atribuir um atalho de tecla para iniciar um aplicativo.
Teemu Leisti

Respostas:

44

Mosquetão-elementos (10.12 e posterior)

O Karabiner parou de funcionar na versão 10.12 devido a alterações na arquitetura do kernel, e o Karabiner foi reescrito como Karabiner-Elements, que usa um novo formato JSON para os arquivos de configuração.

Agora você pode adicionar uma regra como esta a karabiner.json( https://pqrs.org/osx/karabiner/json.html ):

{
  "from": {
    "key_code": "t",
    "modifiers": {
      "mandatory": [
        "right_option"
      ]
    }
  },
  "to": [
    {
      "shell_command": "open -aterminal"
    }
  ],
  "type": "basic"
}

Isso pressiona rapidamente a tecla de comando direita e abre o Emacs:

{
  "from": {
    "key_code": "right_command",
    "modifiers": {
      "optional": [
        "any"
      ]
    }
  },
  "to": [
    {
      "key_code": "right_command",
      "lazy": true
    }
  ],
  "to_if_alone": [
    {
      "shell_command": "open -aemacs"
    }
  ],
  "type": "basic"
}

Karabiner (10.11 e versões anteriores)

Salve um arquivo como este como private.xml :

<?xml version="1.0"?>
<root>
  <vkopenurldef>
    <name>KeyCode::VK_OPEN_URL_Safari</name>
    <url>file:///Applications/Safari.app</url>
  </vkopenurldef>
  <vkopenurldef>
    <name>KeyCode::VK_OPEN_URL_iTunes</name>
    <url>file:///Applications/iTunes.app</url>
  </vkopenurldef>
  <vkopenurldef>
    <name>KeyCode::VK_OPEN_URL_EMACS</name>
    <url>file:///Applications/Emacs.app</url>
  </vkopenurldef>
  <item>
    <name>custom</name>
    <identifier>custom</identifier>
    <autogen>__KeyToKey__ KeyCode::F11, KeyCode::VK_OPEN_URL_Safari</autogen>

    <!-- change the right option key into an extra modifier key -->
    <autogen>__KeyToKey__ KeyCode::OPTION_R, KeyCode::VK_MODIFIER_EXTRA1</autogen>

    <autogen>__KeyToKey__ KeyCode::I, ModifierFlag::EXTRA1, KeyCode::VK_OPEN_URL_iTunes</autogen>

    <!-- make a short press of the right command open Emacs -->
    <autogen>__KeyOverlaidModifier__ KeyCode::COMMAND_R, KeyCode::COMMAND_R, KeyCode::VK_OPEN_URL_EMACS</autogen>
  </item>
</root>

Alfred 2

Se você comprou o Powerpack para Alfred 2, poderá criar um fluxo de trabalho como este:

As teclas de atalho têm um pequeno atraso por padrão, mas você pode reduzi-lo alterando a opção "Comportamento do gatilho" de "Simular teclas modificadoras liberadas" para "Passar pelas teclas modificadoras (mais rápidas)":

Serviços de automação

Abra o Automator, selecione "Serviço" como o tipo de documento, altere "Serviço recebe" de "texto" para "sem entrada", adicione uma ação "Iniciar aplicativo" e salve o serviço. Em seguida, atribua um atalho de teclado para o serviço em "Preferências do sistema> Teclado> Atalhos> Serviços".

Eu não recomendo esta opção, porque pelo menos no meu sistema, existe no máximo um atraso de cerca de meio segundo antes que um aplicativo seja focado em um atalho de teclado criado usando esse método, e o atraso geralmente é ainda maior. Também ocorreu um bug desde a versão 10.7, onde os atalhos de teclado para os serviços do Automator nem sempre funcionam até você passar o mouse sobre o menu de serviços na barra de menus. (Editar: agora são oito anos depois que eu escrevi esta resposta e o bug ainda não foi corrigido.) Também os atalhos de teclado para serviços não estão disponíveis em alguns aplicativos como o Emacs.

Lri
fonte
3
private.xml ONDE? Qualquer lugar? Isso já existe? Não consigo encontrar. Onde isso vai?
precisa saber é o seguinte
@boulder_ruby /Library/Application Support/Karabiner/private.xml,. Ou abra a GUI do Karabiner> guia misc e desinstalação> guia "Abrir private.xml". Eu tive exatamente a mesma dificuldade.
Alexander Bird
O Karabiner-Elements é impressionante, agora que sei que posso modificar suas configurações diretamente em um arquivo json. Obrigado! 😃
Quinn
2
Colocar o automator no topo é o mais fácil de fazer para a maioria das pessoas
Harry
8

Alfred

Alfred, em sua versão do Power Pack, pode mapear atalhos para aplicativos, entre muitos outros recursos.

David
fonte
5

Se você não deseja usar aplicativos de terceiros.
Em seguida, você pode usar o Automator (Services) e os atalhos de teclado Incorporados.

Aqui está como em uma resposta a uma pergunta semelhante.

Muito simples.

Na etapa 3 , da criação do serviço.
Defina-o como 'qualquer aplicativo'.

ou seja,
defina o Serviço recebe como: 'sem entrada' em 'qualquer aplicativo' (Faça isso usando as caixas suspensas na parte superior.)

markhunte
fonte
Seja bom saber por que há uma votação negativa sobre isso. Não comentar sobre para baixo votos não é útil para ninguém
markhunte
5

Obtenha o Quicksilver, http://www.blacktree.com/ , ele permitirá que você defina atalhos de teclado para abrir aplicativos. Na verdade, existem muitos outros aplicativos que fazem isso (Alfred, Keyboard Maestro, etc.)

O Mac OS X, na verdade, possui uma maneira integrada de fazer isso, mas não funciona no Firefox, porque não suporta serviços! http://hints.macworld.com/article.php?story=20090903085255430

Atualização em janeiro de 2012: o Blacktree não atualiza mais o Quicksilver - o desenvolvedor foi para o Google e lançou o Google Quick Search Box . O Quicksilver continua vivo , mas tem uma nova casa em qsapp.com .

Paul Eccles
fonte
Obrigado. Foi muito útil para mim. usou o Google, mas não encontrou seu link.
Politicus
Legal, então você veio, certo?
Paul Eccles
11
"Sim". Quicksilver instalado (muito poderoso, certamente melhor do que ter apenas um atalho). Tentei teclado Maestro. Agora ter um descanso antes de aprender todos estes atalhos ;-)
politicus
Mercúrio é ótimo. Muito obrigado pelo conselho. Eu criei um script bash para abrir o gmail e outro para abrir mysms no navegador. Então eu usei o script appify para torná-los aplicativos OS X. De lá, eu poderia usar o Quicksilver para ter meus atalhos de teclado para iniciá-los. Muito bom ter. mathiasbynens.be/notes/shell-script-mac-apps
jbrock
2

Existem muitas opções boas aqui, mas eu queria adicionar o meu favorito pessoal que uso desde 10.5 e ainda funciona no 10.11.2: Spark 3 .

http://www.shadowlab.org/Software/spark.php

É freeware e extremamente fácil de configurar. Aqui está a descrição do desenvolvedor:

O Spark é um gerenciador de atalhos poderoso e fácil. Com o Spark, você pode criar teclas de atalho para iniciar aplicativos e documentos, executar AppleScript, controlar o iTunes e muito mais ... Você também pode exportar e importar sua biblioteca de teclas de atalho ou salvá-la no formato HTML para imprimi-la. O Spark é gratuito, portanto, use-o sem moderação!

Aqui está uma captura de tela da interface:

Interface do usuário do Spark

billynoah
fonte
2

Achei o Apptivate o mais fácil de usar. Você acabou de selecionar um aplicativo e atribuir um atalho global. É isso aí.

Soid
fonte
1

Eu sei que Alfred já foi mencionado, mas pensei em dizer um pouco sobre a escolha de teclas de atalho. Inicialmente, não me era óbvio o que seria um bom conjunto de atalhos que (a) eram fáceis de lembrar, (b) fáceis de usar e (c) não conflitavam com outras teclas de atalho do sistema ou aplicativo.

Acabei usando a tecla "alt" como base e, geralmente, confiando em teclas que podem ser acionadas pela mão esquerda e escolhendo letras descritivas (por exemplo, x para Excel). isso permite que você tenha o mouse na mão direita e as teclas de atalho acionadas com a esquerda.

Outro benefício do uso das teclas de atalho Alfred para ativar um aplicativo é que, se um aplicativo estiver oculto, ele será oculto.

Aqui está uma captura de tela de como eu o configurei: exemplo de configuração de teclas de atalho alfred

Jeromy Anglim
fonte
1

Para abrir o Terminal com um atalho de teclado sem nenhum software de terceiros:

  • Abra o Automator ( ⌘ + Espaço e digite Automator)
  • Vá para Arquivo -> Novo
  • Selecione Ação rápida (ou Serviço , dependendo da versão do seu Mac)
  • Onde diz que o fluxo de trabalho recebe , selecione nenhuma entrada :

como abrir um terminal mac com atalho de teclado

  • Na coluna Ações , procure Executar AppleScript e arraste-o para a coluna direita
  • Cole isso na área de script:

    on run {input, parameters}
    
        tell application "Terminal"
            do script ""
            activate
        end tell
    
    end run
    

PS: remova do script ""se você não quiser uma nova instância do terminal toda vez que pressionar a tecla de atalho.

  • Clique em Arquivo -> Salvar e nomeie o que quiser

terminal aberto mac com atalho de teclado

  • Agora feche o Automator e abra Preferências do Sistema -> Teclado -> Atalhos
  • Na coluna da esquerda, clique em "Serviços"
  • Role para baixo até o final; você verá o script que acabou de salvar. Clique em nenhum para atribuir uma tecla de atalho.

Uma coisa importante a considerar, porém, é que a tecla de atalho deve ser exclusiva em todos os aplicativos. Se você atribuir uma tecla de atalho comum, como ⌘ + T , e tentar abrir o terminal enquanto estiver navegando, ela entrará em conflito com a tecla de atalho da maioria dos navegadores para abrir uma nova guia, para que não funcione. É por isso que você deve tentar um atalho que não entre em conflito com nenhum aplicativo.

Eu escolhi ⌘ + ⌥ + F12 . Funciona muito bem.

Atualizar

Se você estiver usando o iTerm2 + Oh My Zsh , substitua Run AppleScript pelo Launch Application no Automator e selecione iTerm.app na lista.

Lucas Bustamante
fonte
Você não precisa usar o AppleScript: há uma ação Iniciar aplicativo.
benwiggy
1

Se o Aplicativo for Terminal, ele já possui teclas de atalho configuradas em Preferências: Preferências do sistema Atalhos de teclado Novo Terminal na Pasta ^+ +T

Novo terminal na pasta Tab + ^+ +T

Max MacLeod
fonte
Observe que eu teria respondido isso na tecla de atalho para perguntas de inicialização do Terminal. No entanto, eles não podem ser respondidos, pois estão marcados como duplicados desta pergunta.
Max MacLeod