Mi piacerebbe essere in grado di chiudere e aprire le notifiche con la tastiera
(Non si parla dell'apertura / chiusura del centro notifiche)
È possibile? E se sì, come?
Puoi creare il servizio Automator per eseguire questo Applescript e assegnargli una scorciatoia da tastiera nelle scorciatoie da tastiera Preferenze di sistema
Questo chiuderà Notifica di avvisi e banner
In Automator scegli un nuovo servizio
Aggiungiun'azioneEseguiApplescript
e sostituisci il suo codice con:
my closeNotif()
on closeNotif()
tell application "System Events"
tell process "Notification Center"
set theWindows to every window
repeat with i from 1 to number of items in theWindows
set this_item to item i of theWindows
try
click button 1 of this_item
on error
my closeNotif()
end try
end repeat
end tell
end tell
end closeNotif
Imposta il 'Servizio riceve [nessun input] in [qualsiasi applicazione]'
Salva il servizio.
Apri le scorciatoie da tastiera in Preferenze di sistema e imposta il tuo servizio in "Servizi"
Oraqualsiasiappappenaavviataselezioneràilcollegamento.
(Nota:hostrutturatoloscriptpercontrastareillanciodiunerrorechesiverificaquandolenotifiche/windowsinizianoachiudersi.
otifiche/finestrasononumeratida1afinoalconteggiototale.Mamentrechiudono,lasceneggiaturafunzionerebbeancoraconilvecchioconteggio.Mailsistemaassegneràdinuovol'indicedellefinestre.
Quindi,quandodiciamocheinizida1a6,loscriptproveràachiuderelafinestra1,lafinestra2,lafinestra3ecosìvia.Mailsistemahaassegnatonuovamenteinumeridifinestra1,2,3alleultimefinestrerimanenti.Maloscriptproveràechiuderàlafinestra4egenereràunerroreperchénonesiste.Loscriptprenderàquestoelogestirà.)
Sesidesiderafareclicsulpulsante"Mostra" su una notifica di avviso. cambia il pulsante su cui fai clic da 1 a 2.
click button 2 of this_item
Le notifiche banner non hanno un pulsante 2.
Ma puoi semplicemente fare clic sulla finestra.
Quindi questo codice dovrebbe occuparsi di Mostrare.
my closeNotif()
on closeNotif()
tell application "System Events"
tell process "Notification Center"
set theWindows to every window
repeat with i from 1 to number of items in theWindows
set this_item to item i of theWindows
set cnt to count buttons of this_item
try
if cnt > 1 then
click button 2 of this_item
else
click this_item
end if
on error
closeNotif()
end try
end repeat
end tell
end tell
end closeNotif
Non proprio quello che stai chiedendo:
Potresti limitare il tempo visualizzato per il tipo di banner con
Terminale e incolla il seguente
defaults write com.apple.notificationcenterui bannerTime #
con il simbolo del numero # sostituito con il numero di secondi in cui desideri che le notifiche del banner rimangano incollati, quindi disconnetti e riaccendi.
Per ripristinare la funzione originale (5 secondi) usa defaults delete com.apple.notificationcenterui bannerTime
So che hai detto di no: ma puoi avviare la notifica on / off con uno script e assegnargli una scorciatoia da tastiera. Disattiva temporaneamente il Centro notifiche di Mountain Lion dalla riga di comando?
Lo script originale di markhunte funziona ma si ferma dopo alcune finestre. È possibile che l'elenco di finestre includa solo quelli attualmente visibili. Quando ne hai troppi, questo non chiuderà tutto. Ho aggiunto un ciclo al di fuori del ciclo principale per interrogare le finestre fino a ottenere un conteggio delle finestre pari a zero. Ecco il codice:
my closeNotif () su closeNotif ()
tell application "System Events"
tell process "Notification Center"
set theWindows to every window
set nWindows to number of items in theWindows
repeat until nWindows is 0
repeat with i from 1 to number of items in theWindows
set this_item to item i of theWindows
try
click button 1 of this_item
delay 0.2
on error
my closeNotif()
end try
end repeat
set theWindows to every window
set nWindows to number of items in theWindows
end repeat
end tell
end tell
fine closeNotif
Leggi altre domande sui tag notifications notification-center shortcut