Come disabilitare il comando-Q per uscire?


80

Esiste un modo per disabilitare command+ Qper uscire dalle app?

Ho provato ad aggiungere questo menu nel riquadro delle preferenze "Scorciatoie da tastiera" (come suggerito qui ), e rimappando a command+ option+ Q(leggermente più difficile da colpire), e la voce di menu è cambiata per mostrarlo, ma command+ Qfa comunque uscire l'app.

Sto usando OS X 10.7, ma sarei felicemente aggiornato a 10.8 se risolto questo problema.

L'app per cui voglio davvero questo è Firefox, ma se ci fosse una soluzione che disabilitasse command+ Qper ogni app, anche questo andrebbe bene.


1
Sei alla ricerca di un hack globale o saresti in grado di rimappare le applicazioni che vuoi sostituire? Quest'ultimo è abbastanza facile usando il normale pannello delle preferenze della tastiera e facendo un'altra scorciatoia (come comando - maiusc - controllo - opzione - Q) che non verrà premuta per un capriccio.
bmike

bmike: Ne prenderei entrambi, ma come ho detto, ho provato a renderlo command-option-Q e non funziona. Se provo a inserire command-option-shift-Q, emette un segnale acustico e dice che l'app Pref sistema ha annullato il logout.
Ken,

Il problema è che devi superare la procedura di chiusura in base all'applicazione e includere il nome dell'app in modo che il nome completo del menu venga inserito nel collegamento specifico dell'app.
bmike

bmike: stavo specificando l'override solo per Firefox e includendo il nome dell'app nel menuitem override.
Ken,

1
Hmm - Non ho letto la domanda per dire che Firefox ignora intenzionalmente la scorciatoia da tastiera definita da OS X - ma forse è quello che stai vedendo sulla base dei commenti? Mi chiedo se forse hanno implementato una funzione di rimappatura dei collegamenti? È da un po 'che non vedo correre la volpe. La scelta di un comando come ⌃⇧⌘Z funziona per rendere insensibile il comando-Q per Mail e Safari - guarda questa immagine per come ho impostato le scorciatoie. cl.ly/MDtE
bmike

Risposte:


118

Vai a Preferenze di Sistema, quindi Tastiera. Seleziona scorciatoie. Nel riquadro sinistro, trova Accessibilità. Ora nel riquadro destro abilita Inverti colori e quindi fai clic sulla casella di scelta rapida per riassegnare il collegamento a Cmd + Q.

Questo è tutto. Ora quando premi Cmd + Q i colori dello schermo saranno invertiti. Premerlo di nuovo per tornare ai colori normali. Non è più necessario chiudere accidentalmente le applicazioni (come chiudere oltre duecento schede su Firefox quando si tenta di utilizzare Cmd + a o tre dozzine di pdf su Anteprima quando si tenta di utilizzare la scheda Cmd +; ultime due cose che ho fatto, mai più).

PS Chiunque abbia pensato che fosse una buona idea usare Cmd + Q per uscire dalle applicazioni dovrebbe tornare alla scuola di usabilità.


C'è anche un bel plug-in che puoi usare chiamato Chiedi sempre , che forza una finestra di dialogo rapida prima di uscire da Firefox.


12
Sono appena registrato qui per votare questa risposta. Cmd+Qequivale a creare un @simbolo su un layout di tastiera PC-105 tedesco. Passare da PC a Mac mi sta facendo impazzire perché continuo a chiudere il browser quando eseguo l'accesso da qualche parte. Grazie per la geniale idea di invertire i colori.
Waqar Lim,

4
L'ho assegnato a "Passa al desktop 1". Dal momento che non sto usando questa funzione comunque, in effetti non fa nulla.
tiktak,

3
Punto bonus per l'utilizzo di Inverti colori come avvertimento. Ottimo feedback UX.
Jason,

2
Mi piace la tua idea invert color, amore, sembra secchione
vanduc1102

1
Puoi anche selezionarlo Launchpad and Dock > Show Launchpade impostarlo su Cmd+Q. È meno fastidioso dell'intero schermo che lampeggia violentemente quando i colori si invertono.
Siddhartha

7

Utilizzando KeyRemap4MacBook, è possibile aggiungere questo a 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>

Senza | ModifierFlag::NONEil primo elemento autogeno si disabiliterebbe anche ad esempio ⌥⌘Q. Il secondo elemento autogeno cambia ⇧⌘Q in ⌘Q.

Esistono anche impostazioni predefinite che richiedono l'invio di ⌘Q tenendo premuto ⌘Q o premendo ⌘Q due volte:

Sono definiti in 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>

2
Su Karabiner Elements (il successore di KeyRemap4MacBook), esiste una "modifica complessa" che può essere scaricata online per ottenere lo stesso lavoro: pqrs.org/osx/karabiner/complex_modifications/#command_q Cambiare l'opzione Safari in Firefox o in qualche altro browser è solo una questione di modifica del regex del bundle dell'app all'interno della configurazione JSON (che dovrebbe trovarsi in ~/.config/karabiner/assets/complex_modifications).
Gustavo Bezerra,

5

Ci scusiamo per aver scavato un vecchio post, ma questa idea può essere utile .

In Preferenze di Sistema - Tastiera crea un nuovo collegamento per l'applicazione che desideri impedire. Cerca il titolo del comando quit nel menu dell'applicazione e inserisci lo stesso titolo di un titolo di menu per il collegamento, quindi assegna un collegamento diverso.

In effetti, non hai questo problema con tutte le applicazioni ma solo con il browser e forse con una o due altre app.


1
Benvenuti a chiedere diverso! Sebbene questo collegamento possa rispondere alla domanda, è meglio includere qui le parti essenziali della risposta e fornire il collegamento come riferimento. Le risposte di solo collegamento possono diventare non valide se la pagina collegata cambia.
GRG

2
Questa soluzione non si applica a Firefox. Firefox mostra il nuovo collegamento nel suo menu. Ma non funziona cmd-q chiude ancora il browser ...
JerryWho

Ho seguito questo link che descrive la stessa soluzione e che ha funzionato perfettamente per me.
totymedli,

Ho appena aggiunto un collegamento "Opzione Q" per "Esci da Firefox" come collegamento specifico per l'applicazione (Firefox) per Firefox. In Firefox, la mia voce di menu "Esci da Firefox" ora mostra opt Q e cmd Q non chiude più l'app, ma opt Q fa. Devi ottenere il testo della voce di menu esattamente giusto. Oh, vedo, siamo un paio d'anni nel futuro qui; con OS X 10.12.3. e Firefox 51.0.
Wayfaring Stranger

Adatto per Safari (Safari rispetta il collegamento) e un risparmio di sanità mentale per quelli di noi che spesso colpiscono CMD + Q invece di CMD + W.
AncientToaster,

5

Ho trovato un modo per farlo senza dover cambiare il volume o cose del genere quando premi command+ Q.

vai alle preferenze di sistema -> tastiera -> controllo missione -> "non disturbare".

Quindi fai clic sulla casella e modificala in: command+ Q.


Bel trucco. Voglio solo aggiungere - se vuoi ancora mantenere la possibilità di uscire dall'app usando il collegamento, ma non ci sono tali preferenze, puoi farlo andando a Settings-> Keyboard-> scheda Shortcuts-> dall'elenco degli elementi a sinistra selezionare App Shortcuts-> premere il +pulsante, aggiungere la tua app -> Importante! digitare esattamente Quite assegnare il collegamento. Godere! i.ibb.co/PzHvfRh/Screen-Shot-2019-09-04-at-10-38-12-AM.png
Stanislau Baranouski

4

Usa un remapper per tastiera. C'è un ottimo GPL per OSX (io uso Keyremap4MacBook) Basta mappare il comando Q chiave combo su qualcosa che non fa nulla.


1
Ora chiamato Karabiner: pqrs.org/osx/karabiner Non funziona con il 10.12, gestirà i sistemi operativi precedenti. C'è una scorciatoia pre-scritta per cambiare globalmente cmd Q in qualcos'altro qui: pqrs.org/osx/karabiner/list.html.en sotto Scorciatoie personalizzate
Wayfaring Stranger

3

Non è una risposta diretta alla tua domanda, ma puoi dire a Firefox di aprire automaticamente le tue vecchie finestre quando la avvii usando l' When Firefox startsopzione nel Generalriquadro delle preferenze.

Se non vuoi cambiare la schermata iniziale solo per la chiusura accidentale occasionale, c'è anche un comando per farlo: Historymenu -> Restore Previous Session.


10
Sì, ma se ci sono molte finestre / schede aperte, ciò può richiedere del tempo e alcuni non saranno in grado di ripristinare completamente la sessione / stato. Ripristina anche fastidiosamente tutte le finestre sullo spazio corrente, piuttosto che sullo spazio in cui erano in precedenza.
Ken,


1

Vai a Preferenze di Sistema> Tastiera> Tasti di scelta rapida, quindi il pulsante dell'applicazione sulla barra di sinistra . Premi il pulsante + , quindi scegli l'applicazione. Scrivi "Esci (Nome applicazione)" nello slot del titolo del menu. Aggiungi il tuo comando per sostituire cmd-q e il gioco è fatto.


Questo non aggiunge nulla che le altre risposte non abbiano già coperto.
Tetsujin,

1

QBlocker

QBlocker è un'app gratuita e open source per risolvere questo problema richiedendo a un utente di tenere premuto CMD + Q per chiudere tutte le app o solo alcune.


0

Come hai visto, impostare una nuova scorciatoia da tastiera in Preferenze di Sistema non sempre funziona. Cambierà il collegamento mostrato nel menu ma l'applicazione potrebbe essere ancora in ascolto per la pressione del tasto Commmand + Q. Ho visto alcune app che lo fanno. Anche alcuni ascolteranno i tasti premuti che non sono elencati come collegamenti nel menu (Photoshop per esempio).

Un'opzione di terze parti è utilizzare qualcosa come ControllerMate . Ha la capacità di rimappare qualsiasi input del controller (tastiera, mouse, trackpad, joystick, ecc.) E cambiare ciò che fa. Lo uso per fare molti rimappaggi ed eseguire macro script. Possono essere impostati su una base per applicazione o su uno stato globale a livello di sistema.

Utilizzando ControllerMate, è possibile mappare Command + Q per non fare nulla, quindi Command + Option + Q chiama la voce di menu Esci. Oppure potresti avere fantasia e fare in modo che Command + Q non faccia nulla, tranne se premi di nuovo Command + Q entro 1/2 di secondo, quindi richiamerebbe il menu Esci.

ControllerMate è un'app straordinaria. Ho fatto molte personalizzazioni come una "Modalità Boss / Sposo" che è un singolo tasto che procede come segue

  • disattiva l'audio del computer
  • mette in pausa iTunes se è in riproduzione
  • chiude QuickTime e / o VLC se è in esecuzione
  • minimizza le attuali finestre di Firefox e apre una nuova finestra su Google.com

Un altro suggerimento (insieme al suggerimento di Henry) è di utilizzare un gestore di sessioni, quindi se Firefox viene chiuso per errore, è possibile ripristinarlo facilmente. Il gestore sessioni integrato è OK ma dovresti anche consultare Tab Mix Plus . Non solo ti offre incredibili opzioni per la gestione delle tue schede, ma anche il suo gestore di sessioni è fantastico. Ho molte sessioni salvate e posso richiamarle rapidamente in qualsiasi momento in nuove finestre.


5
$ 24,95 per un remapper di input? È divertente.
Navin,

0

Ho semplicemente sostituito il comando esistente con uno nuovo,

Ex. Ho sostituito il comando Quit per Sublime Text per MAC,

Ho usato per aggiungere un nuovo collegamento e aggiunto un nuovo comando alt+command+c


0

Puoi disabilitare Cmd + Q usando BetterTouchTool (un'app meravigliosa) per Mac OS:

Vai a Tastiera -> Aggiungi nuova scorciatoia o sequenza di tasti -> mappa Cmd + Q su "Nessuna azione"

inserisci qui la descrizione dell'immagine


0

C'è una soluzione non pubblicata qui che pensavo dovesse meritare considerazione. Se non ti dispiace rimuovere completamente il comando + q dal tuo computer, puoi effettivamente rimappare in Ukulele in modo che Command + Q esegua un'altra scorciatoia da tastiera.

Potresti farlo eseguire comando + spazio o comando + 1 assegnandolo a qualcos'altro.

Ci sono aspetti positivi e negativi di questo approccio, ma dovrebbe funzionare.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.