Posso alterar globalmente o atalho do cmd-Q para exigir retenção por dois segundos, como a opção no Chrome?

39

Muitas e muitas vezes, pressiono acidentalmente + Qquando pretendia fechar uma guia ou janela ou alternar entre aplicativos. Quando vi a opção no Google Chrome de exigir que o atalho fosse mantido , fiquei muito feliz. O problema é que eu uso o Safari.

Então, resumindo: como posso universalizar o atalho "hold command-Q" em todos os meus aplicativos (ou pelo menos no Safari)?

Timothy Mueller-Harder
fonte
4
De onde você fala essa configuração?
Sensitive
Impressionante pergunta Timothy !!
daviesgeek
3
@Senseful É contra-intuitivo no menu do Chrome, e não nas preferências do Chrome.
Timothy Mueller-Harder
4
"Avisar antes de sair."
Timothy Mueller-Harder
Ótima pergunta, levando a respostas muito úteis!
Paul Wagland 29/03/12

Respostas:

8

Douglas Teoh criou um aplicativo chamado SlowQuitApps , que faz exatamente isso.

Um aplicativo OS X que adiciona um atraso global de 1 segundo ao atalho Cmd-Q. Em outras palavras, você deve manter pressionado o Cmd-Q por 1 segundo antes que o aplicativo seja fechado.

Quando o atraso está ativo, uma sobreposição é desenhada no centro da tela.

yckart
fonte
2
Não acredito que as pessoas estão realmente escrevendo aplicativos para conseguir isso. Caminho a percorrer “Apple intuitiva!”
Stewart
18

Aqui está uma solução parcial para iniciantes:

Impedindo a saída acidental no Safari (ou qualquer aplicativo específico)

Basta configurar um atalho de teclado incomum para o item de menu "Sair do Safari" nas preferências do teclado.

Isso desabilitará o Qatalho padrão , portanto, pressioná-lo acidentalmente não faz diferença - e você deve pensar antes de sair!

(Infelizmente, não encontrei uma maneira fácil de fazer isso para todos os aplicativos, sem precisar inseri-los manualmente.)

jtbandes
fonte
Muito bom, eu implementei e votei! Como um aparte, por padrão, Q é "Sair e descartar o Windows".
Paul Wagland 29/03
Oh Drat, você está certo. Bem, Q ou outra coisa também deve funcionar - no entanto, acho Q um pouco mais difícil de acertar por acidente.
Jtbandes
13

Continuando com a solução da jtbandes , depois de remapear o comando padrão Quit para um pressionamento de tecla diferente (sim, infelizmente, você precisa remapear manualmente para todos os aplicativos que você está preocupado em sair acidentalmente), você pode criar um serviço no Automator que não exige entrada. Ele deve ter uma única ação: Execute AppleScript. O script é:

tell application "System Events"
    set theName to name of the first process whose frontmost is true
end tell
tell application theName
    display dialog "Are you sure you want to quit?"
    quit
end tell

Você salva esse serviço (eu chamei de "SafeSave") e atribui o serviço ao pressionamento de tecla Q. Você recuperou o pressionamento de tecla padrão.

Daniel
fonte
Inteligente. Hm, acho que se poderia escrever um script para ativar em cmd-Q, que passaria a exigir outra cmd-Q para completar a sair ...
Timothy Mueller-Mais difícil
Inteligente, de fato! Tenha um voto positivo! :-)
Asmus 23/03
Muito bom, eu implementei e votei!
Paul Wagland 29/03
8

Outra opção é usar o Karabiner com o seguinte XML:

__HoldingKeyToKey__ KeyCode::Q, VK_COMMAND | ModifierFlag::NONE, KeyCode::VK_NONE, KeyCode::Q, VK_COMMAND, Option::NOREPEAT

Lri
fonte
Embora o aplicativo tenha sido renomeado para Karabiner , esta resposta funcionou muito bem para mim na 10.10 e foi totalmente gratuita.
Alex Pretzlav
Você pode descrever como usar isso? Eu tenho o Karabiner instalado, mas não sei como usar seu comando.
Manuel Mauky 17/04/19
@ManuelMauky Vá para a página de modificações complexas do Karabiner e clique no botão "Importar" ao lado de "Impedir comando não intencional-q (rev 2)".
Utku
1

CommandQ (US $ 4,00) faz exatamente isso. É muito personalizável e tem uma interface gráfica agradável, embora eu não a tenha usado pessoalmente. Parece cumprir os requisitos desta pergunta.

Timothy Mueller-Harder
fonte
-2

Não acredito que seja possível.

Digitalchild
fonte