Como desativar o comando-Q para sair?

68

Existe alguma maneira de desativar comando + Q para sair de aplicativos?

Eu tentei adicionar este item de menu ao painel de preferências "Atalhos de teclado" (como sugerido aqui ) e remapeamento para comando + opção + Q (um pouco mais difícil de acertar), e o item de menu mudou para mostrar isso, mas comando + Q ainda faz com que o aplicativo seja encerrado.

Estou usando o OS X 10.7, mas eu ficaria feliz em atualizar para 10.8 se isso fosse consertado.

O aplicativo que eu realmente quero isso é o Firefox, mas se houvesse uma solução que desativou comando + Q para cada aplicativo, isso também seria bom.

Ken
fonte
1
Você está procurando um hack global ou você seria capaz de apenas remapear os aplicativos que deseja substituir? O último é bastante fácil usando o painel de preferências do teclado normal e fazendo outro atalho (como o comando - shift - controle - opção - Q) que não será pressionado por um capricho.
bmike
bmike: Eu pegaria qualquer um, mas como eu disse, tentei fazer o comando-option-Q e não funciona. Se eu tentar entrar com o comando-option-shift-Q, ele apitará e informará que o app Prefs do sistema cancelou o logout.
Ken
O problema é que você precisa sair mais de uma vez por aplicativo e incluir o nome do aplicativo para que o nome completo do menu seja inserido no atalho específico do aplicativo.
bmike
bmike: Eu estava especificando a substituição apenas para o Firefox e incluindo o nome do aplicativo na substituição de menuitem.
Ken
1
Hmm - Eu não li a pergunta significando que o Firefox intencionalmente desconsidera o atalho de teclado definido pelo OS X - mas talvez seja isso que você está vendo baseado nos comentários? Eu me pergunto se talvez eles implementaram uma função de remapeamento de atalho? Já faz um tempo desde que eu tive a raposa correndo. Escolher um comando como ⌃⇧⌘Z funciona para deixar o Command-Q insensível para Mail e Safari - veja esta imagem de como eu configurei os atalhos. cl.ly/MDtE
bmike

Respostas:

95

Vá para Preferências do Sistema e depois Teclado. Selecione atalhos. No painel esquerdo, encontre Acessibilidade. Agora, no painel direito, ative Cores invertidas e, em seguida, clique na caixa de atalho para reatribuir o atalho para Cmd + Q.

É isso aí. Agora, quando você pressionar Cmd + Q, as cores da tela serão invertidas. Pressione novamente para voltar às cores normais. Não é mais necessário encerrar acidentalmente os aplicativos (como fechar mais de duzentas guias no Firefox ao tentar usar o Cmd + uma ou três dúzias de pdfs na visualização ao tentar usar a guia Cmd +; as últimas duas coisas que fiz, nunca mais.)

P.S. Quem pensou que era uma boa idéia usar o Cmd + Q para sair de aplicativos deve voltar para a escola de usabilidade.


Há também um plugin legal que você pode usar chamado Sempre pergunte , o que força um diálogo de prompt antes de sair do Firefox.

Daniel
fonte
10
Acabou de se cadastrar para upvote esta resposta. Cmd+Q é o equivalente de fazer uma @ símbolo em um layout de teclado PC-105 alemão. Alternar entre PC e Mac está me enlouquecendo porque eu continuo fechando o navegador quando faço login em algum lugar. Obrigado pela brilhante ideia de inverter as cores.
Afri
2
Eu atribuí-lo para "Mudar para desktop 1". Desde que eu não estou usando esse recurso de qualquer maneira, efetivamente não faz nada.
tiktak
3
Ponto de bônus para usar Inverter cores como um aviso. Ótimo feedback UX.
Jason
Existe uma maneira de remapear CMD + ESC para fazer o amplo sistema de desistir?
amar
2
Eu gosto da sua ideia sobre invert color , amor, parece nerd
vanduc1102
5

Usando o KeyRemap4MacBook, você pode adicionar isso private.xml :

<item>
  <name>disable_command_q</name>
  <identifier>disable_command_q</identifier>
  <autogen>__KeyToKey__ KeyCode::Q, VK_COMMAND | ModifierFlag::NONE, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::Q, VK_COMMAND | VK_SHIFT | ModifierFlag::NONE, KeyCode::Q, ModifierFlag::COMMAND_L</autogen>
</item>

Sem | ModifierFlag::NONE o primeiro elemento autogen também desativaria, por exemplo, ⌥⌘Q. O segundo elemento autogen muda de Q para Q.

Existem também configurações predefinidas que fazem com que o envio ⌘Q exija a retenção ⌘Q ou a pressão ⌘Q duas vezes:

Eles são definidos em custom_shortcuts.xml :

<item>
  <name>Hold Command+Q to Quit Application</name>
  <appendix>(You can adjust the threshold time of holding by</appendix>
  <appendix>"[Holding Key to Key] Holding Threshold" in Key Repeat tab.)</appendix>
  <identifier>remap.holdcommandQ</identifier>
  <autogen>__HoldingKeyToKey__ KeyCode::Q, VK_COMMAND | ModifierFlag::NONE, KeyCode::VK_NONE, KeyCode::Q, VK_COMMAND, Option::NOREPEAT</autogen>
</item>
<item>
  <name>Press Command+Q twice to Quit Application</name>
  <identifier>remap.doublepresscommandQ</identifier>
  <autogen>__DoublePressModifier__ KeyCode::Q, VK_COMMAND | ModifierFlag::NONE,
    KeyCode::VK_NONE,
    KeyCode::Q, VK_COMMAND
  </autogen>
</item>
Lri
fonte
No Karabiner Elements (o sucessor do KeyRemap4MacBook), há uma "modificação complexa" que pode ser baixada on-line para obter o mesmo trabalho: pqrs.org/osx/karabiner/complex_modifications/#command_q Alterar a opção do Safari para o Firefox ou outro navegador é apenas uma questão de alterar o regex do pacote de aplicativos dentro da configuração JSON (que deve estar localizada em ~/.config/karabiner/assets/complex_modifications ).
Gustavo Bezerra
4

Use um remapeador de teclado. Há um ótimo GPL para o OSX (eu uso o Keyremap4MacBook) Apenas mapeie a combinação de teclas do comando Q para algo que não faz nada.

grok
fonte
1
Agora chamado Karabiner: pqrs.org/osx/karabiner Não funciona em 10.12, irá lidar com sistemas operacionais anteriores. Há um atalho pré-escrito para mudar globalmente o cmd Q para outra coisa aqui: pqrs.org/osx/karabiner/list.html.en debaixo Atalhos Personalizados
Wayfaring Stranger
4

Desculpe por desenterrar esse post antigo, mas isso ideia pode ser útil .

Em Preferências do Sistema - Teclado, crie um novo atalho para o aplicativo que você deseja evitar sair. Procure o título do comando quit no menu do aplicativo e insira exatamente o mesmo que um Título do menu para o atalho, depois, dê um atalho diferente.

Na verdade, você não tem esse problema com todos os aplicativos, mas apenas o navegador e talvez um ou dois outros aplicativos.

user67010
fonte
1
Bem-vindo ao pedir diferente! Embora esse link possa responder à pergunta, é melhor incluir as partes essenciais da resposta aqui e fornecer o link para referência. As respostas somente de link podem se tornar inválidas se a página vinculada for alterada.
grg
2
Esta solução não se aplica ao firefox. O Firefox mostra o novo atalho no menu. Mas isso não funciona. O cmd-q ainda fecha o navegador ...
JerryWho
eu segui esse link que descreve a mesma solução e que funcionou perfeitamente para mim.
totymedli
Acabei de adicionar um atalho "Opção Q" para "Quit Firefox" como um atalho específico do Firefox (Firefox). No Firefox, meu item de menu "Quit Firefox" agora mostra opt Q, e cmd Q não sai mais do App, mas opt Q faz. Você tem que obter o texto do item de menu exatamente correto. Oh, eu vejo, nós estamos daqui a alguns anos no futuro; com o OS X 10.12.3. e o Firefox 51.0.
Wayfaring Stranger
Bom ajuste para o Safari (o Safari respeita o atalho) e um protetor de sanidade para aqueles que costumam acessar o CMD + Q em vez do CMD + W.
AncientToaster
3

Não é uma resposta direta à sua pergunta, mas você pode dizer ao Firefox para abrir automaticamente as janelas antigas ao iniciá-lo usando o When Firefox starts opção sob o General painel de preferências.

Se você não quiser alterar sua tela inicial apenas para a saída acidental ocasional, há também um comando para fazer isso: History menu - & gt; Restore Previous Session.

Hank
fonte
9
Sim, mas se houver muitas janelas / abas abertas, isso pode demorar um pouco, e algumas não poderão recuperar completamente sua sessão / estado. Ele também restaura irritantemente todas as janelas no espaço atual, em vez do espaço em que estavam anteriormente.
Ken
1

Eu encontrei uma maneira de fazer isso sem ter que mudar o seu volume ou coisas assim quando você pressiona comando + Q .

vá para as preferências do sistema - & gt; teclado - & gt; controle de missão - & gt; "não perturbe".

Em seguida, basta clicar na caixa e alterá-lo para: comando + Q .

Helper
fonte
0

Como você viu, apenas definir um novo atalho de teclado no System Prefs nem sempre funciona. Ele irá alterar o atalho mostrado no menu, mas o aplicativo ainda pode estar atento ao pressionamento de tecla Commmand + Q. Eu vi alguns aplicativos que fazem isso. Mesmo alguns irão ouvir os pressionamentos de tecla que não estão listados como atalhos no menu (Photoshop, por exemplo).

Uma opção de terceiros é usar algo como ControllerMate . Tem a capacidade de remapear qualquer entrada do controlador (teclado, mouse, trackpad, joystick, etc) e mudar o que faz. Eu o uso para fazer muitos remapeamentos e executar scripts de macros. Eles podem ser definidos em uma base por aplicativo ou em um estado global do sistema.

Usando o ControllerMate, você pode mapear Command + Q para não fazer nada e depois Command + Option + Q chamar a entrada do menu Quit. Ou você pode ficar chique e ter Command + Q não fazer nada, exceto se você pressionar Command + Q novamente dentro de 1/2 de segundo, então ele chamaria o menu Quit.

O ControllerMate é um aplicativo incrível. Eu fiz muitas personalizações como um "Boss / Modo Cônjuge", que é um único keypress que faz o seguinte

  • silencia o áudio do computador
  • pausa o iTunes se estiver tocando
  • fecha o QuickTime e / ou o VLC se estiver em execução
  • minimiza as janelas atuais do Firefox e abre uma nova janela para o Google.com

Outra sugestão (juntamente com a sugestão de Henry) é usar um gerenciador de sessão, então se o Firefox for encerrado acidentalmente, você poderá restaurar facilmente. O gerenciador de sessão interno está OK, mas você também deve Tab Mix Plus . Não só lhe dá opções incríveis para gerenciar suas guias, mas o seu gerenciador de sessão também é ótimo. Eu tenho muitas sessões salvas e posso puxá-las rapidamente a qualquer momento em novas janelas.

Insomniac Software
fonte
4
US $ 24,95 para um remapeador de entrada? Isso é hilário.
Navin
0

Vamos para Preferências do sistema & gt; Teclado & gt; Atalhos então o botão de aplicativo na barra esquerda . aperte o + botão, em seguida, escolha o seu aplicativo. Escreva "Quit (nome do aplicativo)" no local do título do menu. Adicione seu comando para substituir o cmd-q e é isso.

Macpro
fonte
Isso não acrescenta nada que as outras respostas ainda não tenham coberto.
Tetsujin
0

Simplesmente eu substituí o comando existente por um novo,

Ex. Eu substitui o comando Quit para Sublime Text for MAC,

Eu costumava adicionar um novo atalho e adicionar novo comando alt+command+c

SagarPPanchal
fonte
0

Você pode desativar o Cmd + Q usando o BetterTouchTool (um aplicativo maravilhoso) para o Mac OS:

Ir para o teclado - & gt; Adicionar novo atalho ou sequência de teclas - & gt; mapear Cmd + Q para "Nenhuma ação"

enter image description here

Dio Phung
fonte
0

Existe uma solução não postada aqui que eu achei que deveria merecer consideração. Se você não se importar em remover o comando + q inteiramente do seu computador, você pode efetivamente remapear no Ukulele para que o comando + Q execute outro atalho de teclado.

Você poderia fazê-lo executar o comando + espaço ou o comando + 1 apenas atribuí-lo a outra coisa.

Existem pontos positivos e negativos para essa abordagem, mas deve funcionar.

William
fonte
0

QBlocker

QBlocker é um aplicativo gratuito e de código aberto para resolver esse problema, exigindo que um usuário mantenha o CMD + Q para encerrar todos os aplicativos ou apenas alguns.

Steve Moser
fonte