E 'possibile evitare che la finestra di dialogo "Il file è stato modificato" di TextEdit non sia apparso inutilmente?

5

Ogni tanto farò qualcosa sul mio computer (ad es., in Google Chrome), quando compare una finestra di avviso da TextEdit.app. La finestra di dialogo ha il seguente aspetto:

La finestra di dialogo chiede se voglio salvare le modifiche apportate a un documento RTF aperto o ridotto a icona in TextEdit. La finestra di dialogo a volte appare anche quando TextEdit non è l'applicazione attiva; il dialogo esce dal nulla.

La mia risposta a questa finestra di dialogo, 100% delle volte, è Salva comunque . Questo perché premendo il pulsante Revert si modifica irrevocabilmente il file nell'ultima versione salvata del file (che è ovviamente indesiderabile).

  1. Se il documento non viene modificato in un'altra applicazione, perché viene visualizzato questo messaggio? Oppure, come posso capire quale applicazione (cioè, "un'altra applicazione" ) è responsabile delle modifiche al documento, esattamente?

  2. È possibile impedire la visualizzazione inutile di questa finestra di dialogo? Oppure, per Textedit è possibile "salvare comunque" di default?

OS X El Capitan, versione 10.11.6.

    
posta rubik's sphere 25.05.2017 - 06:29
fonte

2 risposte

3

Non ho mai visto questo foglio senza che il file sottostante sia stato modificato. Prova opensnoop sul file per determinare il processo che sta accedendo al file:

$ sudo opensnoop -f /path/to/file.txt
  UID    PID COMM          FD PATH
  501  32092 Finder        14 /path/to/file.txt
    0     81 mds           28 /path/to/file.txt
  501  41898 mdworker       9 /path/to/file.txt
  501  42646 TextMate      16 /path/to/file.txt
  501  42646 TextMate      16 /path/to/file.txt
  501  42646 TextMate      25 /path/to/file.txt
  501  42646 TextMate      26 /path/to/file.txt

Questa è una stampa dal vivo, quindi mantieni l'opensnoop in esecuzione fino a quando non ottieni il foglio, quindi controlla la finestra del Terminale e guarda indietro per vedere il processo. ^ C si ferma all'istante quando hai finito. Avrai bisogno di disabilitare la protezione dell'integrità del sistema per usare opensnoop e poter essere riattivato in seguito.

    
risposta data 25.05.2017 - 13:10
fonte
0

chiusura:

Ho seguito le istruzioni fornite dall'utente grgarside nella loro risposta.

Mi sono reso conto che il file .rtf era, di fatto, alterato da un'altra applicazione. Quindi, è del tutto appropriato che mi sia stata data la finestra Il file è stato modificato da un'altra applicazione. .

Come suggerito da grgarside , la finestra di dialogo non è mai apparsa veramente inutilmente.

In particolare, il file veniva modificato da un mio AppleScript. La soluzione era implementare un controllo nel codice AppleScript, per vedere se il file .rtf era già aperto. Se il file .rtf era aperto, mi sono assicurato che il mio codice AppleScript non scrivesse il testo in questo file.

Dopo aver apportato la correzione al mio codice AppleScript, non ho mai più visto questa finestra di dialogo.

    
risposta data 14.06.2017 - 23:11
fonte

Leggi altre domande sui tag