Śledzenie zmian plików¶
Edytor obserwuje każdy otwarty plik i zauważa, gdy zmienia się on na dysku — gdy przepisuje go inny program, gdy pobierasz nowe zmiany z systemu kontroli wersji albo gdy otwarty plik zostaje usunięty. Dzięki temu widok pozostaje zgodny z rzeczywistym stanem plików i nie nadpiszesz pracy wykonanej gdzie indziej.
Co się dzieje, gdy plik się zmieni¶
- Zmodyfikowany zewnętrznie — dostajesz powiadomienie, więc widok nigdy po
cichu nie pokazuje nieaktualnej treści. Z powiadomienia możesz:
- Wczytać ponownie plik, aby przejąć zewnętrzne zmiany, albo
- Porównać wersję z dysku z tym, co masz otwarte (zobacz Porównanie / Diff).
- Usunięty zewnętrznie — dostajesz informację, że plik zniknął, więc możesz zapisać go ponownie z wciąż otwartego bufora, jeśli chcesz go zachować.
Jeśli plik zmienia się, gdy jego karta nie jest aktywna, edytor nie przerywa Ci pracy — czeka i pyta przy najbliższym przełączeniu na tę kartę.
Celowo dyskretne¶
Zapis z edytora nie wywołuje fałszywego alarmu „zmieniono na dysku" — edytor rozpoznaje własne zapisy. Powiadomienia są tłumione czasowo, więc seria zewnętrznych zapisów (np. narzędzie budujące przepisujące plik) daje jeden monit, a nie lawinę.
Plik zmieniający się w kółko pyta tylko raz — nie dostaniesz nowego monitu przy każdym zapisie, dopóki trzymasz swoją wersję. Edytor zapyta ponownie przy następnym powrocie na tę kartę (gdybyś chciał wtedy przejąć nowszą treść). Jeśli wolisz śledzić zmiany na żywo zamiast odpowiadać na pytania, użyj monitorowania.
Monitorowanie pliku (tail -f)¶
Gdy inny program stale dopisuje do pliku — log, wyjście builda, generowany raport — zwykle chcesz go śledzić, a nie odpowiadać na monity o ponowne wczytanie. Włącz Widok ▸ Monitorowanie (tail -f) dla aktywnego pliku, a edytor:
- Podąża za końcem pliku — nowe linie dopisane na dysku trafiają do widoku, a edytor przewija do końca, żeby najnowsza treść była widoczna.
- Trzyma bufor tylko do odczytu — podczas monitorowania plik odzwierciedla stan na dysku, więc edycja jest zablokowana (polecenia zmieniające dokument są wyszarzone), a plik nigdy nie zostaje nadpisany. To celowe: obserwujesz plik należący do innego programu, a zapisanie własnej kopii zniszczyłoby to, co on dopisuje.
Wyłącz tę samą pozycję menu, aby przestać śledzić; bufor znów staje się edytowalny, zachowując to, co było na ekranie.
Rozpoczęcie monitorowania pliku z niezapisanymi zmianami najpierw pyta — Odrzuć i monitoruj porzuca Twoje zmiany i śledzi plik z dysku, a Anuluj zostawia plik bez zmian. Nie ma opcji „najpierw zapisz", bo zapis nadpisałby plik, do którego pisze inny program.
Monitorowanie działa per plik i nie jest zapamiętywane między sesjami — po ponownym otwarciu plik startuje jako zwykły, edytowalny dokument. Monitorować można tylko zapisane pliki.
Tip
Do pracy ze strukturą logów — filtrowanie po poziomie, osie czasu, scalanie
wielu źródeł, śledzenie rotacji app.log → app.log.1 — otwórz plik w
dedykowanym Analizatorze logów. Monitorowanie tutaj to lekka opcja
„po prostu patrz, jak plik rośnie", dla dowolnego pliku.