Vai al contenuto

Monitoraggio delle modifiche ai file

L'editor sorveglia ogni file aperto e si accorge quando cambia su disco: quando un altro programma lo riscrive, quando porti nuove modifiche dal controllo di versione, o quando un file che hai aperto viene eliminato. Questo mantiene la vista allineata allo stato reale dei tuoi file e ti aiuta a evitare di sovrascrivere lavoro fatto altrove.

Che cosa succede quando un file cambia

  • Modificato dall'esterno — vieni avvisato, così la vista non mostra mai in silenzio contenuto obsoleto. Dalla notifica puoi:
    • Ricaricare il file per recepire le modifiche esterne, oppure
    • Confrontare la versione su disco con quella che hai aperta (vedi Confronto / Diff).
  • Eliminato dall'esterno — vieni avvisato che il file è sparito, così puoi salvarlo di nuovo dal buffer che hai ancora aperto, se vuoi conservarlo.

Se un file cambia mentre non è la scheda che stai guardando, l'editor non ti interrompe: aspetta e te lo chiede la prossima volta che passi a quella scheda.

Silenzioso per scelta progettuale

Salvare dall'editor non attiva un falso allarme di «modificato su disco»: l'editor riconosce le proprie scritture. Le notifiche sono ritardate, così una raffica di scritture esterne (ad esempio uno strumento di build che riscrive un file) produce un unico avviso, non una valanga.

Un file che continua a cambiare chiede una sola volta: non riceverai un nuovo avviso a ogni scrittura finché mantieni la tua versione. L'editor chiede di nuovo la prossima volta che torni a quella scheda (nel caso volessi allora recepire il contenuto più recente). Se preferisci seguire le modifiche dal vivo invece che essere interpellato, usa il monitoraggio.

Impostazioni

Preferenze ▸ Generale ▸ Monitoraggio dei file contiene due opzioni. Entrambe si applicano subito, senza riavviare.

Opzione Predefinito Effetto
Monitora le modifiche esterne ai file aperti attiva L'interruttore principale. Con esso disattivato l'editor smette del tutto di accorgersi delle modifiche esterne: niente ricaricamenti, niente avvisi, niente contrassegni di «eliminato su disco»; e un file che hai messo in monitoraggio smette di seguirne la coda.
Ricarica in silenzio i documenti non modificati attiva Una scheda senza modifiche non salvate viene aggiornata dal disco senza chiedere, così un pull dal controllo di versione o una ricompilazione aggiornano semplicemente ciò che vedi. Disattivala per essere interpellato ogni volta.

Una scheda con modifiche non salvate chiede sempre prima di ricaricare qualunque cosa, comunque siano impostate queste opzioni: le tue modifiche non vengono mai gettate via in silenzio. La seconda opzione ha effetto solo mentre la prima è attiva, quindi appare in grigio quando il monitoraggio è disattivato.

Riattivare il monitoraggio recupera il tempo perduto: ogni file aperto viene ricontrollato rispetto allo stato in cui si sapeva fosse l'ultima volta, e tutto ciò che è cambiato mentre il monitoraggio era spento viene segnalato subito —ricaricato, o proposto come avviso— esattamente come se fosse successo a monitoraggio attivo.

Monitorare un file (tail -f)

Quando un altro programma aggiunge continuamente in coda a un file —un log, l'output di una build, un report in fase di generazione— di solito vuoi seguirlo invece che essere interpellato per ricaricare. Attiva Visualizza ▸ Monitoraggio (tail -f) per il file attivo e l'editor:

  • Seguirà la coda — le righe nuove aggiunte su disco vengono aggiunte alla vista e l'editor scorre fino in fondo, così il contenuto più recente resta visibile.
  • Terrà il buffer in sola lettura — durante il monitoraggio, il file rispecchia ciò che è su disco, quindi la modifica è disattivata (i comandi che cambiano il documento appaiono in grigio) e il file non viene mai sovrascritto. È voluto: stai osservando un file che appartiene a un altro programma, e riscrivervi la tua copia distruggerebbe ciò che quello sta aggiungendo.

Disattiva la stessa voce di menu per smettere di seguirlo; il buffer torna modificabile, conservando quanto c'era sullo schermo.

Iniziare a monitorare un file con modifiche non salvate chiede prima: Scarta e monitora butta via le tue modifiche e segue il file su disco, oppure Annulla lascia il file com'è. Non c'è un'opzione di «salva prima», perché salvare sovrascriverebbe il file che l'altro programma sta scrivendo.

Il monitoraggio è per file e non viene ricordato tra le sessioni: riapri un file e riparte come un documento normale e modificabile. Si possono monitorare solo i file salvati.

Tip

Per il lavoro strutturato sui log —filtrare per livello, linee temporali, unire più sorgenti, seguire la rotazione da app.log ad app.log.1— apri il file nell'Analizzatore di log dedicato. Il monitoraggio di qui è l'opzione leggera del «voglio solo vedere questo file crescere», valida per qualunque file.