Buffers modify - if dirty alert user (immediately if focused, or on next focus) - if clean update contents remove - mark file as unsaved (but maintains previous path) - only unsubscribe from KQueue - attempt to resubscribe after timeout (because of git weirdness) move file - update path move ancestor directory - update path on focus and save recreated after remove (at same path) - resubscribe on focus or save